Prof. Philip Koopman
Lectures: Mon & Wed 10:30 AM - 12:20 PM; PH 125C
Labs: one of four sections: ({Tues OR Wed OR Thu} 6:30-9:20 PM) OR (Fri
1:30-4:20 PM) Room: HH 1305
Recitations: Fri 11:30-12:20; PH 125C
Required Hardware: You will be loaned a microcontroller board for
the course based on the Freescale MC9S12C32 processor (one per student) and a
prototype board (one per team). You must return these boards at the end of the
semester, but they will be available if you choose to take 18-549 in a later
semester. Required Text: Valvano, Embedded Microcomputer Systems: Real
Time Interfacing, 2nd Edition, ISBN 0534551629. Note that this is an old
edition. Do not buy the newer 3rd edition -- it leaves out some
important material.
Supplemental Text: Koopman, Better Embedded System Software,
ISBN-13: 978-0-9844490-0-2. The material in this book will help you understand
some of the key concepts, but is not testable material. This book is the
primary text used for 18-649.
Handouts are provided in class. Lecture materials are only available in printed form.
| Meeting Date | Scheduled Lecture | Reading Valvano text unless otherwise noted .pdf links are CMU-only access (Lab dates shown are pre-lab due date) |
| Mon. 16-Jan-2012 | 1. Course Intro & Background | Valvano book sections: 1.2, 1.5 E-mail lab partner requests to course staff today by WEDNESDAY 9 PM at: |
| Wed. 18-Jan | 2. Embedded Hardware | 1.1, 1.4, 1.8 |
| Fri. 20-Jan | Recitation | Lab #1 |
| Mon. 23-Jan | 3. Microcontroller Instruction Set - Part 1 | 1.6, 2.1-2.2.8, 2.2.10 |
| Wed. 25-Jan | 4. Microcontroller Instruction Set - Part 2 | 2.2.9, 2.2.11, 2.2.12, 2.5.1, 2.5.2, 2.5.4 |
| Fri. 27-Jan | Recitation | Lab #2 |
| Mon. 30-Jan | 5. Engineering Process & Design Techniques | 1.3, 2.3, 2.4.5, 2.5.3, 2.6,
Gannsle98a,
Wolf07 -- state machine section
only. (Supplemental: Koopman Ch. 2-3, 12-13) |
| Wed. 1-Feb | 6. Embedded Language Use | 2.5.1, 2.5.2,
Jones98 (Supplemental: Koopman Ch. 11) |
| Fri. 3-Feb | Recitation | Lab #3 |
| Mon. 6-Feb | 7. Coding Tricks; Multiprecision Math; Reviews | Crenshaw97,
Gannsle98b (Supplemental: Koopman Ch. 22) |
| Wed. 8-Feb | 8. Memory and Memory Bus | 1.9, 9.1-9.2.2, 9.3-9.4.1, 9.6.2, 9.8, Barr01, Freescale04 |
| Fri. 10-Feb | Recitation | Lab #4 |
| Mon. 13-Feb | 9. Economics, Code Optimization, and Fixed Point | 1.5.5, 2.1,
Kraeling96 (Supplemental: Koopman Ch. 16) |
| Wed. 15-Feb | 10. Serial Ports | 3.1, 3.4, 7.1, 7.2, 7.5.1-7.5.2, 7.6.3; (wikipedia) |
| Fri. 17-Feb | Recitation | Lab #5 |
| Mon. 20-Feb | 11. Debug & Test | 2.11,
Schneider04,
Knoke08 (Supplemental: Koopman Ch. 7,23) |
| Wed. 22-Feb | First Exam
(Covers Lectures 1-11) |
|
| Fri. 24-Feb | Recitation | Lab #6 |
| Mon. 27-Feb | 12. Time; Timer/Counters; Watchdog Timers | 2.4.2-2.4.4, 6.1.4-6.1.5.1;
Murphy01 (Supplemental: Koopman Ch. 29; Murphy00) |
| Wed. 29-Feb | 13. Interrupts | 4.1, 4.4, Massey01, Ganssle94 |
| Fri. 2-Mar | Recitation | Lab #7 |
| Mon. 5-Mar | 14. Interrupt & Cyclic Task Response Timing | Ball02;
Interrupt latency hand-out (Supplemental: Koopman Ch. 14.1-14.4) |
| Wed. 7-Mar | 15. Preemptive Context Switching | 4.15, 5.1, Labross03, Kalinsky01 |
| 9-Mar to 16-Mar | NO CLASS; NO RECITATION - Spring Break | No labs, no office hours |
| Mon. 19-Mar | 16. Concurrency | 2.9, 4.2, 4.3, 5.2, 5.3,Ganssle01 (Supplemental: Koopman Ch. 20) |
| Wed. 21-Mar | 17. Scheduling | 3.5.2, 5.4, Stewart01,
Stewart02 (Supplemental: Koopman Ch. 14.5-14.8) |
| Fri. 23-Mar | Recitation | Lab #8 |
| Mon. 26-Mar | 18. RTOS | Renwick04, Jones97, Hawley03 |
| Wed. 28-Mar | No class today | |
| Fri. 30-Mar | Recitation | Lab #9 |
| Mon. 2-Apr | 19. Digital to Analog, PWM, Stepper Motors | 11.4, 6.2.3-6.2.4, 6.7, Barr01, 8.6 |
| Wed. 4-Apr | 20. Analog Inputs | 3.5.4, 11.5. 11.10.2, 12.3.2, Maxim05, Maxim05a, Wagner02 |
| Fri. 6-Apr | Recitation | Lab #10 |
| Mon. 9-Apr | 21. Other I/O, Human Interface, Security | 8.1-8.3, Kalinski12 (security) |
| Wed. 11-Apr | 22. Control | 13.1-13.4, Barr02 |
| Fri. 13-Apr | Recitation | Lab #11 |
| Mon. 16-Apr | 23. Therac 25; Error Detection Codes | Leveson (especially
sections 3.5.3, 3.6.1, 4 and pg 42) (Supplemental: Koopman Ch. 28) |
| Wed. 18-Apr | 24. Bluetooth & CAN | Schill97, Spaker00 |
| 19-Mar to 20-Apr | NO RECITATION - Carnival | No labs, no office hours |
| Mon. 23-Apr | 25. System Resets, Robustness & Power Management | 4.5-4.7, Gollakota06, (Supplemental: Koopman Ch. 30) |
| Wed. 25-Apr | Second Exam
(Covers Lectures 12-25) |
NONE |
| Fri. 27-Apr | Recitation | NONE |
| Mon. 30-Apr | No Class Today -- Work on Projects! | |
| Wed. 2-May | No Class Today -- Work on Projects! | |
| Fri. 4-May | ECE Day -- No Recitation | Curtailed lab/office hours today; see blackboard |
| Wed. 9-May | Lab demos See Blackboard for scheduling details |
|
| Fri. 11-May | Lab writeups due today, Friday May 11 | Lab #11 writeup due today |
| TA In-Lab Office Hours (50 minutes starting at time below) |
TA In-Lab Office Hours (50 minutes starting at time below) |
Lab Section (6:30-9:20P) | |
| Monday | Aaron 2 PM | Amey 5 PM | No Lab |
| Tuesday | Arnold 10:30 AM | Balaji 3 PM | Arnold Lab Section A |
| Wednesday | Lincoln 1 PM | Amey 5:30-6:30 PM | Amey Lab Section B |
| Thursday | Arnold 10:30 AM | Balaji 3 PM | Lincoln Lab Section C |
| Friday | Aaron 12:30 PM (after recitation) |
Lincoln 5 PM | Baliji Lab Section E (1:30-4:20P) |
Subject to change. Lab Demos are due two hours after start of lab time.
| Week of: | Mon |
Tue (Sec A) |
Wed (Sec B) |
Thu (Sec C) |
Fri (Sec D) |
Lab Report Due Wednesday |
Prelab Due Friday |
Fri. Recitation Discusses Labs |
||
| 16-Jan 2012 |
No Lab | Open Lab | Open Lab | Open Lab | Open Lab | None | 1 | 1, 2 | ||
| 23-Jan | No Lab | 1 | 1 | 1 | 1 | None | 2 | 2, 3 | ||
| 30-Jan | No Lab | 2 | 2 | 2 | 2 | 1 | 3 | 3, 4 | ||
| 6-Feb | No Lab | 3 | 3 | 3 | 3 | 2 | 4 | 4, 5 | ||
| 13-Feb | No Lab | 4 | 4 | 4 | 4 | 3 | 5 | 5, 6 | ||
| 20-Feb | No Lab | Open Lab | Open Lab | Open Lab | 5 | 4 | 6 | 6, 7 | ||
| 27-Feb | No Lab | 5 | 5 | 5 | 6 | None | 7 | 7, 8 | ||
| 5-Mar | No Lab | 6 | 6 | 6 | SPRING | 5 | None | No Recitation | ||
| 12-Mar | SPRING | BREAK | SPRING | BREAK | BREAK | None | None | No Recitation | ||
| 19-Mar | No Lab | Open Lab | Open Lab | 7 | 7 | None | 8 | 8, 9 | ||
| 26-Mar | No Lab | 7 | 7 | 8 | 8 | 6 | 9 | 9, 10 | ||
| 2-Apr | No Lab | 8 | 8 | 9 | 9 | 7 | 10 | 10, 11 | ||
| 9-Apr | No Lab | 9 | 9 | 10 | 10 | 8 | 11 | 11 | ||
| 16-Apr | No Lab | 10 | 10 | Carnival | Carnival | 9 | None | No Recitation | ||
| 23-Apr | No Lab | Open Lab | Open Lab | Open Lab | Open Lab | 10 | None | No Recitation | ||
| 30-Apr | No Lab | Open Lab | Open Lab | Open Lab | Open Lab | None | None | No Recitation |