Skip navigation

ECE 36200 - Microprocessor Systems and Interfacing

Lecture Hours: 3 Lab Hours: 3 Credits: 4

Professional Attributes
Advanced EE Selective
CMPE Core
Upper Level Lab

Normally Offered: Each Fall, Spring

Requisites:
ECE 27000 Minimum Grade of C and (CS 15900 or ENGR 11700)

Requisites by Topic:
Prerequisites: High level language programming fundamentals, digital systems design fundamentals, familiarity with hardware description languages (e.g., ABEL) and programmable logic devices (PDSs).

Catalog Description:
An introduction to microcontroller instruction sets, assembly language programming, microcontroller interfacing, microcontroller peripherals, and embedded system design.

Supplementary Information:
Nature of Design Experience: Through the completion of homework exercises, laboratory experiments, and an Embedded System Design Mini-Project, students will learn how to design, implement, and test a microcontroller-based embedded system.

Required Text(s):
  1. Embedded Systems with ARM Cortex-M Microcontrollers in Assembly Language and C, 3rd Edition, Yifeng Zhu, E-Man Press LLC, 2017, ISBN No. 978-0-98226926-6-0.

Recommended Text(s): None.

Learning Objectives:

A student who successfully fulfills the course requirements will have demonstrated:
  1. an ability to program a microcontroller to perform various tasks. [e,k]
  2. an ability to interface a microcontroller to various devices. [a,b,c,e,k]
  3. an ability to effectively utilize microcontroller peripheral. [j,k]
  4. an ability to design and implement a microcontroller-based embedded system . [a,d,e,f,h,k]
Assessment Method for Learning Objectives: Outcome 1 will be assessed based on scores received for the lab practical programming problems, for which a score of at least 60% on either of the two practical exams will be required or a score of at least 60% on each lab experiment to demonstrate basic competency. For Outcomes 2 and 3, basic competency will be assessed based on lab practical concept exams during your scheduled lab period, for which a score of at least 60% will be required to demonstrate basic competency. Outcome 4 will be assessed based on the Embedded System Design Mini-Project completed, for which a score of at least 60% will be required to demonstrate basic competency.

Lecture Outline:

Week(s) Lecture Topics
3 Module 1: Microcontroller Programming. Introduction to microcontrollers, ARM architecture and programming model, assembly instructions, assembly programming, embedded C.
3 Module 2: Microcontroller Interfacing: General-purpose I/O, interrupts and exceptions, bus timing analysis, hardware abstraction layer.
4 Module 3: Microcontroller Peripherals. Timer module (TIM), analog-to-digital conversion (ADC), digital-to-analog conversion (DAC), pulse width modulation (PWM), asynchronous serial communication (UART), serial peripheral interface (SPI), inter-integrated circuit interface (I2C), IC-to-IC sound interface (I2C).
4 Module 4: Embedded System Design. Mini-Project overview, printed circuit board layout, external interfacing, discrete components, power supply design, soldering and assembly, IoT case study, reliability and safety, legal and regulatory requirements.
1 Mini-Project demos, Spark Challenge Design Showcase.

Lab Outline:

Week(s) Lab Experiments
0 Getting started lab introduction
1 "Hello World"
2 Assembly Programming
3 Embedded Hardware
4 Timing and Interrupts
5 Fundamentals of Embedded C
LP1 Midterm Lab Practical Exam
6 Analog-to-Digital Conversion
7 Pulse Width Modulation
8 Hardware Abstraction Layer
9 Asynchronous Serial Communication (UART)
10 Serial Peripheral Interface (SPI)
LP2 Final Lab Practical Exam
MP Mini-Project (two weeks)

Engineering Design Content:

Synthesis
Analysis
Construction
Testing

Engineering Design Consideration(s):

Economic
Ethical
Health/Safety