EE 308
Lecture Outline for Spring 2000
Wednesday 1/19
- Introduction to
Microprocessors and Microcontrollers.
- Figures
- Binary and hexadecimal numbers (Katz, Appendix A).
- Figures
Friday 1/21
- Signed and Unsigned Hex Numbers (Katz, Chapter 5)
- Figures
Monday 1/24
- Signed and Unsigned Hex Numbers (Katz, Chapter 5)
- Figures
- The HC12 Internal Registers (MC68HC912B32 Technical Summary, Section
2.1; CPU 12 Reference Manual, Section 2.1)
- Figures
- The HC12 has a 16-bit memory
space, allowing access to 65,536 bytes of memory
- Common memory types
- Memory allocation in the 68HC12
- You can use 512 bytes of RAM, from
0x0800 to 0x09FF
- The control unit interprets
instructions and tells the
combinational Arithmetic Logic Unit what to do
- A 16-bit program counter tells
the control unit which instruction to execute next
- The main registers in the
HC12 are A and B, two eight-bit registers. The registers
can be considered as a single 16-bit register named D
- The full HC12 programming model:
the A, B, X, Y, SP, PC, and CCR registers
- A simple program for the HC12, loaded
at address 0x0800, and using data from addresses 0x0900 and 0x0901
- The same program using assembler
directives, making the program easier to read by humans
- How to assemble a program using the
Cosmic assembler
- Listing file generated by
assembler for simple program
Wednesday 1/26
- Addressing Modes (CPU 12 Reference Manual, Section 3)
- Figures
Friday 1/28
- Assembly language programming on the 68HC12
- Figures
Monday 1/31
- More on Assembly language programming on the 68HC12
- 68HC12 Instructions (CPU 12 Reference Manual, Section 5)
- Figures
- Things to know for writing
assembly language programs
- Instructions used for copying
data: Load/Store, Transfer/Exchange, and Move
- Instructions used for arithmetic:
Add/Subtract, Multiply/Divide, Increment/Decrement, Logical Operations,
Compare and Test
- Instructions used for changing
program flow: Jump/Branch, Bit Test and Branch, Loop, Subroutines
- Instructions to manipulate index
registers and the condition code register
- Miscellaneous instructions, some of
which will be covered later in class
- Writing a simple 68HC12 assembly language program
- Figures
Wednesday 2/2
- Review of carry and overflow
- Figures
- More on 68HC12 assembly language programming -- use of the stack, stack
pointer, and subroutines
- Figures
Friday 2/4
- More on Assembly language programming on the 68HC12 -- using a
subroutine
- 68HC12 Instructions (CPU 12 Reference Manual, Section 5)
- Figures
- Communicating with the outside on the 68HC12 -- Introduction to Ports A
and B in single-chip mode
- 68HC12 Technical Summary, Section 6.2
- Figures
Monday 2/7
- More on Assembly language programming on the 68HC12
- Figures
- Introduction to C programming on the 68HC12
- Figures
Wednesday 2/9
- More on C programming on the 68HC12
- Figures
Friday 2/11
- More on C programming on the 68HC12
- Figures
- Introduction to the free-running timer on the 68HC12
- 68HC12 Technical Summary, Pages 73-76
- Figures
Monday 2/14
- More on the free-running timer on the 68HC12
- 68HC12 Technical Summary, Pages 73-76
- Figures
- What happens when you reset the 68HC12
- 68HC12 Technical Summary, Section 9
- Figures
Wednesday 2/16
- Review for Exam 1
- Figures
Friday 2/18
Monday 2/21
- Introduction to Interrupts: The HC12 Timer Overflow Interrrupt
- 68HC12 Technical Summary, Section 9
- 68HC12 Technical Summary, Section 12
- Figures
Wednesday 2/23
- Interrupts: The HC12 Timer Overflow Interrrupt and Real Time
Interrupt
- 68HC12 Technical Summary, Section 9
- 68HC12 Technical Summary, Section 10
- 68HC12 Technical Summary, Section 12
- Figures
- Introduction to the HC12 Input Capture Subsystem
- 68HC12 Technical Summary, Section 12
Friday 2/25
- Interrupts: Review of timer overflow, real time interrupt, and input
capture
- 68HC12 Technical Summary, Section 10
- 68HC12 Technical Summary, Section 12
- Figures
Monday 2/28
- Using DBug12 to print to the terminal
- Figures
- 68HC12 Output Compare function
- 68HC12 Technical Summary, Section 12
- Figures
Wednesday 3/1
- The HC12 Pulse Width Modulation System
- 68HC12 Technical Summary, Section 11
- Figures
Friday 3/3
- External Data Buses -- Talking to the Outside World
- Figures
Monday 3/6
- More on the HC12 in Expanded Mode
- Figures
Wednesday 3/8
- Guidelines for setting up the HC12 PWM registers
- Figures
- More on the HC12 in Expanded Mode
- Figures
Friday 3/10
- Bus timing on the HC12
- MC68HC912B32 Electrical Characteristics Technical Supplement
- Figures
- Putting the HC12 into expanded wide mode
- Figures
Monday 3/20
- Review for Exam 2
- Figures
Wednesday 3/22
Friday 3/24
- Altera design for memory expansion and added ports
- Figures
Monday 3/27
- How to get the HC12 into Expanded Wide mode (see material from 3/10 as
well)
- Figures
- Review of Altera desing from 3/24
Wednesday 3/29
Friday 3/31
- Using standard MSI logic for port expansion
- Figures
- IRQ and XIRQ interrupts (H12 Technical Reference, Section 9)
- Figures
Monday 4/3
- Expansion mode timing (HC12 Electrical Characteristics Manual, pp.
14-15)
- Figures
- Introduction to Serial Communications (HC12 Technical Summary Manual,
Section 13)
- Figures
Wednesday 4/5
- More on expansion mode timing (HC12 Electrical Characteristics Manual, pp.
14-15)
- Figures
- More on the HC12 Serial Peripheral Interface (SPI) (HC12 Technical
Summary Manual, Section 13)
- Figures
Friday 4/7
- More on the HC12 Serial Peripheral Interface (SPI) (HC12 Technical
Summary Manual, Section 13)
Using the HC12 to control the MAX 522
D/A converter
- Figures
Monday 4/10
- Using the
Maxim 522 D/A Converter Chip
- Figures
- Introduction to A/D (Analog to Digital) converters
- Figures
Wednesday 4/12
- The HC12 A/D converter
- Figures
Friday 4/14
Monday 4/17
Wednesday 4/19
Monday 4/24
Wednesday 4/26
- More discussion of final lab project
- HC12 Serial Communications Interface (SCI)
- HC12 Technical Summary, Section 13.2
- Figures
Friday 4/28
- Other subsystems of the HC12
- Figures
Monday 5/1
- Further discussion of SCI
Wednesday 5/3
- Review for Final Exam
- Figures
Friday 5/5
- Review for Final Exam
- Figures
Bill Rison,
<rison@ee.nmt.edu >