1 / 21

Lizard Labs Interrupts and Energy Modes

Lizard Labs Interrupts and Energy Modes. EFM32 Training Module. Interrupts. Interrupt Activation. Peripheral. NVIC. event. IF. SETPEND. enter ISR. IEN. SETENA. Clearing Interrupt Flag. Clearing Interrupt Flag. Clearing Interrupt Flag. Interrupt Example.

palmer
Télécharger la présentation

Lizard Labs Interrupts and Energy Modes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lizard LabsInterrupts and Energy Modes EFM32 Training Module

  2. Interrupts

  3. Interrupt Activation Peripheral NVIC event IF SETPEND enter ISR IEN SETENA

  4. Clearing Interrupt Flag

  5. Clearing Interrupt Flag

  6. Clearing Interrupt Flag

  7. InterruptExample

  8. InterruptExampleContinued

  9. Energy Modes

  10. Enter/Exit Energy Modes • Enter any low energy mode from software • Any event wakes up the CPU (enters EM0) • In EM4 MCU has to go through reset to wake up

  11. Entering a Low Energy Mode Sleep instruction • WFI – Wait for Interrupt WFI SLEEPDEEP bit set? N Y LF oscillators running? Write EM4 sequence to EM4CTRL Y N EM1 EM4 EM2 EM3

  12. Energy Modes emlib API

  13. Peripherals and Energy Modes CPU and Memory Clock Management Energy Management ARM Cortex-M3 processor High Freq Crystal Osc High Freq RC Osc Voltage Regulator Embedded Trace Macrocell Voltage Comparator ARM Cortex-M processor Memory Protection Unit MemoryProtection Unit Low Freq Crystal Osc Low Freq RC Osc Power-on Reset Brown-out Detector Flash Program Memory RAM Memory Debug Interface DMA Ultra Low Freq RC Osc Auxiliary RC Osc Auxiliary RC Osc Back-up Power Domain 32-bit bus Peripheral Reflex System Serial Interfaces I/O Ports Timers and Triggers Analog Modules Security Low Energy Sensor IF USART External Bus Interface Timer/Counter ADC DAC UART AES Accelerator TFT Driver Low Energy Timer Real Time Counter LCD Controller Operational Amplifier Low Energy UART I2C External Interrupt General Purpose I/O Pulse Counter Watchdog Timer Analog Comparator Pin Reset GPIO Wake-up USB Backup RTC EM0 (Run Mode) Available down to: EM1 (Sleep) EM2 (Deep Sleep) EM3 (Stop Mode) EM4 (Shutoff Mode)

  14. Program Flow – Sleep and Interrupt Program ISR INSTR1 INSTR1 INSTR2 INSTR2 Event Sleep EM1 INSTR3 WFI RETI INSTR4 INSTR5

  15. Program FlowSleep-on-Exit ISR1 ISR2 INSTR1 INSTR1 INSTR2 INSTR2 Event 2 Event 1 EM1 INSTR3 INSTR3 RETI RETI Sleep Note: SLEEPONEXIT bit in SCR must be set!

  16. InterruptPriority • 3 high-priority interrupts • 8 configurable levels • Default level is 0 • Interrupt preemption

  17. InterruptPreemption ISR1 Priority: 2 ISR2 Priority: 1 Program INSTR1 INSTR1 INSTR1 Interrupt Interrupt INSTR2 INSTR2 INSTR2 INSTR3 INSTR3 INSTR3 INSTR4 INSTR4 RETI INSTR5 RETI

  18. WakeupLatency

  19. InterruptTailchaining

  20. Late Arrival

  21. www.silabs.com/mcu Hands-On Lesson: TM0008 in Simplicity Studio

More Related