About this Course
In the second course, you'll continue to learn how to design, develop, test/debug and document software for embedded devices and how to get a simple embedded system up and running. You'll learn operating system principles, explore how to port and use a real-time operating system (RTOS), study device-firmware layers and deal with a real-time multithreaded environment. You’ll also be introduced to RTOS applications such as the Internet of Things (IoT) and machine learning.
What You’ll Learn
- What real-time systems are and how to tune time-sensitive software
- How to design applications using an RTOS
- Reusable firmware development: application programming interfaces, board support packages, hardware abstraction layers, middleware and drivers
- RTOS applications and how to connect to an IoT cloud and machine learning inference on the edge
Get Hands-On Experience
- Use GitHub and pull requests for assignments and work with other open-source tools to build and debug firmware
- Debug hardware communication protocols (SPI and I2C)
- Port bare-metal components to a multithreaded application
- Navigate a large code base