CPE 323 Introduction to Embedded Computer Systems

Course Description

Introduction to Embedded Computer Systems, CPE 323, is a junior class covering both software and hardware aspects of embedded computer systems.
Texas Instruments' MSP430 microcontroller is used as a teaching vehicle. The course covers the following topics: MSP430 instruction set architecture, MSP430 assembly language, programming and debugging microcontrollers using C/C++, executable files and software reverse engineering, principles of I/O interfacing, I/O peripherals, clocks, timers, watchdog timers, parallel ports, serial communication (UART, SPI, I2C), analog-to-digital and digital-to-analog converters, LCD display controllers, DMA controllers. The course is accompanied by Embedded Systems Laboratory (CPE 325).

Lecture Slides

 

  Topics Links
1 Introduction Slides (pdf)
2 Review: Data Types and Number Representations in Modern Computers Text (pdf)
3 MSP430 Instruction Set Architecture (ISA) Slides (pdf), Text (pdf)
4 MSP430 Assembly Language Slides (pdf), Text (pdf)
5 MS430 Assembly Language and C (C++) Slides (pdf), Text (pdf)
6 System View: Peripherals, I/O Interfacing Slides (pdf)
7 Interrupts Slides (pdf), Text (pdf)
8 Digital I/O (Parallel Ports) Slides (pdf)
9 Clocks, Time, Timers (Watchdog, Timer_A/Timer_B) Slides-CLKs (pdf),
Slides-Timers (pdf)
10 Serial Communication (UART, SPI, I2C) Slides (pdf), Text-UART (pdf)
11 Software Reverse Engineering Slides (pdf), Text (pdf)
12 Analog Signals, Analog-to-Digital and Digital-to-Analog Converters Slides (pdf), Text (pdf)
13 Direct Memory Access Controllers Slides (pdf)
14 LCD Displays Slides (pdf)
15 Stack Smashing (For Fun, No Profit): An Embedded Example Text (pdf)

 

Embedded Systems Laboratory

  Topics Tutorials
Lab 1 Introduction to Code Composer Studio Text (pdf)
Lab 2 C Data Types and Number Representation Text (pdf)
Lab 3 TI 430FG4618/2013 Experimenter's Board: LEDs and Switches Board Intro (pdf), Text (pdf)
Lab 4 Assembly Language Programming: Introduction Text (pdf)
Lab 5 Assembly Language Programming: Subroutines Text (pdf)
Lab 6 Interrupts and Clock Subsystem Text (pdf)
Lab 7 Timers Text (pdf)
Lab 8 UART Serial Communication Text (pdf)
Lab 9 Software Reverse Engineering Text (pdf)
Lab 10 Synchronous Serial Communication (SPI) / Bluetooth / DMA Text (pdf)
Lab 11 AD/DA Converters Text (pdf)
Lab 12 Final Project Text (pdf)

 

Note: Demo programs from the laboratory tutorials are publicly available at https://gitlab.com/lacasa/cpe325-lab-demos.

 

Important Links