LPCOpen Platform for LPC18XX/43XX microcontrollers  18XX43XX
LPCOpen Platform for the NXP LPC18XX/43XX family of Microcontrollers
Data Structures | Macros | Functions
CHIP: LPC18xx/43xx Pin Interrupt and Pattern Match driver

Detailed Description

Data Structures

struct  LPC_PIN_INT_T
 LPC18xx/43xx Pin Interrupt and Pattern Match register block structure. More...
 

Macros

#define PININTCH0   (1 << 0)
 
#define PININTCH1   (1 << 1)
 
#define PININTCH2   (1 << 2)
 
#define PININTCH3   (1 << 3)
 
#define PININTCH4   (1 << 4)
 
#define PININTCH5   (1 << 5)
 
#define PININTCH6   (1 << 6)
 
#define PININTCH7   (1 << 7)
 
#define PININTCH(ch)   (1 << (ch))
 

Functions

STATIC INLINE void Chip_PININT_Init (LPC_PIN_INT_T *pPININT)
 Initialize Pin interrupt block. More...
 
STATIC INLINE void Chip_PININT_DeInit (LPC_PIN_INT_T *pPININT)
 De-Initialize Pin interrupt block. More...
 
STATIC INLINE void Chip_PININT_SetPinModeEdge (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Configure the pins as edge sensitive in Pin interrupt block. More...
 
STATIC INLINE void Chip_PININT_SetPinModeLevel (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Configure the pins as level sensitive in Pin interrupt block. More...
 
STATIC INLINE uint32_t Chip_PININT_GetHighEnabled (LPC_PIN_INT_T *pPININT)
 Return current PININT rising edge or high level interrupt enable state. More...
 
STATIC INLINE void Chip_PININT_EnableIntHigh (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Enable high edge/level PININT interrupts for pins. More...
 
STATIC INLINE void Chip_PININT_DisableIntHigh (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Disable high edge/level PININT interrupts for pins. More...
 
STATIC INLINE uint32_t Chip_PININT_GetLowEnabled (LPC_PIN_INT_T *pPININT)
 Return current PININT falling edge or low level interrupt enable state. More...
 
STATIC INLINE void Chip_PININT_EnableIntLow (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Enable low edge/level PININT interrupts for pins. More...
 
STATIC INLINE void Chip_PININT_DisableIntLow (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Disable low edge/level PININT interrupts for pins. More...
 
STATIC INLINE uint32_t Chip_PININT_GetRiseStates (LPC_PIN_INT_T *pPININT)
 Return pin states that have a detected latched high edge (RISE) state. More...
 
STATIC INLINE void Chip_PININT_ClearRiseStates (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Clears pin states that had a latched high edge (RISE) state. More...
 
STATIC INLINE uint32_t Chip_PININT_GetFallStates (LPC_PIN_INT_T *pPININT)
 Return pin states that have a detected latched falling edge (FALL) state. More...
 
STATIC INLINE void Chip_PININT_ClearFallStates (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Clears pin states that had a latched falling edge (FALL) state. More...
 
STATIC INLINE uint32_t Chip_PININT_GetIntStatus (LPC_PIN_INT_T *pPININT)
 Get interrupt status from Pin interrupt block. More...
 
STATIC INLINE void Chip_PININT_ClearIntStatus (LPC_PIN_INT_T *pPININT, uint32_t pins)
 Clear interrupt status in Pin interrupt block. More...
 

Macro Definition Documentation

#define PININTCH (   ch)    (1 << (ch))

Definition at line 72 of file pinint_18xx_43xx.h.

#define PININTCH0   (1 << 0)

LPC18xx/43xx Pin Interrupt channel values

Definition at line 64 of file pinint_18xx_43xx.h.

#define PININTCH1   (1 << 1)

Definition at line 65 of file pinint_18xx_43xx.h.

#define PININTCH2   (1 << 2)

Definition at line 66 of file pinint_18xx_43xx.h.

#define PININTCH3   (1 << 3)

Definition at line 67 of file pinint_18xx_43xx.h.

#define PININTCH4   (1 << 4)

Definition at line 68 of file pinint_18xx_43xx.h.

#define PININTCH5   (1 << 5)

Definition at line 69 of file pinint_18xx_43xx.h.

#define PININTCH6   (1 << 6)

Definition at line 70 of file pinint_18xx_43xx.h.

#define PININTCH7   (1 << 7)

Definition at line 71 of file pinint_18xx_43xx.h.

Function Documentation

STATIC INLINE void Chip_PININT_ClearFallStates ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Clears pin states that had a latched falling edge (FALL) state.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins with latched states to clear
Returns
Nothing

Definition at line 218 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_ClearIntStatus ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Clear interrupt status in Pin interrupt block.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pin interrupts to clear (ORed value of PININTCH*)
Returns
Nothing

Definition at line 239 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_ClearRiseStates ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Clears pin states that had a latched high edge (RISE) state.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins with latched states to clear
Returns
Nothing

Definition at line 197 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_DeInit ( LPC_PIN_INT_T pPININT)

De-Initialize Pin interrupt block.

Parameters
pPININT: The base address of Pin interrupt block
Returns
Nothing

Definition at line 87 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_DisableIntHigh ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Disable high edge/level PININT interrupts for pins.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins to disable (ORed value of PININTCH*)
Returns
Nothing

Definition at line 141 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_DisableIntLow ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Disable low edge/level PININT interrupts for pins.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins to disable (ORed value of PININTCH*)
Returns
Nothing

Definition at line 176 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_EnableIntHigh ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Enable high edge/level PININT interrupts for pins.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins to enable (ORed value of PININTCH*)
Returns
Nothing

Definition at line 130 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_EnableIntLow ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Enable low edge/level PININT interrupts for pins.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins to enable (ORed value of PININTCH*)
Returns
Nothing

Definition at line 165 of file pinint_18xx_43xx.h.

STATIC INLINE uint32_t Chip_PININT_GetFallStates ( LPC_PIN_INT_T pPININT)

Return pin states that have a detected latched falling edge (FALL) state.

Parameters
pPININT: The base address of Pin interrupt block
Returns
PININT states (bit n = high) with a latched rise state detected

Definition at line 207 of file pinint_18xx_43xx.h.

STATIC INLINE uint32_t Chip_PININT_GetHighEnabled ( LPC_PIN_INT_T pPININT)

Return current PININT rising edge or high level interrupt enable state.

Parameters
pPININT: The base address of Pin interrupt block
Returns
A bifield containing the high edge/level interrupt enables for each interrupt. Bit 0 = PININT0, 1 = PININT1, etc. For each bit, a 0 means the high edge/level interrupt is disabled, while a 1 means it's enabled.

Definition at line 119 of file pinint_18xx_43xx.h.

STATIC INLINE uint32_t Chip_PININT_GetIntStatus ( LPC_PIN_INT_T pPININT)

Get interrupt status from Pin interrupt block.

Parameters
pPININT: The base address of Pin interrupt block
Returns
Interrupt status (bit n for PININTn = high means interrupt ie pending)

Definition at line 228 of file pinint_18xx_43xx.h.

STATIC INLINE uint32_t Chip_PININT_GetLowEnabled ( LPC_PIN_INT_T pPININT)

Return current PININT falling edge or low level interrupt enable state.

Parameters
pPININT: The base address of Pin interrupt block
Returns
A bifield containing the low edge/level interrupt enables for each interrupt. Bit 0 = PININT0, 1 = PININT1, etc. For each bit, a 0 means the low edge/level interrupt is disabled, while a 1 means it's enabled.

Definition at line 154 of file pinint_18xx_43xx.h.

STATIC INLINE uint32_t Chip_PININT_GetRiseStates ( LPC_PIN_INT_T pPININT)

Return pin states that have a detected latched high edge (RISE) state.

Parameters
pPININT: The base address of Pin interrupt block
Returns
PININT states (bit n = high) with a latched rise state detected

Definition at line 186 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_Init ( LPC_PIN_INT_T pPININT)

Initialize Pin interrupt block.

Parameters
pPININT: The base address of Pin interrupt block
Returns
Nothing
Note
This function should be used after the Chip_GPIO_Init() function.

Definition at line 80 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_SetPinModeEdge ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Configure the pins as edge sensitive in Pin interrupt block.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins (ORed value of PININTCH*)
Returns
Nothing

Definition at line 95 of file pinint_18xx_43xx.h.

STATIC INLINE void Chip_PININT_SetPinModeLevel ( LPC_PIN_INT_T pPININT,
uint32_t  pins 
)

Configure the pins as level sensitive in Pin interrupt block.

Parameters
pPININT: The base address of Pin interrupt block
pins: Pins (ORed value of PININTCH*)
Returns
Nothing

Definition at line 106 of file pinint_18xx_43xx.h.