Embedded Systems, a 3-course series at the University of Texas at Austin

Each year more than 800 students at the University of Texas at Austin engage deeply with embedded systems in a fun and interactive way, not realizing until later the difficulty of the concepts they learned while building games and projects.

Introduction to Embedded Systems

With this class, students learn the fundamentals of embedded systems as applied to the Tiva C Series LaunchPad.
The course uses a bottom-up approach that focuses on problem solving, and builds gradually from simple interfacing of switches and LEDs to complex concepts like display drivers, digital to analog conversion, generation of sound, analog to digital conversion, graphics, interrupts and communication.
Both general principles and practical tips for building circuits and programming the MCU in the C programming language are presented in the course. The course is interactive, with students building and debugging a final project of their own video game using the LaunchPad and external LCD.

Learn more 

Embedded Systems Design Lab

This is a second year course that demonstrates the design of microcontroller-based systems, interfacing from both hardware and software perspectives and including various applications ranging from audio, data acquisition and communication systems.
TI products used for this course include the Tiva C Series LaunchPad, the SimpleLink Wi-Fi CC3100 BoosterPack plug-in module, and external components. The course builds on problem-solving skills learned in their first year and culminates in a final project, at the level of a Capstone project in other programs.

Learn more

Learn more about Dr.Gerstlauer

Embedded and Real-Time Systems Lab

This is third course in the series, and focuses on interfacing and the design of embedded systems. Similar to the introductory and intermediate courses, this lab is interactive and fun and focuses on problem-solving.
Concluding in a lively, competitive robot race, the lab covers architecture of:
  • Microcontrollers
  • Software design
  • Verification
  • Hardware/software synchronization
  • Interfacing devices to the computer
  • Timing diagrams
  • Real-time operating systems
  • Data collection and processing
  • Motor control
  • Analog filters
  • Digital filters
  • Real-time signal processing
  • Wireless communication
  • The Internet of Things
This comprehensive course was recently revised together with Associate Professor Andreas Gerstlauer, and now uses two TI LaunchPads connected to a single custom control-based Boosterpack.

You may also like:

Real-time Interfacing to the MSP432 Microcontroller

This is another textbook written by Dr. Valvano and supports courses building full systems.

Introduction to the MSP432 Microcontroller

This textbook is written by Dr. Jonathan Valvano, and is an introduction to computers and interfacing focusing on assembly language and C programming.

Dr. Valvano is a professor in the Department of Electrical and Computer Engineering at UT Austin, and is a passionate leader of the UT team who teaches the series. “I am a strong advocate of bottom-up education, which means we start with the basics, teach a topic until the student has full grasp, and then encapsulate and use that topic as we move to teach a higher-level topic,”

Valvano received his S.B. and S.M. in Electrical and Computer Engineering from MIT in 1977 and his Ph.D. in 1981 from the joint Harvard-MIT program in Medical Engineering and Medical Physics. His research involves integrated analog/digital processing, low-power design, medical instrumentation and real-time systems.

View book on Amazon

More on Dr. Jonathan Valvano

Valvano and fellow UT Austin ECE instructor Ramesh Yerraballi have taught more than 100,000 students in their Massive Open Online Course (MOOC) now running until May 2016.

 UT.6.03x Embedded Systems - Shape The World

Dr. Valvano is very collaborative and has authored five books to help bring embedded systems to life for students. TI products he uses in coursework include:

Tiva™ C Series LaunchPad™ development kit

SimpleLink™ Wi-Fi® CC3100 BoosterPack™ plug-in module

MSP432™ microcontroller (MCU) LaunchPad development kit