CS4101: Introduction to Embedded Systems
(Fall 2016)
Course Information
- Introduction:
This course introduces basic concepts of microcontrollers and embedded
systems. The course is designed around labs, using TI MSP430 LaunchPad and
Arduino Uno to discuss concepts such as basic I/O, timing and
clocking, interupt handling, serial communication, embedded operating systems,
synchronization, etc.
- Instructor:
Chung-Ta King
- Classroom:
- Time: Tuesday 10:10am-12:00pm; Thursday 10:10am-11:00am
- Location: 236 EECS; 105 Delta Building
- Reference Book:
- David E. Simon, An Embedded Software Primer, Addison-Wesley,
1999.
- John H. Davies, MSP430 Microcontroller Basics, Newnes, 2008.
- Lectures:
- Course
outline
- Embedded
software design and implementation
- Introduction
to MSP430
- General
purpose IO
- Timers and
clocks
- Interrupts
- Analog-to-digital
converters
- Low-power
optimization
- Asynchronous
serial communication
- Introduction
to Arduino
UNO
- DAC
and PWM
- FreeRTOS
- Tasks
and scheduling
- Real-time
scheduling and synchronization
- Labs:
There are 11 basic labs in this course.
Labs 1 to 6 are the practice labs of TI MSP430 LaunchPad,
while labs 7 to 11 are practice labs of Arduino UNO.
- Lab 1: General
purpose IO
- Lab 2: Timers
and clocks
- Lab 3: Interrupts
- Lab 4: Analog-to-digital
converts
- Lab 5: Low-power
optimization)
- Lab 6: Serial
communication)
- Lab 7: Arduino basics
- Lab 8: Arduino DAC and PWM
- Lab 9: FreeRTOS
- Lab 10: Tasks and scheduling
- Lab 11: Task synchronization
Resources
- Development boards for the labs: