In EECS 373 "Design of Microprocessor-based Systems", you will:
- learn how the hardware and software components of a microprocessor-based system work together to implement system-level features;
- learn both hardware and software aspects of integrating digital devices (such as memory and I/O interfaces) into microprocessor-based systems;
- learn the operating principles of, and gain hands-on experience with, common microprocessor peripherals such as UARTs, timers, and analog-to-digital and digital-to-analog converters;
- get practical experience in applied digital logic design and assembly-language programming; and
- be exposed to the tools and techniques used by practicing engineers to design, implement, and debug microprocessor-based systems.
You must have taken EECS 270 and EECS 280 to take this course. I will assume you are familiar with (on the hardware side) boolean algebra, gates, multiplexors, flip-flops, and finite-state machines, and (on the software side) program control structures (if/then/else, while and for loops), functions/procedures, parameter passing, and basic structured programming techniques (information hiding, modular programming, etc.).
Professor Steve Reinhardt (stever@eecs.umich.edu), 2223 EECS, 647-7959
Office hours: Tue, Thu 2:30-3:30 or by appointment (send email)
2332/2334 EECS, 936-0392
Lab grade breakdown:
Item Weight Prelab 30% Demonstration 40% Lab report 30% Overall breakdown:
Item Weight (each) Total Labs (approx. 8) approx. 5% 40% Midterm exams (2) 17.5% 35% Final exam 25% 25% In spite of this breakdown, you will not earn a C in this course unless you have a C average on the labs and on the exams independently.