ECE471: Embedded Systems

University of Maine ECE

Fall 2023

Instructor: Vincent Weaver
The class meeting time is Monday/Wednesday/Friday at 1:00pm-1:50pm.
The meeting place is Barrows 131.

The final exam is scheduled for: Monday 11 December 2023, 9:30am-11:30am, Barrows 131
Office hours:

Notes on Required Hardware

Required Raspberry Pi Hardware

Syllabus

ece471_2023f.pdf

Course Listing

Application of micro-processors to the solution of design problems, including hardware characteristics, peripheral control techniques and system development. Lec 3. (Fall.)

What We'll Do this Semester

We will investigate modern embedded systems, with a focus on ARM processors.

Class Schedule

MondayWednesdayFriday
Week 1 28 August
Introduction to Embedded Systems
Lecture 1 Notes
30 August
Embedded Hardware, 8 vs 32-bit
Lecture 2 Notes
1 September
Embedded Tradeoffs, ARM History
Lecture 3 Notes
Week 2 4 September
No class, Labor day
6 September
Single Board Computers, Raspberry Pi
Lecture 4 Notes
8 September
C, Running Linux on a Pi
Lecture 5 Notes
Week 3 11 September
Pi Setup, Linux Commandline Demo
Lecture 6 Notes
13 September
C Pitfalls
Lecture 7 Notes
15 September
Compiling, ABIs and Assembly Overview
Lecture 8 Notes
Week 4 18 September
ARM32 assembly Overview
Lecture 9 Notes
Lecture 9 sample code
20 September
THUMB/Thumb2/AARCH64, Code Density
Lecture 10 Notes
22 September
Linux GPIO Interface
Lecture 11 Notes
Week 5 25 September
ELF Executables, Virtual Memory
Lecture 12 Notes
27 September
HW3 Review, Operating Systems
Lecture 13 Notes
29 September
i2c
Lecture 14 Notes
Week 6 2 October
Booting, Device Detection
Lecture 15 Notes
4 October
HW4 Review, Real Time, Jitter
Lecture 16 Notes
6 October
Real Time: Latency, 8-bit example
Lecture 17 Notes
Week 7 9 October
No Class, Fall Break
11 October
Midterm Review, Real Time OS
Lecture 18 Notes
13 October
Midterm Exam
Week 8 16 October
Sceduling, Real Time Linux
Lecture 19 Notes
18 October
No class -- Engineering Career Fair
20 October
SPI Bus
Lecture 20 Notes
Week 9 23 October
Real Time Wrapup
Lecture 21 Notes
25 October
Secure Firmware
Lecture 22 Notes
27 October
1-wire Bus
Lecture 23 Notes
Week 10 30 October
C I/O and String Manipulation
Lecture 24 Notes
1 November
Computer Security
Lecture 25 Notes
3 November
More Computer Security
Lecture 26 Notes
Week 11 6 November
Buggy Software Case Studies
Lecture 27 Notes
8 November
Writing Good Code, Homework Review
Lecture 28 Notes
10 November
No class, Veterans' Day
Week 12 13 November
Homework Review / Pi-related Project Topics
Lecture 29 Notes
15 November
Midterm Review / Ethics
Lecture 30 Notes
17 November
Midterm #2
Week 13 20 November
Energy / Power Measurement
Lecture 31 Notes
22 November
THANKSGIVING
24 November
THANKSGIVING
Week 14 27 November
More Embedded Busses
Lecture 32 Notes
29 November
Final Exam Review / Project Example / USB
Lecture 33 Notes
1 December
Project Presentations
Week 15 4 December
Project Presentations
6 December
Project Presentations
8 December
Project Presentations

Homework Assignments


Final Project


Old Lecture Videos

Old lecture videos from 2020 can be found here let me know if you need the password.

Optional Useful Textbooks


ARM Assembly Language Links

Useful Links


Back to my homepage
Last updated 5 December 2023, 11:00