parent
782bcdbb2b
commit
93b8c69102
@ -1,2 +0,0 @@
|
|||||||
#include "interrupt.h"
|
|
||||||
|
|
@ -1,98 +0,0 @@
|
|||||||
/**
|
|
||||||
**************************************************************************************************
|
|
||||||
* @file interrupt.h
|
|
||||||
* @author Kerem Yollu & Edwin Koch
|
|
||||||
* @date 30.10.2022
|
|
||||||
* @version 1.0
|
|
||||||
**************************************************************************************************
|
|
||||||
* @brief This is the genral interface for interrupts.
|
|
||||||
*
|
|
||||||
* **Detailed Description :**
|
|
||||||
* This the spi interface and belongs to the interface layer.
|
|
||||||
*
|
|
||||||
**************************************************************************************************
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef _INTERRUPT_H_
|
|
||||||
#define _INTERRUPT_H_
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
#include "hwd_interrupt.h"
|
|
||||||
|
|
||||||
/*! interrupt callback type for the handler */
|
|
||||||
typedef void (*intHandler_t)(void);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Initialize Interrupt
|
|
||||||
*
|
|
||||||
* Initialize Interrupt by choosing the interrupt type, passing the functionpointer to the handler
|
|
||||||
* and selecting the priority.
|
|
||||||
* The interrupt will be automatically enabled and will be able to run after intEnableAll is
|
|
||||||
* called. If the interrupt should only run at a specific even one can controll it by calling
|
|
||||||
* intDissable prior to calling intEnableAll and calling intEnbale at a specific point and
|
|
||||||
* dissabling it again with intDisable
|
|
||||||
* When the desired interrupt occures the handler will be called.
|
|
||||||
* The interrupt type and priority level is dependent on the architecture of the target MCU.
|
|
||||||
* To find more information on what can be done one must read the documentation specific to the
|
|
||||||
* target MCU.
|
|
||||||
*
|
|
||||||
* @param intType interrupt type
|
|
||||||
* @param handler the interrupthandler
|
|
||||||
* @param priority the interrupt priority
|
|
||||||
*/
|
|
||||||
void intInit(
|
|
||||||
intrType_t intType,
|
|
||||||
intHandler_t handler,
|
|
||||||
uint8_t priority);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Enable all Interrupts
|
|
||||||
*
|
|
||||||
* Enables all interrupts globally.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
void intEnableAll();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Disable all Interrups
|
|
||||||
*
|
|
||||||
* Dissables all interrupts globally exept the non maskable ones given by the architecture of the
|
|
||||||
* MCU.
|
|
||||||
*/
|
|
||||||
void intDisableAll();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Enable one interrupt type
|
|
||||||
*
|
|
||||||
* The Interrupt for the desired interrupt will be enabled. This means that interrupt of that
|
|
||||||
* type will occure. To revert this intDisable musst be called.
|
|
||||||
* It can be called when interrupts are are globally allowed or when disabled.
|
|
||||||
*
|
|
||||||
* @param intType interrupt type
|
|
||||||
*/
|
|
||||||
void intEnable(
|
|
||||||
intrType_t intType);
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Dissable one interrupt type
|
|
||||||
*
|
|
||||||
* The Interrupt for the desired interrupt will be disabled. This means that no interrupt of that
|
|
||||||
* type will occure. To revert this intEnable musst be called.
|
|
||||||
* It can be called when interrupts are are globally allowed or when dissabled.
|
|
||||||
* It will not stop other all interrupts in contrast to intDissableAll.
|
|
||||||
*
|
|
||||||
* @param intType interrupt type
|
|
||||||
*/
|
|
||||||
void intDisable(
|
|
||||||
intrType_t intType);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
|
Loading…
Reference in new issue