EE 308
Lecture Outline for Spring 1998
Wednesday 1/14
- Sections 1.1-1.3, Huang: Introduction to
Microprocessors and Microcontrollers.
- Figures
Friday 1/16
- Sections A.1 - A.8, Huang: binary and hexadecimal numbers.
- figures
- Monday 1/19
- Appendix a, Huang: addition and subtraction of hexadecimal numbers.
- Section 1.4, Huang: the 68hc11 programming model.
Section 6.1, 68hc11 reference manual: programmer's model.
- Section 1.7, Huang: 68hc11 instructions.
- figures
- Wednesday 1/21
- Sections 1.5-1.6, Huang: addressing modes.
Section 6.2, 68hc11 reference manual: addressing modes.
- inh inherent
- ext extended
- dir direct
- imm immediate
- ind indexed
- Sections 2.2-2.4, Huang: introduction to assembly language
- figure
- Friday 1/23
- Sections 1.7-1.8, Huang: 68hc11 instructions and machine code
- figures
Monday 1/26
- Section 1.8, Huang: 68hc11 machine code and execution cycles.
- Sections 2.1-2.4 Huang: basic assembly language programming
- figures
Wednesday 1/28
- Sections 2.1-2.6, 2.8, Huang: basic assembly language programming
- assembly language program structure
- assembler directives
- flow charts
- program loops - while, do while, if then else
- branch instructions
- Figures
Friday 1/31
- more examples of assembly language programming, including further
discussion of branching
- figures
Monday 2/03
- Sections 3.1-3.3, 3.6-3.10, Huang: the stack, stack pointer and
subroutines
- Figures
Wednesday 2/04
- More on Stacks and Subroutines
- Parallel I/O on the 68HC11 -- Ports B and C
Friday 2/06
- Parallel I/O on the 68HC11 -- Ports B and C
- Introduction to the C programming Language
- Figures
Monday 2/9
- C Programming: Data Types and Operators
- C Programming: Flow Control
- if ( ) { } else { } statement
- while ( ) { } statement
- for ( ; ; ) { } statement
- do { } while ( ) statement
- Figures
Wednesday 2/11
- More on C programming
- Figures
Friday 2/13
Monday 2/16
- Pointers in C
- Introduction to Interrupts on the HC11
(Huang, Section 5.2;
Motorola Reference Manual, Section 5.3)
- Figures
Wednesday 2/18
- HC11 Main Timer, Timer Overflow Interrupts, and Real Time Interrupts
(Huang, Sections 7.1-7.3, 7.9;
Motorola Reference Manual, Sections 10.1-10.2)
- Figures
Friday 2/20
- Review of Timer Overflow and Real Time Interrupts
- Input Capture Function of the HC11 Timer Subsystem
(Huang, Section 7.4-7.5;
Motorola Reference Manual, Section 10.3)
- Figures
Monday 2/23
- Output Compare Function of the HC11
(Huang Sections 7.6-7.7,
Motorola Reference Manual, Section 10.4)
- Using Output Compare to Generate a Square Wave
- Using TOC1 to Generate a Pulse Width Modulated Signal
- Figures
Wednesday 2/25
- Using BUFFALO routines to interact with the terminal
- Introduction to Microprocessor Address, Data and Control Busses
(Huang, Sections 4.1-4.3, 4.6;
Motorola Reference Manual, Section 2.6)
- Figures
Friday 2/27
- The HC11 in Expanded Mode
(Huang, Chapter 4;
Motorola Reference Manual, Sections 7.3.2 - 7.3.4;
Motorola Technical Data Manual, Section 4.1.2)
- Port B and Port C in Expanded Mode
- Address Latching and Decoding
- Figures
Monday 3/2
- More on the HC11 in Expanded Mode
(Motorola Reference Manual, Sections 7.3.2 - 7.3.4;
Motorola Technical Data Manual, Section 4.1.2, Appendix A)
- A Simple Input Port
- A Simple Output Port
- Address Decoding
- Timing Requirements for I/O Ports
- Figures
Wednesday 3/04
- Review for Exam
- Discussion of memory and port expansion of Lab 8.
- Figures
Friday 3/06
Monday 3/16
- Memory decoding using a 74HC138 decoder chip.
(Huang, Section 4.6.2)
- Simple I/O Ports
- Figures
Wednesday 3/18
- Motorola MC6821 Peripheral Interface Adapter
(Motorola MC6821 Data Sheet)
(Huang, Section 6.12)
- 6821 Ports A and B
- 6821 Registers -- Data, Data Direction and Control
- Figures
- Address and Data Bus Timing
(Huang, Section 4.7)
(Motorola M68HC11 Reference Manual, Sections 7.3.2.2 & 7.3.4.2)
(Motorola M68HC11 E Series Technical Data Manual, Table A-7, Figure A-14)
- Figures
Friday 3/20
- More on memory decoding and bus timing.
- Introduction to parallel port handshaking.
Monday 3/23
- More on the Motorola MC6821 Peripheral Interface Adapter
(Motorola MC6821 Data Sheet)
- Control Lines CA1, CA2, CB1 and CB2
- Handshaking with the Control Lines
- Figures
Wednesday 3/25
- More on the Motorola MC6821 Peripheral Interface Adapter
(Motorola MC6821 Data Sheet)
- More on Handshaking with the Control Lines
- Introduction to Interrupts with the 6821
- Figure
Friday 3/27
- Serial Communication with the HC11 - The Serial Peripheral Interface
(SPI)
(Motorola Reference Manual, Chapter 8)
(Huang, Sections 9.1-9.3)
- Introduction to Synchronous Serial Communications
- Figures
Monday 3/31
- More on the Serial Peripheral Interface: The SPI Control, Status and Data Registers
(Motorola Reference Manual, Chapter 8)
(Huang, Sections 9.4-9.5)
- Figures
Wednesday 4/01
- The Motorola MC68HC68T1 Real Time Clock
(Motorola MC68HC68T1 Data Sheet)
(Huang, Section 9.11)
- Registers in the Real Time Clock
- Setting and Reading the Time from the Real Time Clock
- Using Interrupts on the RTC
- Figures
Friday 4/03
- Asynchronous Serial Communications and the HC11 SCI
(Motorola Reference Manual, Section 9; Huang, Sections 8.1-8.5)
- Basics of Asynchronous Serial Communications
- The HC11 SCI Subsystem
- SCI Registers, Flags and Interrupts
- Programming the SCI
- Figures
Monday 4/06
- The HC11 A/D Converter Subsystem
(Motorola Reference Manual, Section 12; Huang, Chapter 10)
- D/A Converters
- Slope A/D Converters
- Successive Approximation A/D Converters
- Successive Approximation State Machine (see flow chart in Figure~10.3 of
Huang)
- Figures
Wednesday 4/08
- Review for the exam on Friday
Monday 4/13
Wednesday 4/15
- More on the HC11 A/D converter
(Motorola Reference Manual, Section 12)
- Programming the A/D registers: OPTION, ADCTL
- Interrpreting the results: ADR1-4
- Figures
Friday 4/17
- Introduction to Lab 13, Motor Control
with the HC11
- Speed control with pulse width modulation.
- Measuring motor speed with optical encoder and Input Capture interrupt.
- Use of Schmidtt trigger on optical encoder output.
- Setting desired speed with potentiometer and A/D converter.
Monday 4/20
- Further discussion of Lab 13
- Use of floating point numbers with the ICC11 C compiler.
- Use of
printf()
with the ICC11 C compiler.
- Control algorithm -- proportional feedback control.
- Figures
Wednesday 4/22
- Guide for programming an EPROM HC11 in the EVBU.
- Figure
Friday 4/24
- Final details of the 68HC11
- The WAI instruction
- The STOP instruction and the S bit of the Condition Code Register
- The Computer Operating Properly interrupt
- The Clock Monitor interrupt
- The Pulse Accumulator
-
- Figures
Monday 4/27
- More on C Programming
- Defining register bits in header files
- Writing and debugging often-used routines to set up and use HC11 hardware
- Adding functions to a library with the ICC11 C compiler
- Examples using the SPI and MC68HC68T1 Real Time Clock
- Figures
Wednesday 4/29
- Review for Final Exam
- Figure
Friday 5/01
- Review of Interrupts, Masks and Flags
- Figure
Bill Rison,
<rison@ee.nmt.edu >