Hector Erives, Ph.D., P.E.
Associate Professor
EE 308 Mircontrollers
Syllabus

General Outline
  • Introduction to the MC9S12 Microcontroller
  • Binary and Hexadecimal Numbers
  • Assembly Language Programming
  • C Language Programming
  • Introduction to MC9S12 Internal Peripherals: Timer, Timer interrupts, PWM subsystems
  • The MC9S12 Expanded Mode: Address/Data buss timing, Internal/External memory, Interfacing
  • More MC9S12 Internal Peripherals: A/D converters, Serial Peripheral Interface (SPI), Serial Communications Interface (SCI)
  • Using the MC9S12 in a Control Application

Texts
  • Class Notes
  • The HCS12/9S12: An Introduction to Software and Hardware Interfacing, 2nd Edition, H.-W. Huang, Delmar Learning
  • Manuals and data sheets from Freescale (Available online)

Lectures
Number Title Text Sections Manuals
1 Course Overview Sections 1.2 - 1.3
2 Introduction to MC9S12 Sections 1.4 - 1.8 S12CPUV2 Reference Manual, Sections 2.1 - 2.5
9S12DP256B Device Users Guide,Section 1
3 Assembly Language Programming Section 2.2
4 Addressing Modes Sections 1.9 - 1.10 S12CPUV2 Reference Manual, Section 3
5 More on MC9S12 Assembly Language Programming Section 2.3 S12CPUV2 Reference Manual, Section 3, 5, and Appendix A
6 Disassembly of MC9S12 Op Codes, Review of Binary/Hex numbers Section 2.4 - 2.6 S12CPUV2 Reference Manual, Section 5 and Appendix A
7 Writing an Assembly Language Program Section 2.7 - 2.10
8 More on Writing an Assembly Language Program Section 2.7 - 2.10, 7.5
9 The Stack and the Stack Pointer Section 4.3
10 Using the Stack and Programming the MC9S12 in C Section 4.3, Section 5.2 - 5.4
11 Programming the MC9S12 in C Section 5.2 - 5.4
12 Programming the MC9S12 in C, Introduction to the MC9S12 Timer Subsystem Section 5.8 -5.10, 8.3 - 8.4 HCS12 Enchanced Capture Timer (ECT) Block Guide
13 Real Time Interrupt Section 6.2 - 6.7 S12CPUV2 Reference Manual, Section 7
9S12DP256B Device Users Guide, Section 5
HCS12 Clocks and Reset Generator (CRG) Block Guide
14 Output Compare Function Section 8.6 9S12DP256B Device Users Guide, Section 5
HCS12 Enhanced Capture Timer (ECT) Block Guide
15 Input Capture Function Section 8.5 9S12DP256B Device Users Guide, Section 5
HCS12 Enhanced Capture Timer (ECT) Block Guide
16 The MC9S12 Pulse Width Modulation Section 8.10 - 8.11 HCS12 PWM Block Guide
17 MC9S12 A/D Converter Section 12.1 - 12.2 HCS12 Analog to Digital Converter (ATD) Block Guide
18 The Dragon12 LCD Display Section 7.7 - 7.8 Hantronix HD16216L-S Data Sheet
19 Introduction to Serial Communications Section 9.2, 11.2 HCS12 Inter-Integrated Circuit (IIC) Block Guide
20 The IIC Serial Interface and the DS1307 Real Time Clock Section 11.2 - 11.6 HCS12 Inter-Integrated Circuit (IIC) Block Guide
DS1307 Real Time Clock
21 Lab on the MC9S12 IIC and the DC1307 Real Time Clock, Asynchronous Serial Data Transfer Section 11.2 - 11.6 HCS12 Inter-Integrated Circuit (IIC) Block Guide
DS1307 Real Time Clock
22 Motor Control Section 8.11
23 Introduction of the MC9S12 Expanded Mode Section 14.2, 14.7 Multiplexed External Bus Interface (MEBI) Module Block Users Guide
DS1307 Real Time Clock
24 Expanded Mode on the MC9S12 Section 14.2 - 14.7 Multiplexed External Bus Interface (MEBI) Module Block Users Guide

Homeworks
Homework 1 (Due - 2/5/14)
Homework 2 (Due - 2/10/14)
Homework 3 (Due - 2/17/14)
Homework 4 (Due - 2/26/14)
Homework 5 (Due - 3/5/14)
Homework 6 (Due - 3/24/14)
Homework 7 (Due - 4/7/14)

References
References for Lab 1 & 2
References for Disassembling
References for Stack

Sample exams
2012 EE308 Course information

Review Midterm II
Topics for midterm

Last Modified: December 2013