ECE 372A

Microprocessor Organization
Fall and spring
Catalog Data: 

ECE 372A - Microprocessor Organization (4 units)

Description: Introduction to microcontroller organization, hardware interfacing, and system design. Topics include, but are not limited to, C programming for microcontrollers, memory organization and addressing modes, interrupts, timers, parallel and serial interfacing, analog-to-digital conversion, overview of common peripheral components, event-driven software development, and motor control. In addition to lectures, students will have hands-on lab assignments building and using the PIC24F platform. Students will also propose, design, implement and present a course project, subject to approval by the instructor.

Grading:  Regular grades are awarded for this course: A B C D E

Course Fee:  $100

ECE 207 or ECE 220; ECE 274A and ECE 275 (concurrent enrollment in ECE 275 ok)

No textbook required

Course Learning Outcomes: 

By the end of this course, the student will be able to:

  1. Explain the basics of an embedded computer system
  2. Write and debug C programs for a microcontroller
  3. Understand memory and memory-mapped addresses in embedded systems
  4. Interface with hardware components using a microcontroller
  5. Understand timing and interrupts in embedded systems
  6. Have knowledge of common hardware communication protocols
Course Topics: 
  • Introduction to embedded systems
  • Writing basic programs to control an embedded system
  • Basic hardware interfacing with IO ports
  • Timers, interrupts, and hardware resets
  • Analog-to-digital and digital-to-analog conversion
  • Interfacing with LCDs
  • Pulse width modulation and controlling a DC motor
  • Hardware communication protocols: UART, I2C, SPI
  • Memory organization
Class/Laboratory Schedule: 

Two 75-minute lectures per week
One 170-minute lab

Relationship to Student Outcomes: 

ECE 372A contributes directly to the following specific electrical and computer engineering student outcomes of the ECE department:

  • Ability to apply knowledge of mathematics, science and engineering (high)
  • Ability to design and conduct experiments, as well as to analyze and interpret data (medium)
  • Ability to design a system, component or process to meet desired needs within realistic constraints, such as economic, environmental, social, political, ethical, health and safety, manufacturability and sustainability (medium)
  • Ability to function on multidisciplinary teams (low)
  • Ability to identify, formulate and solve engineering problems (medium)
  • Ability to communicate effectively (medium)
  • Recognition of the need for, and an ability to engage in, life-long learning (medium)
Prepared by: 
Garret Vanhoy
Prepared Date: 

University of Arizona College of Engineering