ECE 36200 Microprocessor Systems and Interfacing (25 Fall, 25 Spring)

Undergraduate Course, Purdue University Fort Wayne, Department of Electrical and Computer Engineering, 2025

The objective of this course is to become familiar with the architecture and the instruction set of an ARM microprocessor. Assembly language programming will be studied, as will the design of various types of digital and analog interfaces. The accompanying lab is designed to provide practical hands-on experience with microprocessor software applications and interfacing techniques.

Course Coverage

This course is divided into two main parts: assembly programming and interfacing. The board we currently use is the TM4C123/Tiva board by Texas Instruments. The general course schedule is listed below:

  • Course introduction
  • Fixed-point decimal number conversion and IEEE 754 floating-point conversion.
  • Introduction to TM4C123 (including processor structure, on-board resources, and related PCB design strategies).
  • Assembly programming: Addressing mode
  • Assembly programming: Arithmetic, Logic, and Shift operations
  • Assembly programming: Memory operations
  • Assembly programming: Branch operations, Subroutine assembly program design, and mixed Assembly/C programming
  • Interfacing: General Purpose Input Output (GPIO) structure and registers; SysTick timer; Interrupt.
  • Interfacing: Serial communication: UART communication; and brief introduction to I2C, SPI, One-wire protocol with additional application examples.
  • Interfacing: Data Conversion (ADC/DAC): ADC/DAC circuit structures, performance evaluation metrics; on-board ADC configurations; ADC/DAC embedded system applications.
  • Interfacing: Timer/PWM: Concept of Timer; Timer use cases; On-board timer configurations; Concept of PWM; on-board PWM configurations; PWM use cases.
  • Special Topics: Complex Instruction Set Computers; CMSIS Library; AHB/APB/AXI bus protocol; floating point instructions.

Reference books

This course sources the course materials from multiple books in providing comprehensive experience in both assembly programming and interfacing experience.