For Embedded Systems this Spring, Alex and I completed 5 labs and a final project, written in both C and Assembly.

For completing the labs, we programmed an ATiny45 and an ATMega88 in Atmel studio. We used digital I/O, timers, interrupts, handled complex timing issues, rotary pulse generators, and PWM generators all using assembly language.

Final Project • PosterGitHub

For our final project, we used what we learned about serial interface protocols to create a program for morse code communication. Characters were interpreted with a sampling timer and sent to another device over bluetooth running the exact same program.

Interpreting a character and sending it over Bluetooth

Creating a single program to be run on both of the devices was a good challenge, Alex and I were pleased with the results, and we finished with an A in the course.