Real-Time Embedded Systems Lab
School of Computing, Informatics, and Decision Systems Engineering
Ira A. Fulton School of Engineering, Arizona State University
Home Contact us Site Map
Faculty People


CSE 325 Embedded Microprocessor System Design

The course will place its emphasis to software/hardware integration and I/O programming. It will incorporate the state-of-the-art SOC platforms and the emerging embedded system development tools. We will gear to the integration of hardware modules to construct embedded systems, and the programming models and characteristics of various input/out interfaces. Either assembly language or any high-level languages will be chosen to meet computation, resource, and software development requirements.

 Learning Objectives:

  • Demonstrate an ability to analyze microprocessor-based embedded systems, memory components, and bus connection.

     Demonstrate design skills for modular application and system software in microprocessor-based embedded systems.

      Apply software development tools to efficiently implement and debug programs running in microprocessor systems.

      Demonstrate an ability to analyze I/O interface units and to design software for managing I/O operations.


Assembly language, microprocessor organization, and experience of C programming language

 Major topics:

         Introduction and review of instruction set and assembly language programming (3 lectures) (Slides_1)

         Coldfire processor (3 lecture) (Slides_2)

         Interfacing between C and assembly languages (2 lectures) (Slides_3)

         Exception (1 lecture) (Slide_4)

         GPIO and IO multiplexing (2 lectures) (Slides_5)

         Timers and counters (2 lectures) (Slides_6)

         Interrupt and exception (2 lectures) (Slides_7)

         Serial communication: UART (Slides_8), SPI, and I2C (0)des_9n (1 lecture) Slide_4n uSlides_9) (5 lectures)

         ADC (3 lectures) (Slides_10)

         Flash Memory (3 lectures) (Slides_11)

         Memory devices, SRAM, DRAM, and SDRAM controller  (4 lectures) (Slides_12)

 Development platform and projects:

         Freescales Project Board Student Learning Kit with Coldfire 5211 processor board

         Introduction projects on understanding the programming environment on Coldfire simulator and target development board.

         Lab assignments on I/O programming.

         CodeWarrior integrated development environment.



 Reference Manuals and Books:

         CFPRM, ColdFire Family Programmer's Reference Manual.

         MCF5213UM, ColdFire 5213 Family Programmer's Reference Manual.

         COLDFIREUG, CodeWarrior Development Studio for ColdFire Architectures v5.0 Targeting Manual.

         Additional manuals and data sheets


  1. Assignment 1 Board Configuration, Compiling, Debugging, and Executable Files (pdf)

  2. Assignment 2 Program Load and Link, Startup Code, and Memory Allocation (pdf)

  3. Assignment 3 PWM, Cooling Fan Control and Pulse Measurement (pdf)

  4. Assignment 4 SPI Bus and Dot Matrix Display (pdf)

  5. Assignment 5 ISR-driven Serial Communication Using UART (pdf)

  6. Assignment 6 I2C Interface with Wii Nunchuck (pdf)


Our Research
Our Goal
We do research on  Real-time Java, Embedded Software and Systems, Smart homes, and so on...
To build reliable real-time embedded system, contribute computer engineering community and make our future better.

 Copyright [2011] [RTES, School of Computing, Informatics, and Decision Systems Engineering. Arizona State University]. All rights reserved