A project created for ME-305 taught by Professor William R. Murray at California Polytechnic State University. The objective of the lab was to add input-output capability to the LED blinker that we developed in Lab 2. Building off of our Lab 2 code, we adjusted it so that a user can input to the keypad a decimal integer that represents the number of milliseconds in the blinking period for either LED pair 1 or LED pair 2. In order to enhance the user experience, the program had to be capable of detecting errors such as too large of a magnitude entered, 0 is an incorrect magnitude, and no digits entered. It also had to be able to handle backspaces appropriately, and display the period that the LED pairs are running at while they blink. We allocated 2 bytes of memory for the value of the keypad to be stored in. This means that the unsigned value could range from 0 to 65,535 and anything bigger than that would create an error. See the attatched PDF for the full background on the project as well as the setup of the finite state diagrams
Tanner_Sterba_Lab3_report (1).pdf
This project was completed alongside my lab parter Cole Sterba of Cal Poly.
If one were to set this up, they would need to copy the setup of the lab stands at Cal Poly, find one of the NXP CPU12 microcotnrollers, and then run the CodeWarrior file. The main idea of this repo is to share my process and the final result, I do not expect it to be replicated.