Week |
Wednesday |
Monday |
1
|
Jan 19
|
Lecture 1: Introduction (Chapter 1)
|
- Course administration
- Embedded systems, development cycle
- Flow charts, data flow and call graphs
|
|
|
Jan 24
|
Lecture 2: TExaS (Appendix 1.1-1.8.2, Chapter 2 and 3)
|
- TExaS simulator
- Numbers, hexadecimal
|
|
|
2
|
Jan 26
|
Lecture 3: Architecture (Chapter 2 and 4)
|
- 9212 architecture and execution
- Simple addressing modes
|
|
|
Jan 31
|
Lecture 4: I/O (Chapter 2 and 3)
|
- Execution, subroutines
- Parallel ports, direction registers
- Logical and shift operations
|
|
|
3
|
Feb 2
|
Lecture 5: Debugging (Section 4.7 and 5.7)
|
|
|
|
Feb 7
|
Lecture 6: Arithmetic (Chapter 3 and 5)
|
- Arithmetic operations
- Condition code bits
|
|
|
4
|
Feb 9
|
Lecture 7: Board (Appendix 2, Section 2.6)
|
- Demo of the board (bring board to class)
- Switch input and LED output
|
|
|
Feb 14
|
Lecture 8: Modular programming (Section 5.1, 5.2, 6.11)
|
- If-then, loops
- Subroutines and the stack
- Debugging dump
|
|
|
5
|
Feb 16
|
Lecture 9: Pointers (Section 6.1-6.3, 6.11)
|
- Indexed addressing
- Arrays
- Strings
|
|
|
Feb 21
|
Lecture 10: Timers (Section 4.5, 5.7)
|
- Timers
- Advanced functional debugging
|
|
|
6
|
Feb 23
|
Test 1 (closed book):
|
|
|
|
Feb 28
|
Lecture 12: FSMs (Section 6.8, 10.1)
|
- Finite state machines (FSMs)
- Fixed-point numbers
|
|
|
7
|
Mar 2
|
Lecture 13: Locals, parameters (Section 7.1-7.5, 9.1)
|
- Local variables
- Stack frames and parameter passing
- I/O synchronization
|
|
|
Mar 7
|
Lecture 14: C programming (C Primer)
|
- Introduction to C
- Structure of a C program
- Functions, expressions
|
|
|
8
|
Mar 9
|
Lecture 15: C programming (C Primer)
|
- Variables in C
- Structures and data types
- FSMs in C
|
|
|
|
9
|
|
Mar 21
|
Lecture 16: LCD interface (Section 8.4, 10.1, 10.5)
|
- LCD programming
- Number conversions
- Review for Test 2
|
|
|
10
|
Mar 23
|
Test 2 (closed book):
|
- In lab (during class time), ACA 1.102 & 1.106
- Chapter 5 and 6
|
|
|
Mar 28
|
Lecture 18: Interrupts (Section 9.2, 9.4, 9.6, 9.10)
|
- 9S12 interrupts and interrupt processing
- Timer and periodic (output compare) interrupts
|
|
|
11
|
Mar 30
|
Lecture 19: C programming
|
- Metrowerks
- C/assembly interface
|
|
|
Apr 4
|
Lecture 20: A/D conversion (Section 11.1, 11.4)
|
- Analog to digital conversion (ADC)
- Lab 7 design methods
|
|
|
12
|
Apr 6
|
Lecture 21: Numerical calculations (Section 10.2)
|
- Multiplication and division
- Table lookup and interpolation
|
|
|
Apr 11
|
Lecture 22: Serial I/O (Section 8.1)
|
- Serial communications interface (SCI)
- SCI programming and interrupts
- Lab 8 introduction
|
|
|
13
|
Apr 13
|
Lecture 23: Thread communication (Section 12.1-12.4)
|
- Producer-consumer problems
- FIFO queues
|
|
|
Apr 18
|
Lecture 24: D/A conversion (Section 11.2-11.3)
|
- Digital to analog conversion (DAC) on the 9S12
- Sound generation
|
|
|
14
|
Apr 20
|
Lecture 25: TRobots (Section 8.7)
|
- Stepper motors
- TRobot discussion
|
|
|
Apr 25
|
Lecture 26: Embedded systems
|
- Embedded system design
- Systems engineering
|
|
|
15
|
|
|
16
|
May 4
|
Lecture 29: Wrapup
|
- Future of embedded systems
- Outlook
|
|
|
Final
|
Friday, May 13
|
Final Exam:
|
7:00 pm - 10:00 pm
|
|