58 uint_least8_t groupCnt;
61 for(groupCnt=0;groupCnt<12;groupCnt++)
120 uint_least8_t groupCnt;
122 for(groupCnt=0;groupCnt<12;groupCnt++)
162 setValue = 1 << intNumber;
172 setValue = 1 << ((intNumber & 0x07) - 1) ;
202 setValue = 1 << (intNumber + 3);
235 uint16_t setValue = (1 << pwmNumber);
248 uint16_t setValue = (1 << pwmNumber);
284 uint16_t count = pie->
XINTnCTR[intNumber];
348 intPointer += groupNumber * 8;
351 intPointer += subGroupNumber;
354 *intPointer = vector;
375 intPointer += systemInt;
378 *intPointer = vector;
395 for(regCnt=0;regCnt<120;regCnt++)
417 pie->
XINTnCR[intNumber] |= polarity;
436 intPointer += groupNumber * 8;
439 intPointer += subGroupNumber;
462 intPointer += systemInt;
Contains public interface to various functions related to the peripheral interrupt expansion (PIE) ob...
volatile uint16_t IER
the Interrupt Enable Register (IER)
#define DISABLE_PROTECTED_REGISTER_WRITE_MODE
Define to disable protected register writes.
void PIE_clearAllFlags(PIE_Handle pieHandle)
Clears all the interrupt flags.
void PIE_enableInt(PIE_Handle pieHandle, const PIE_GroupNumber_e group, const PIE_InterruptSource_e intSource)
Enable a specific PIE interrupt.
void PIE_enableExtInt(PIE_Handle pieHandle, const CPU_ExtIntNumber_e intNumber)
Enables the prescribed external interrupt.
volatile uint16_t IFR
the Interrupt Flag Register (IFR)
PIE_ExtIntPolarity_e
Enumeration to define the external interrupt polarity.
void PIE_setDefaultIntVectorTable(PIE_Handle pieHandle)
Initializes the vector table with illegal ISR handlers.
void PIE_enablePwmInt(PIE_Handle pieHandle, const PWM_Number_e pwmNumber)
Enables the PWM interrupt.
void PIE_enableTimer0Int(PIE_Handle pieHandle)
Enables the Cpu Timer 0 interrupt.
void PIE_forceInt(PIE_Handle pieHandle, const PIE_GroupNumber_e group, const PIE_InterruptSource_e intSource)
Force a specific PIE interrupt.
#define PIE_IERx_INTx7_BITS
Defines the location of the INTx7 bits in the IERx register.
Defines the peripheral interrupt expansion (PIE) object.
volatile PIE_IERIFR_t PIEIER_PIEIFR[12]
PIE Interrupt Enable Register and PIE Interrupt Flag Register.
struct _PIE_Obj_ * PIE_Handle
Defines the peripheral interrupt expansion (PIE) handle.
uint16_t PIE_getIntEnables(PIE_Handle pieHandle, const PIE_GroupNumber_e group)
Gets PIE interrupt enable values.
void PIE_unregisterPieIntHandler(PIE_Handle pieHandle, const PIE_GroupNumber_e groupNumber, const PIE_SubGroupNumber_e subGroupNumber)
Unregisters a handler for a PIE interrupt.
void PIE_registerPieIntHandler(PIE_Handle pieHandle, const PIE_GroupNumber_e groupNumber, const PIE_SubGroupNumber_e subGroupNumber, const PIE_IntVec_t vector)
Registers a handler for a PIE interrupt.
interrupt void PIE_illegalIsr(void)
Defines an illegal interrupt service routine - if the program pointer references this function...
#define ENABLE_PROTECTED_REGISTER_WRITE_MODE
Define to allow protected register writes.
PIE_SystemInterrupts_e
Enumeration to define the system interrupts.
void PIE_enableCaptureInt(PIE_Handle pieHandle)
Enables the capture interrupt.
interrupt void(* PIE_IntVec_t)(void)
Defines the type for an interrupt vector.
ADC_IntNumber_e
Enumeration to define the analog-to-digital converter (ADC) interrupt number.
#define PIE_IERx_INTx1_BITS
Defines the location of the INTx1 bits in the IERx register.
volatile uint16_t PIECTRL
PIE Control Register.
void PIE_disableExtInt(PIE_Handle pieHandle, const CPU_ExtIntNumber_e intNumber)
void PIE_disable(PIE_Handle pieHandle)
Disables the peripheral interrupt expansion (PIE)
#define PIE_XINTnCR_POLARITY_BITS
void PIE_enable(PIE_Handle pieHandle)
Enables the peripheral interrupt expansion (PIE)
void PIE_registerSystemIntHandler(PIE_Handle pieHandle, const PIE_SystemInterrupts_e systemInt, const PIE_IntVec_t vector)
Registers a handler for a PIE interrupt.
uint16_t PIE_getIntFlags(PIE_Handle pieHandle, const PIE_GroupNumber_e group)
Gets PIE interrupt flag values.
void PIE_enablePwmTzInt(PIE_Handle pieHandle, const PWM_Number_e pwmNumber)
Enables the PWM Trip Zone interrupt.
#define PIE_PIECTRL_ENPIE_BITS
Defines the location of the ENPIE bits in the PIECTRL register.
PIE_GroupNumber_e
Enumeration to define the peripheral interrupt expansion (PIE) group numbers.
#define PIE_XINTnCR_ENABLE_BITS
uint16_t PIE_getExtIntCount(PIE_Handle pieHandle, const CPU_ExtIntNumber_e intNumber)
Gets the external interrupt count value.
volatile PIE_IntVec_t Reset
Reset interrupt vector.
void PIE_setExtIntPolarity(PIE_Handle pieHandle, const CPU_ExtIntNumber_e intNumber, const PIE_ExtIntPolarity_e polarity)
Sets the external interrupt polarity.
volatile uint16_t XINTnCTR[3]
External Interrupt n Counter Register.
Denotes external interrupt number 3.
void PIE_disableAllInts(PIE_Handle pieHandle)
Disables all of the interrupts.
CPU_ExtIntNumber_e
Enumeration to define the external interrupt numbers.
PIE_InterruptSource_e
Enumeration to define the peripheral interrupt expansion (PIE) individual interrupt sources...
PIE_Handle PIE_init(void *pMemory, const size_t numBytes)
Initializes the peripheral interrupt expansion (PIE) object handle.
volatile uint16_t XINTnCR[3]
External Interrupt n Control Register.
void PIE_clearAllInts(PIE_Handle pieHandle)
Clears all the interrupts.
PIE_SubGroupNumber_e
Enumeration to define the peripheral interrupt expansion (PIE) sub-group numbers. ...
void PIE_enableAdcInt(PIE_Handle pieHandle, const ADC_IntNumber_e intNumber)
Enables the specified ADC interrupt.
void PIE_unregisterSystemIntHandler(PIE_Handle pieHandle, const PIE_SystemInterrupts_e systemInt)
Unregisters a handler for a PIE interrupt.
PWM_Number_e
Enumeration to define the pulse width modulation (PWM) numbers.
volatile PIE_IntVec_t ADCINT1_HP
ADC high priority interrupt.
void PIE_disableCaptureInt(PIE_Handle pieHandle)
Disables the capture interrupt.
volatile PIE_IntVec_t INT1
INT1 interrupt vector.
volatile uint16_t PIEACK
PIE Acknowledge Register.
void PIE_disableInt(PIE_Handle pieHandle, const PIE_GroupNumber_e group, const PIE_InterruptSource_e intSource)
Disable a specific PIE interrupt.