Lab 3: Keypad Scanner
Hours spent on lab: 45 Hours
Hours procrastinated: Hours :(
Overview
In this lab, expanding on our clock multiplexing knowledge from Lab 2, we controlled a two digit 7-segment-display via inputs of a keypad. This 4 x 4 keypad we use has 8 pins for each row and column connection. We display the most recent input on the right digit of the 7-segment-display. On subsequent inputs of the keypad, we should shift the value displayed from the right digit to the left digit of the 7-segment-display and simultaneously update the right digit with the new input of the keypad.
Hardware Setup
We have a very similar circuit as lab 2 where we used a PNP transistor to control which segment was powered to display two digits with limited pins avaliable. This is my breadboard:
Calculations
Methods
I broke up the required tasks into different Verilog modules. In the following block diagram you can see each of my modules and how they fit together.
The modules can be found here in my github.
Schematic
The schematic for the circuit includes the FPGA, Push Buttons, and the 7-segment display.