Hector Erives, Ph.D., P.E.
Associate Professor
EE 308 Microntrollers/MENG 483 Mechatronics
Syllabus

General Outline
  • Introduction to digital electronics
  • Introduction to mechatronics
  • 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 (Available online)
  • Fundamentals of Digital Logic with Verilog Design, 3rd Edition,
    Stephen Brown, Zvonko Vranesic, McGraw-Hill (Not required)
  • Mechatronics: Electronic Control Systems in Mechanical Engineering,
    W. Bolton, Longman Group Limited (Not required)
  • The HCS12/9S12: An Introduction to Software and Hardware Interfacing, 2nd Edition,
    H.-W. Huang, Delmar Learning (Not required)
  • Manuals and data sheets from NXP (formerly Freescale) (Available online)

Lectures
Number Title Text Chapters: Digital/Mechatronics/HCS12 Manuals
0 Introduction to Digital Electronics 2-7 / 15 / --
1 Introduction to Microprocessors 2 / 15 / 1
2 Introduction to Microcontrollers -- / 15 / 1 S12CPUV2 Reference Manual, Sections 2.1 - 2.5
9S12DP256B Device Users Guide,Section 1
3 Assembly Language Programming -- / 15 / 2
4 Addressing Modes -- / -- / 1 S12CPUV2 Reference Manual, Section 3
5 MC9S12 Assembly Language Programming -- / 15 / 2 S12CPUV2 Reference Manual, Section 3, 5, and Appendix A
6 Disassembly of MC9S12 Op Codes, Review of Binary/Hex numbers -- / -- / 2 S12CPUV2 Reference Manual, Section 5 and Appendix A
7 Writing an Assembly Language Program -- / 15,16 / 2
8 More on Writing an Assembly Language Program -- / 15,16 / 2,7
9 The Stack and the Stack Pointer -- / -- / 4
10 Using the Stack and Programming the MC9S12 in C -- / -- / 4,5
11 Programming the MC9S12 in C -- / -- / 5
Review for Exam 1
12 Programming the MC9S12 in C, Introduction to the MC9S12 Timer Subsystem -- / -- / 5,8 HCS12 Enchanced Capture Timer (ECT) Block Guide
13 Real Time Interrupt -- / -- / 6 S12CPUV2 Reference Manual, Section 7
9S12DP256B Device Users Guide, Section 5
HCS12 Clocks and Reset Generator (CRG) Block Guide
14 Input Capture/Output Compare Functions -- / -- / 8 9S12DP256B Device Users Guide, Section 5
HCS12 Enhanced Capture Timer (ECT) Block Guide
15 Input Capture Function cont. -- / -- / 8 9S12DP256B Device Users Guide, Section 5
HCS12 Enhanced Capture Timer (ECT) Block Guide
16 The MC9S12 Pulse Width Modulation -- / -- / 8 HCS12 PWM Block Guide
17 MC9S12 A/D Converter -- / -- / 12 HCS12 Analog to Digital Converter (ATD) Block Guide
18 The Dragon12 LCD Display -- / -- / 7 Hantronix HD16216L-S Data Sheet
19 Motor Control -- / 13 / 8
20 Introduction to Serial Communications/Synchronous Serial Communications -- / 18 / 9,11 HCS12 Inter-Integrated Circuit (IIC) Block Guide
Review for Exam 2
21 Asynchronous Serial Communications -- / -- / 11 HCS12 Serial Communications Interface Block Guide

Homework
Homework 1 (Due - 1/30/17)
Homework 2 (Due - 2/13/17)
Homework 3 (Due - 3/6/17)
Homework 4 (Due - 3/22/17)
Homework 5 (Due - 4/7/17)
Last Modified: March 2017