Embedded Real-Time Operating System (RTOS)
ECE-40290
Learn to write real-time event-driven applications
running under an embedded Real Time Operating System (RTOS). FreeRTOS is used as an example which will be examined at the C source code level. Practical applications running on an RTOS for embedded computers in event-driven systems are also described. This course is targeted for an embedded software engineer or scientist developing applications with hard real-time scheduling requirements. Course instruction and lab assignments are conducted using the C programming language. Therefore, a working level knowledge of C is required.
Course Learning Outcomes:
- Differentiate between a real-time and logical time system
- Prioritize tasks in a real-time system using rate monotonic analysis
- Identify the differences between various scheduling algorithms such as table-driven and priority preemptive schedulers
- Construct single and multitask applications using a real time operating system
- Synchronize tasks created within the operating system using semaphores and mutexes
- Analyze real-rime application performance through the use of statistics
Course Typically Offered: Online in Fall and Spring quarters.
Prerequisites: Completion of ECE-40097 Embedded Controller Programming for Real-Time Systems or equivalent knowledge and experience.
Hardware: STM32 IOT Discovery Node 915MHZ - Mfg. Part # B-L475E-IOT01A. Part can be purchased from MOUSER Electronics or Digi-Key Electronics or any other reputable electronics dealer. This microcontroller is used in all four required courses in this program.
Next Step: Upon completion of this class, consider enrolling in other courses in the Embedded Systems Engineering certificate program.
Contact: For more information about this course, please email unexengr@ucsd.edu