COVID-19 Vaccine Requirement

All UW Professional & Continuing Education students, including fully online students, must provide proof of vaccination against COVID-19 or submit a request for medical or religious exemption. 

Learn more >>

Fundamentals of Embedded & Real-Time Systems


Course Details

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
  • The popular ARM architecture and ARM assembly essentials
  • What interrupts are, why they’re used and how to write and debug interrupt service routines

Get Hands-On Experience

  • Use Git as a version control system for coding assignments and projects throughout the course
  • Explore the integrated development environment (IDE) for embedded systems
  • Test how software interacts with hardware using registers and I/O
  • Work with memory access, timers and clocks, ports, I/O and peripherals


Students must purchase a development kit for this course. See the cost details section of the certificate page for more information.

Program Overview

This course is part of the Certificate in Embedded & Real-Time Systems Programming .

  Stay up to date with emails featuring career tips, event invitations and program updates.       Sign Up Now