Introduction to Embedded Systems

EE319K, Unique: 15955, 15960, 15965
Semester: Spring 2009



Lecture Schedule (tentative)

Week Monday Wednesday Friday
1  
Jan 21
Lecture 1: Introduction (Chapter 1)
  • Course administration
  • Embedded systems, development cycle
  • Flow charts, data flow and call graphs
 
 
2
Jan 26
Lecture 2: TExaS (Appendix 1.1-1.8.2, Chapter 2 and 3)
  • TExaS simulator
  • Numbers, hexadecimal
 
 
Jan 28
Lecture 2: Architecture (Chapter 2 and 4)
  • 9212 architecture and execution
  • Simple addressing modes
 
 
 
3
Feb 2
Lecture 3: I/O (Chapter 2 and 3)
  • Execution, subroutines
  • Parallel ports, direction registers
  • Logical and shift operations
Homework 1 due at midnight
Feb 4
Lecture 4: Debugging (Section 4.7 and 5.7)
  • Debugging in TExaS
 
 
4
Feb 9
Lecture 4: Arithmetic (Chapter 3 and 5)
  • Arithmetic operations
  • Condition code bits
 
Homework 2 due at midnight
Feb 11
Lecture 5: Board (Appendix 2, Section 2.6)
  • Demo of the board (bring board to class)
  • Switch input and LED output
 
 
5
Feb 16
Lecture 5: Modular programming (Section 5.1, 5.2, 6.11)
  • If-then, loops
  • Subroutines and the stack
  • Debugging dump
Homework 3 due at midnight
Feb 18
Review for Test 1:
  • Chapter 1 - 5
 
 
6
Feb 23
Test 1 (closed book):
  • Chapter 1 - 5
 
 
Homework 4 due Tuesday midnight
Feb 25
Lecture 6: Pointers (Section 6.1-6.3, 6.11)
  • Indexed addressing
  • Arrays
  • Strings
 
 
7
Mar 2
Lecture 7: State machines (Section 4.5, 6.8)
  • Timer
  • Finite state machines (FSMs)
 
Homework 5 due at midnight
Mar 4
Lecture 8: Locals (Section 7.1-7.3, 10.1)
  • Advanced functional debugging
  • Fixed-point numbers
  • Local variables
 

8
Mar 9
Lecture 9: Parameters (Section 7.4-7.5, 9.1)
  • Review for Test 2
  • Stack frames and parameter passing
  • I/O synchronization, LCD interface
Homework 6 due at midnight
Mar 11
Test 2 (closed book):
  • In lab (during class time), ACA 1.102
  • Chapter 5 and 6
 
 
9
Mar 16
Spring Break
Mar 18
Spring Break
 
10
Mar 23
Lecture 10: Interrupts (Section 9.2, 9.4, 9.6, 9.10)
  • LCD programming
  • 9S12 interrupts and interrupt processing
  • Timer and periodic (output compare) interrupts
 
Mar 25
Lecture 11: A/D conversion (Section 11.1, 11.4)
  • Analog to digital conversion (ADC)
  • Lab 6 design methods
 
 
 
11
Mar 30
Lecture 11: Numerical calculations (Section 10.2)
  • Multiplication and division
  • Table lookup and interpolation
 
Homework 7 due at midnight
Apr 1
Lecture 12: Serial I/O (Section 8.1)
  • Serial communications interface (SCI)
  • SCI programming and interrupts
  • Lab 7 introduction
 
 
12
Apr 6
Lecture 12: Thread communication (Section 12.3-12.4)
  • Producer-consumer problems
  • FIFO queues
 
Homework 8 due at midnight
Apr 8
Lecture 13: D/A conversion (Section 11.2-11.3)
  • Digital to analog conversion (DAC) on the 9S12
  • Sound generation
 
 
 
13
Apr 13
Lecture 14: TRobots (Section 8.7)
  • Stepper motors
  • TRobot discussion
 
Homework 9 due at midnight
Apr 15
Review for Test 3:
  • Chapter 6 - 12
 
 
14
Apr 20
Test 3 (closed book):
  • Chapter 6 - 12
 
 
Apr 22
Guest lecture (Prof. Erez): Floating point
  • Floating point number representation
  • Floating point arithmetic
 
 

15
Apr 27
Lecture 15: C programming
  • Metrowerks CodeWarrior
  • TRobots in C
  • Recursion
Homework 10 due at midnight
Apr 29
Lecture 16: Embedded systems
  • Embedded system design
  • Systems engineering
 
 
 
16
May 4
TRobots Prelims, Review:
  • Chapter 1 - 12
 
May 6
TRobots Finals, Review:
  • Chapter 1 - 12
 
 
Final    
May 15
Final Exam:
7:00 pm - 10:00 pm


Contents © Copyright 2009 Andreas Gerstlauer http://www.ece.utexas.edu/~gerstl/ee319k_s09