Summary
Keywords
Full Transcript
This lesson revisits the foreground background architecture, also known as the "superloop," but this time with the focus on incorporating the low-power sleep modes of the CPU. The subject is non-trivial, and many developers get it wrong. The need to explain these aspects arose while planning future lessons about the various ways of executing event-driven Active Objects, so this lesson lays some groundwork for the next one. However, the subject of this lesson is important in its own right, especially because the "bare metal" ("superloop") code structure is applied in such a wide range of products, many of them battery-operated. #embeddedprogramming #softwarearchitecture #lowpower #realtimesystems #eventdriven #education Resources for this lesson: -------------------------- Companion web page to this video course https://www.state-machine.com/video-course/ Project download for this lesson: https://www.state-machine.com/course/lesson-52.zip GitHub repository for projects for this video course: https://github.com/QuantumLeaps/modern-embedded-programming-course Transcript of this lesson: https://www.state-machine.com/course/lesson-52.txt References: ----------- STM32 Discussion Forum discussion thread: Best practices: How to work with interrupts and low power modes when using the HAL? https://community.st.com/t5/stm32-mcus-products/best-practices-how-to-work-with-interrupts-and-low-power-modes/td-p/620588 Texas Instruments, "Software Coding Techniques for MSP430 MCUs" TI document: SLAA294B (search with Google) Joseph Yiu, "Definitive Guide to ARM Cortex-M3 and AMR Cortex-M4 Processors, 3rd Edition" ISBN: 978-0124080829 Miro Samek, "Use an MCU’s low-power modes in foreground/background systems", https://www.state-machine.com/doc/Samek0710.pdf Music credits: -------------- The background music comes from: https://www.bensound.com/royalty-free-music/track/straight
