CE2800 -- Embedded Systems Software I

This course presents assembly language programming as the bridge between hardware and high-level programming languages. Topics covered include the addressing modes, register file, and instruction set of a microcontroller; subsystems such as timers and analog to digital conversion; and interrupts. Software control of hardware is stressed. In the laboratory, students design software to demonstrate proficiency in these areas. (prereq: CE-1900 and SE-1010) (3-3-4)


On successful completion of this course, the student will:

The above course description and goals were taken from the official course description.

General Course Policies

Please review the general course policies webpage.


ATmega32 Development Board purchased through the MSOE Technical Support Center.


Quizzes will be given nearly every week at the beginning of lab. The lowest quiz score will be dropped. No make-up quizzes will be given.


Unless stated otherwise, all laboratory assignments will be completed individually. All Lab assignments are worth 100 points per week (i.e., a two week lab assignment is worth 200 points).

My Schedule


Lab projects: 35%
Quizzes: 20%
Exam I and II: 25%
Final exam: 20%
Total: 100%