26.3.5.2 Level Interrupt Generation
GPIO can generate a level interrupt using the input of any GPIO EM4 wake-up pins on the device. The interrupts have asynchronous
sense capability, enabling wake-up from energy modes as low as EM4.
In order to enable the level interrupt, set the EM4WU field in the GPIO_IEN register and the EM4WUn field in the GPIO_EXTILEVEL
register. Upon a level interrupt occuring, the corresponding EM4WU index in the GPIO_IF register will be set along with the odd or even
interrupt line depending on the index inside of GPIO_IF, see
Figure 26.7 Level Interrupt Example on page 881
The wake-up granulalr-
ity of the level interrupts is based on the settings of the EM4WU field in the GPIO_IEN register and the EM4WUEN field in the
GPIO_EM4WUEN register, see
Table 26.3 Level Interrupt Energy Mode Wakeup on page 881
Table 26.3. Level Interrupt Energy Mode Wakeup
GPIO_IEN
GPIO_EM4WUEN
Energy Mode Wakeup
0
0
No Interrupt
0
1
EM4H,EM4S
1
0
EM1,EM2,EM3,EM4H,EM4S
1
1
EM1,EM2,EM3,EM4H,EM4S
By setting the EM4WU8 in GPIO_EXTILEVEL and EM4WU[8] in GPIO_IEN, the interrupt flag EM4WU[8] in GPIO_IF will be triggered
by a high level on pin EM4WU8 and a interrupt request will be sent on IRQ_GPIO_EVEN.
Figure 26.7. Level Interrupt Example
26.3.6 Output to PRS
All pins within a group of four(0-3,4-7,8-11,12-15) from all ports are grouped together to form one PRS producer which outputs to the
PRS. The pin from which the output should be taken is selected in the same fashion as the edge interrupts.
PRS output is not effeted by the interupt edge detction logic or gated by the IEN bits. See
Figure 26.6 Pin n Interrupt Generation on
for an ilistration of where the PRS output signal is generated.
26.3.7 Synchronization
To avoid metastability in synchronous logic connected to the pins, all inputs are synchronized with double flip-flops. The flip-flops for the
input data run on the HFBUSCLK. Consequently, when a pin changes state, the change will have propagated to GPIO_Px_DIN after
two 2 HFBUSCLK cycles. Synchronization (also running on the HFBUSCLK) is also added for interrupt input. To save power when the
external interrupts or level interrupts are not used, the synchronization flip-flops for these can be turned off by clearing INT or
EM4WU,respectively, in GPIO_INSENSE register.
EFM32JG1 Reference Manual
GPIO - General Purpose Input/Output
silabs.com
| Smart. Connected. Energy-friendly.
Preliminary Rev. 0.6 | 881