Lectures and Notes

Lectures will be conducted in person and streamed live via Zoom. Recordings will be posted on Canvas within a few hours of the lecture’s completion. Students are not required to attend the live lectures, but are encouraged to do so if they are able. See Canvas for the Zoom link to join the live lectures.

We will use a “handout-style” notes format for the course. For each lecture, the instructor will provide a “handout” that provides a scaffolding for notes, including figures and starter code for examples. During lecture, we will fill in key portions and examples.

We recommend that you take notes while watching the lecture–you can either print out the “handout” and fill it in, or just take notes in a notebook. The instructor’s copy of the completed notes will be posted here when the live lecture has finished.

Want a physical copy of the handouts, but don’t want to print them yourself? A combined PDF of all handouts is available here. You can order a printed version from an office supply store that offers document copying/printing services near you (eg. Staples, OfficeMax, Fedex Office, etc). For a black and white version (no need for color!), the whole PDF can be printed for about $20, plus shipping costs.

Schedule

Class Lecture Topics Homework Resources
T, 17 May Introduction and Course Logistics
Introduction to Number Representations
HW1 Lecture 1 Notes (Blank)
Lecture 1 Notes (Complete)
Background Survey
C Programming Examples
R, 19 May C Programming Basics
Intro to Embedded Programming
Lab 0 Lecture 2 Notes (Blank)
Lecture 2 Notes (Complete)
C Programming Examples
R, 19 May Lab 0: Introduction
T, 24 May Of Integers and Endians
Floating Point Representations
HW2 Lecture 3 Notes (Blank)
Lecture 3 Notes (Complete)
R, 26 May The MSP430 Architecture
Intro to Digital I/O
Lecture 3 Notes (Complete)
Lecture 4 Notes (Blank)
Lecture 4 Notes (Complete)
State machine example
R, 26 May Lab 0 / Lab 1: Blackjack
T, 31 May NO CLASS
HW2,
Lab 1
R, 2 Jun Digital I/O: Buttons and LEDs!
More Digital I/O
Lecture 4 Notes (Complete)
Lecture 5 Notes (Blank)
Lecture 6 Notes (Complete)
State machine example (extended)
R, 2 Jun Lab 1: Blackjack (cont.)
T, 7 Jun Digital I/O: Buttons and LEDs!
HW3 Lecture 5 Notes (Blank)
Lecture 7 Notes (Complete)
Digital I/O Reference
R, 9 Jun More Digital I/O
HW4 Lecture 5 Notes (Blank)
Lecture 8 Notes (Complete)
Decoder Example
Digital I/O Reference
R, 9 Jun Lab 2: MSP430Hero!
T, 14 Jun Exam 1 review
Lecture 6 Notes (Exam Review)
Lecture 9 Notes (Complete)
T, 14-16 Jun Exam 1: Architecture and programming basics
R, 16 Jun Intro to Clocks and Timers
Timers and Interrupts
Lecture 7 Notes (Blank)
Lecture 8 Notes (Blank)
Timer Register Excerpt
Lecture 10 Part 1 Notes (Complete)
Lecture 10 Part 2 Notes (Complete)
Stopwatch Example
R, 16 Jun Lab 2: MSP430Hero!
T, 21 Jun Real-world timers
HW5 Lecture 8 Notes (Blank)
Timer Register Excerpt
Lecture 11 Notes (Complete)
Stopwatch Example
R, 23 Jun Intro to Analog to Digital Conversion
HW6 Lecture 9 Notes (Blank)
ADC12 Register Excerpt
Lecture 12 Notes (Complete)
R, 23 Jun Lab 2: MSP430Hero!
T, 28 Jun No live class (recording only!)
Intro to Operating Modes
HW7 Lecture 13 Notes (Blank)
Lecture 13 Notes (Complete)
LPM Table
R, 30 Jun Intro to Digital Peripherals
Exam 2 Review
Course discussion
Lecture 14 Notes (Blank)
SPI/UART Example
Lecture 14 Part 1 Notes (Digital Interfaces)
Lecture 14 Part 2 Notes (Practice Exam)
R-M, 30 Jun-3 Jul Exam 2: Clocks, Timers, and Data acquisition
R, 30 Jun Lab 2: MSP430Hero++

Additional Lecture Notes

For additional lecture notes, please see the following resources:

Note: While the material covered in this offering of the course may be ordered differently, the content of the notes is roughly the same.