This stage displays the minutes on 60 LEDs arranged as a bar graph.
74HC164 serial-in, parallel-out shift registers are used. The shift register looks at it's inputs, and at every clock input, shifts all of the current values one over, looks at the current value of the input, and adds that value to the bottom of the pile. For this application, we start the hour with all low values, and every minute add one high value to the pile. So the input to the first 74HC164 is always high (the 74HC164 has two input pins [1 and 2] which are OR'd together, so we need both to be high). The 1 pulse per minute is applied to the clock pin, pin 8.
When the clock is turned on, all values in the shift register are low, so all the LEDs are turned off. After one minute the clock pin changes from low to high. The 74HC164 reads the input pins as high, so changes the first output pin to high, and the first LED turns on. After one minute, the clock pin again changes from low to high, the 74HC164 moves the high value from the last minute to the second output, and again reads the input pins as high, making the first output high again. Now the first two LEDs are turned on.
The 74HC164 has only eight outputs. The 74HC164 can be "daisy chained" - the last output of the one can become the input of the next. By doing this eight times, there are enough total outputs to control 60 LEDs.
All of the clock pins of the 74HC164s are connected, so that they all change simultaneously.
After one hour, all of the LEDs need to be turned off again to start counting a new hour. This is done but resetting the 74HC164s. The reset pin is pin 9, and it is reset when the pin is low. We have a "signal" when the hour occurs, i.e. the 61st output of the chain of 74HC164s, but this is a high signal. A NAND gate in a 74HC00 is used to invert the signal. The NAND gate takes two inputs, and outputs high if either of the inputs are low. One of the inputs is permanently held high, the other is connected to the 61st output. During the first 60 minutes, the 61st output is low, so the NAND gate output is high, and the 74HC164s operate as normal. When the 61st output goes high, both NAND gate inputs are high, so the NAND gate output goes low. The output is connected to all of the reset pins of the 74HC164s, so when the NAND gate goes low, all of the 74HC164s reset, and the whole process starts again.
BOM for this stage:
- 8 x 74HC164
- 1 x 74HC00
- 9 x 14 pin IC socket
- 6 x 10 LED bar graph displays
- 6 x 20 pin IC sockets