About this Course
In the first course, you'll build foundational knowledge, core development skills and the practices needed to develop programs for embedded and real-time systems. We'll provide code examples during instruction with the goal of helping you develop a complete bare-metal program by the end of the course. You'll gain hands-on experience in embedded programming and debugging techniques using a hardware with JTAG-based debug interface. The languages for the course are C and ARM assembly.
What You'll Learn
- Introductory computer architecture and hardware concepts from a software perspective
- Number systems, computer math and Boolean algebra
- How to work with memory access, ports, I/O, peripherals, and timers and clocks
- The popular ARM architecture
- ARM assembly essentials
- How to use the integrated development environment (IDE) for embedded systems
- How software interacts with hardware using registers and I/O
- What interrupts are and why they’re used and how to write and debug interrupt service routines
Students must purchase a development kit for this course. See the cost details section of the certificate page for more information.