Most microcontroller-based applications nowadays are large, complex, and may require several tasks to share the MCU in multitasking applications. Most modern high-speed microcontrollers support multitasking kernels with sophisticated scheduling algorithms so that many complex tasks can be executed on a priority basis. ARM-based Microcontroller Multitasking Projects: Using the FreeRTOS Multitasking Kernel explains how to multitask ARM Cortex microcontrollers using the FreeRTOS multitasking kernel.
The book describes in detail the features of multitasking operating systems such as scheduling, priorities, mailboxes, event flags, semaphores etc. before going onto present the highly popular FreeRTOS multitasking kernel.
Practical working real-time projects using the highly popular Clicker 2 for STM32 development board (which can easily be transferred to other boards) together with FreeRTOS are an essential feature of this book. Projects include: LEDs flashing at different rates; Refreshing of 7-segment LEDs; Mobile robot where different sensors are controlled by different tasks; Multiple servo motors being controlled independently; Multitasking IoT project; Temperature controller with independent keyboard entry; Random number generator with 3 tasks: live, generator, display; home alarm system; car park management system, and many more.
Please Note: This is an On Demand product, delivery may take up to 11 working days after payment has been received.
Table of Contents
About the anthorPreface
Acknowledgements
1. Microcomputer systems
2. Architecture of arm microcontrollers
3. ARM Cortex microcontroller development boards
4. Clicker 2 for STM32 development board
5. Programming the arm microcontrollers
6. Programming using the mikroC Pro for ARM
7. Introduction to multitasking
8. Introduction to FreeRTOS
9. Using the FreeRTOS functions
10. Queue management
11. Semaphores and mutexes
12. Event groups
13. Software timers
14. Some example projects
15. The Idle task and idle task hook
16. Task Notifications
17. Critical sections
18. Interrupts in Cortex-M4 based microcontrollers
19. USING the FreeRTOS API function calls from an ISR
20. Car park management system
21. Time in different cities
22. Mobile robot project: the Buggy
Appedix A. Number systems
Appendix B. The program description language
Index