ECE 5780 – Embedded Systems Design – Labs


Digital Lab Equipment Documentation and Tutorials

Project: Microcontroller Design

Students will design simple systems using a Motorola HC(S)12 microcontroller and peripheral hardware. Labs include designing a keypad interface, a thread scheduler, a simple serial network, pulse generator, and a DC motor controller that utilizes a 4-bit DAC.

ECE 5780 Course Website

This course starts with identification and control of DC motors on a prototyping platform. Then the control of stepper and induction motor is presented. Finally the class is completed with a student project for controlling a Brushless DC motor. This course has cross-over with the embedded system courses by providing a platform similar to embedded motor lab.

Lab 1 – The CSM12C32 Module and PBMCUSLK Project Board

Objectives

  • Gain familiarity with lab tools and development board prototyping
  • Learn procedures for assembling and downloading programs to the CSM12C32 module using Code-Warrior
  • Learn how to interface with the CSM12C32 module standalone and with the PBMCUSLK project board

Lab Documents


Lab 2 – CodeWarrior

Objectives

  • Learn how to use the CodeWarrior simulator for the MC9S12C32 derivative
  • Gain experience using the CodeWarrior debugger
  • Complete LCD output code that will be useful in future labs

Lab Documents


Lab 3 – FSM for a Security Code Access System

Objectives

  • Use the parallel I/O functions of the CSM12C32
  • Learn about usage of FSM abstraction in C
  • Design a FSM for a security code access system

Lab Documents


Lab 4 – Gadfly Keypad Interface

Objectives

  • Design the hardware interface between a keypad and microcomputer
  • Create the low-level gadfly device driver that can be used in other applications
  • Design the hardware interface between a microcomputer and LEDs
  • Implement keypad security system

Lab Documents


Lab 5 – Keypad Interface Using Interrupts

Objectives

  • Redesign the hardware and software interface between a keypad and a microcomputer using interrupts

Lab Documents


Lab 6 – Threads

Objectives

  • To gain experience with preemptive schedulers and semaphores

Lab Documents


Lab 7 – Frequency Measurement

Objectives

  • To gain experience using input capture and output compare to measure an input signal’s frequency

Lab Documents


Lab 8 – SCI Serial Network Interface

Objectives

  • Design a low-level communication interface between two or more microcomputers
  • Analyze the synchronization problems that occur when two computers are interfaced
  • Investigate low-level methods for error detection
  • Implement half-duplex serial communication

Lab Documents


Lab 9 – Stepper Motors

Objectives

  • Gain experience with stepper motor control
  • Demonstrate a practical application of the 6812 timer system

Lab Documents


Lab 10 – Analog Interfacing

Objectives

  • Demonstrate a simple digital-to-analog converter
  • Gain experience with power transistors and op amps in reversed-input configuration
  • Understand a simple circuit that will use a high-impedance voltage output to control a 12V DC motor
  • Demonstrate analog control of a DC motor using the 6812 and an R-2R resistor ladder
  • Demonstrate that you can control (relatively) high voltage circuits without totally destroying sensitive digital circuits
  • Use the 6812 A/D converter system to capture arbitrary waveforms

Lab Documents