ELEC 327 - Digital Systems Laboratory (2019)


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 Hourshere

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

  • 2013
  • 2014
  • 2017 - CAREFUL YOU DON’T GET STUCK!
  • 2018 - CAREFUL YOU DON’T GET STUCK!
LabsDescription
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