- My final project for EEET2481 - Embedded System Design and Implementation
- Whac-A-Mole style game with a mix of my favorite meme - BONK!
- Implemented for Nuvoton Nu-LB-NUC140 development board
- Try to hit Cheem the dog by pressing the corresponding keys on the keypad
- You get 5 lives, bonk the Cheems or you get BONKED!
- Watch out! The Cheems will appear faster over time 😱
Welcome screen:
Tutorial:
Game play:
Gameover:
Watch on Youtube:
- Navigate to
src
folder - Open the
Bonk.uvprojx
project in Keil uVision 5. It should look something like this:
- Build the project and upload it to your board
Tool for converting between images and byte arrays: https://javl.github.io/image2cpp/. Configure as below to display properly on LCD:
- Background color: Black
- Invert image colors: Yes
- Adjust brightness / alpha threshold to expectation
- Scaling: scale or stretch to fill canvas
- Center everything
- Code output format: plain bytes
- Draw mode: Vertical - 1 bit per pixel (since this LCD uses vertical scan)
- Generate code and benefit!
Also I'd like to send my thanks to my teammates Thuận, Trung, Triều for helping with this project. Fun story, this project was done during the heat of Corona pandemic in Ho Chi Minh city, where I didn't get to touch the board until the very last days. I paired up with 2 other guys who had the board, where I wrote the program and send it over to them to check pixel by pixel. Jeez it was a pain 😂. After nights of pair-programming in irritation, they finally managed to get the board deliver to me to fully work on the game. Finaly the product got shipped just an hour before the deadline =))
If you find this project useful, you can let me know. I would love to hear about it!