I had some fun programming microcontrollers like the ATmega32 in the C language. One project I developed was an "OS" with a few programs for the LCD display, and a configurable ASCII wallpaper with movable widgets for data like time and temperature. It could be controlled with an old TV remote, which I reverse engineered from scratch to learn how the infrared data is transmitted and handle it appropriately.
I also worked with an ARM board with a touch screen display using a simple real time OS. It allowed me to develop a touch-enabled timetable application with live status information.
I'm excited to hear from you.