Aiman H. El-Maleh
Office: Building 22, Room
405-7, Phone: 2811
Embedded Systems, Embedded system design
Microcontroller Hardware, ARM Processor, Memory and I/O, Interfacing:
Parallel and Serial Communication, Pulse Width Modulation, A/D and D/A
conversion, Designing robust software for embedded systems, RTOS
and COE 203.
Marilyn Wolf, “Computers as Components: Principles of Embedded Computing
System Design”, Third Edition, Morgan Kaufmann, 2012.
The objectives of
this course are to introduce students to embedded systems
characteristics, microcontrollers functionality, writing embedded
software to interface with I/O devices using various standards.
Course Learning Outcomes
After completing the course, students should be able to:
Understand the embedded system design process and some of the
related UML models.
Understand the interrupt mechanism, and develop interrupt-driven C
Understand memory systems: cache mapping, virtual memory, and
Understand various system bus designs and protocols, and peripheral
Understand and use common peripheral interfaces in embedded systems,
such as analog-to-digital (ADC), digital-to-analog (DAC),
pulse-width modulation (PWM), and various serial communication
protocols, e.g. SPI, I2C, UART.
Implement and use various common software components of embedded
Understand context switching and scheduling of periodic processes in
real-time operating systems.
Analyze performance at the CPU, platform, and program levels levels.
Develop ARM-based bare-metal embedded software in C.