The Project
This project was developed for a university module focused on embedded systems. The objective was to design a functional payroll system, but with a major catch: it had to run entirely on memory-constrained hardware, specifically an Arduino Uno interacting with an LCD screen.
To make it work reliably within the tight memory limits, I wrote the software in C++ and structured the core logic around a Finite State Machine (FSM). I also had to design and implement custom serial communication protocols to handle data transfer efficiently without overwhelming the microcontroller's limited resources. It was a rigorous exercise in low-level programming and optimization.