System interrupts
This is advanced, low-level functionality, intended primarily for library writers.
Gen 2 Devices (STM32) (E-Series, Electron, Photon, and P2; does not include E404X):
System interrupts happen as a result of peripheral events within the system.
Identifier | Description |
---|---|
SysInterrupt_SysTick | System Tick (1ms) handler |
SysInterrupt_TIM3 | Timer 3 interrupt |
SysInterrupt_TIM4 | Timer 4 interrupt |
SysInterrupt_TIM5 | Timer 5 interrupt |
SysInterrupt_TIM6 | Timer 6 interrupt |
SysInterrupt_TIM7 | Timer 7 interrupt |
- SysInterrupt_TIM3 and SysInterrupt_TIM4 are used by the system to provide
tone()
and PWM output. - SysInterrupt_TIM5 is used by the system to provide
tone()
and PWM output. - SysInterrupt_TIM7 is used as a shadow watchdog timer by WICED when connected to JTAG.
See the full list of interrupts in the firmware repository.
When implementing an interrupt handler, the handler must execute quickly, or the system operation may be impaired. Any variables shared between the interrupt handler and the main program should be declared as
volatile
to ensure that changes in the interrupt handler are visible in the main loop and vice versa.