Making a pace clock (seconds continually increasing) from four shift registers

Thread Starter

Adam Uraynar

Joined Dec 21, 2015
67
The goal is to make a large pace clock with two digits for minutes and two digits for seconds.

I am using four tpic6c596 8-bit shift registers instead of using Sparkfun's large digit driver (the same chips, just on a PCB) from this Instructable: instructables.com/id/Large-7-Segment-LED-Pace-Clock

From the code, there are five pins that need to be connected to the four daisy chained shift registers:
// Arduino Nano - Pin I/O definitions
byte segmentClock = 9; // PWM
byte segmentData = 10;
byte segmentLatch = 11; // PWM​

For the Instructable, the Sparkfun shift registers are all daisy chained together with latch, clock and serial data (for IN and OUT). So there are three pins going in, and three pins chained to the next shift register.
upload_2019-3-1_21-23-32.png

The pinout for the stand-alone shift register (instead of the fancy Sparkfun board one) is below on the left:
upload_2019-3-1_21-13-53.png
Are all the RCK tied together for all four chips? Same with the SRCK (clock) leads?
Is the only pin that needs to be daisy chained the SER IN/OUT?

Starting from page 14 of the tpic6c596 datasheet, and on page 15 (Figure 14) it seems so.
It seems way too simple.

What about CLR and G: Are they supposed to be grounded or all tied together (among the shift registers)? Page 13 of the datasheet causes me to think that they're needed to clear the clock (or would it automatically shift from 99:99 to 00:00?

upload_2019-3-1_21-45-4.png
 

Attachments

Thread Starter

Adam Uraynar

Joined Dec 21, 2015
67
Sweet. Two-ish more questions.

Does the last "serial out" (bottom right) float too?
upload_2019-3-2_11-35-10.png

The LED strips appear to connect directly to the DC power supply.
upload_2019-3-2_11-39-11.png

Although, Sparkfun's large digit drivers have internal 15 Ω resistors: "The Large Digit Driver has 8 inline 15 Ohm resistors to limit the current through each segment on the 6" display to 20mA (as dictated by the display datasheet). You will need approximately 160mA of current at 12V for each digit in your display." - https://www.sparkfun.com/products/13279
upload_2019-3-2_11-42-0.png

Should I put 15 Ω resistors inline, like Figure 14 of the shift register datasheet shows--or are they not needed?
The Vsupply is 12 V.
I'll assume the LED strips forward voltage is 3.3 V.
I(Dx) or the LED setting current is 25 mA?

(12-3.3)/15 = 580 mA

...if that's right, doesn't that conflict with the maximum current?
upload_2019-3-2_11-59-49.png
 

Attachments

Last edited:

Jony130

Joined Feb 17, 2009
5,092
Does the last "serial out" (bottom right) float too?
Yes, this is normal practice that unused outputs are left floating. You only have to worry about the inputs.

The LED strips appear to connect directly to the DC power supply.
Yes, because this LED strips will have a current limiting resistor already mounted on the strip.
Schematic diagram of the strip

LED_STRIP.png



This is why no additional current limiting resistors are needed. But if you would like to limit the single strip brightness or power consumption than you can add these additional resistors. But the decision is up to you.
 
Last edited:

Thread Starter

Adam Uraynar

Joined Dec 21, 2015
67
Ok. Thanks again.

When I began soldering, I wondered why I had put a 0.1 uF bypass capacitor for each shift register because they all are connected to the same 5 V bus.

If I want to follow a good design, should I put four 0.1 uF in there?
 

Yaakov

Joined Jan 27, 2019
1,611
Ok. Thanks again.

When I began soldering, I wondered why I had put a 0.1 uF bypass capacitor for each shift register because they all are connected to the same 5 V bus.

If I want to follow a good design, should I put four 0.1 uF in there?
Bypass capacitors should always be as close to the device as practical.
 
Top