ECE471: Embedded Systems

University of Maine ECE

Fall 2020

Instructor: Vincent Weaver
Due to the unusual circumstances this year, much of this is subject to change.

The class meeting time is Monday/Wednesday/Friday at 10:00am-10:50am.
The meeting place is Barrows 228. Lectures will also be recorded/streamed.




Office hours:

Notes on Required Hardware

Required Raspberry Pi Hardware

Syllabus

ece471_2020f.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

Key:
Cohort 1 Cohort 2 Day with No in-person class


MondayWednesdayFriday
Week 1 31 August
Introduction to Embedded Systems
Lecture 1 notes
2 September
Embedded Hardware, 8 vs 32-bit
Lecture 2 notes
4 September
Embedded Tradeoffs, ARM History
Lecture 3 notes
Week 2 7 September
No classes, Labor day
9 September
Embedded Use of C
Lecture 4 notes
11 September
Running Linux on a Pi
Lecture 5 notes
Week 3 14 September
C Review, Linux History
Lecture 6 notes
16 September
Compiling Executables
Lecture 7 notes
18 September
ABIs and Assembly Overview
Lecture 8 notes
Week 4 21 September
ARM32 Overview, Code Density
Lecture 9 notes
23 September
THUMB2/AARCH64
Lecture 10 notes
25 September
Linux GPIO Interface
Lecture 11 notes
Week 5 28 September
Operating Systems
Lecture 12 notes
30 September
HW3 Review, More Operating Systems
Lecture 13 notes
2 October
i2c
Lecture 14 notes
Week 6 5 October
Firmware Lecture 15 notes
7 October
Booting
Lecture 16 notes
9 October
HW4 Review
Lecture 17 notes
Week 7 12 October
No Class, Indigenous Peoples Day
14 October
Midterm Review
Lecture 18 notes
16 October
Midterm Exam
Week 8 19 October
Real Time Systems
Lecture 19 notes
21 October
No class -- Engineering Career Fair
23 October
SPI Bus
Lecture 20 notes
Week 9 26 October
Real Time OS Issues
Lecture 21 notes
28 October
Real Time Linux
Lecture 22 notes
30 October
1-wire bus
Lecture 23 notes
Week 10 2 November
Computer Security
Lecture 24 notes
4 November
More Computer Security
Lecture 25 notes
6 November
Buggy Software
Lecture 26 notes
Week 11 9 November
Buggy Software Case Studies
Lecture 27 notes
11 November
Veterans' Day (No Lecture)
13 November
Writing Good Code
Lecture 28 notes
Week 12 16 November
Audio Output, SD Cards
Lecture 29 notes
18 November
HW8 and Midterm Review
Lecture 30 notes
20 November
Midterm #2
Week 13 23 November
Power Measurement
Lecture 31 notes
25 November
THANKSGIVING -- transition to online
27 November
THANKSGIVING
Week 14 30 November
Other busses
Lecture 32 notes
2 December
USB
Lecture 33 notes
4 December
Final Exam Review / Projects
Lecture 34 notes
Week 15 7 December
Project Presentations
9 December
Project Presentations
11 December
Project Presentations

Homework Assignments


Final Project


Lecture Videos

The lecture videos can be found here

Optional Useful Textbooks


ARM Assembly Language Links

Useful Links


Back to my homepage
Last updated 15 December 2020, 9:00