One of the most critical aspects of modern computer systems involves interfacing with the world. This course will focus on how power-efficient embedded systems are built. Students should learn the fundamentals of embedded system programming and feel competent to design, build, and manufacture their own embedded devices. Furthermore, students should understand how embedded systems interface with external peripheral devices. Finally, students should understand how application-specific blocks enable modern commercial devices.
Instructor – Caleb Kemere (caleb.kemere@rice.edu)
Location – AL124 (Lab and Lectures)
Time – Wednesdays 3:30–6 PM
Prerequisites – ELEC220
Syllabus & Lab Office Hours – here
Lectures: link to Dropbox folder for 2019
link to dropbox folder for 2018
Github repository - https://github.com/ckemere/ELEC327 (Note that this website is also hosted on github. If you’re interested in how it works, you can find it just at https://github.com/elec327.)
Useful links
Previous versions of the class
Labs | Description |
---|---|
Lab 1 | Morse Code with Timers |
Lab 2 | Timers and Soldering |
Lab 3 | PWM, LPM, and PCB Design |
Lab 4 | PCB Design, full stop |
Lab 5 | ADC, Software Architecture, Beginnings of the Thermodot Firmware |
Lab 6 | Soldering Redux and Finalizing Thermodot Firmware |
Lab 7 | Serial Communications (SPI + I2C) |
Lab 8 | Piezo buzzer and Simon PCB |
Lab 9 | Randomness |
Lab 10 | Deep Brain Stimulation Case Study |
Project 1 - Midterm | Midterm Project |
Project 2 - Final | Final Project |