Skip to main content
CPE
364
Introduction to Embedded Systems Laboratory
This lab component provides sufficient detailed knowledge and hands-on experience of a microcontroller so that students can breadboard and program a microcontroller and demonstrate its function in a real-time application. It is accomplished by a sequence of assigned labs, followed by a final project of the student\'s choice, emphasizing creativity and uniqueness.
Corequisites:
0612363
0612364
(0-3-1)

Credits and Contact Hours

1 credit, 30 hours

Course Coordinator's Name Dr. Abbas Fairouz

Textbook

Laboratory notes and manual for STM32 ARM CORTEX-M microcontroller kit

Catalog Description

This lab component provides sufficient detailed knowledge and hands-on experience of a microcontroller so that students can program a microcontroller and demonstrate its function in a real-time application. It is accomplished by a sequence of assigned labs, followed by a final project of the student\'s choice, emphasizing creativity and uniqueness.

Co-requisite

CpE-363

Specific Goals for the Course

Upon completion of this course, students will be able to:

Become familiar with the lab equipment, STM32 ARM CORTEX-M microcontroller kit, and software development tools. (Student outcomes: 2)

Conduct experiment by writing, debugging and tracing programs in ARM assembly language. (Student outcomes: 6)

Conduct experiment by writing an interrupt service routine in assembly language. (Student outcomes: 2, 6)

Conduct experiments by interfacing a microcontroller with various I/O devices (keypad, LCD). (Student outcomes: 6)

Conduct experiments using UART/Bluetooth communication channels. (Student outcomes: 6)

Conduct experiment by programming and configuring the timers interrupts on ARM microcontroller kit. (Student outcomes: 2, 6)

Behave professionally and ethically in a laboratory environment.

Build a mini-project using the microcontroller with other devices and document their work in a technical report. (Student outcomes: 2, 3)

Topics to Be Covered

C Programming for Embedded Systems

ARM Assembly Programming (Part 1)

ARM Assembly Programming (Part 2)

Programming by using input/output ports (GPIO)

Interfacing the keypad and LCD with the microcontroller

Building interrupts subroutines

Serial communications (UART, Bluetooth)

General purpose timer programming

Applications on embedded systems