Seven-Segment Display

I have several projects in mind that could use a digital counter. Rather than buy a pre-packaged solution, I took what came with the Arduino kit I bought years ago and decided to learn how it works.

I intentionally took the more difficult path here, so I could learn how to daisy chain shift registers (data sheet here) and learned more than that by getting my hands dirty.

Here are two of the biggest issues I had working on this project. If you are also working on a seven-segment display and are experiencing these issues, I have included a synopsis of the solutions I learned beneath them.

1. Irregular Output

  • Make sure at least one pin is grounding and one pin is receiving positive voltage. If they are all receiving the same signal, there is no circuit.
  • Make sure the wires are connected in the proper sequence. Then check that the wires are sequenced properly again.
  • The shift registers receive code in packets. Make sure the signals in the packets are what you think. If they are in the reverse order of what is expected, the output will certainly not make sense.
  • Each shift register requires its own packet of data pin and clock pin bits and a byte of data to output. I learned all about decoupling capacitors before realizing this.

2. Nonuniform Brightness

  • Include a decoupling, or bypass, capacitor. I found a good explanation of their purpose here.
  • Ensure sufficient voltage (check your data sheet and circuit layout)
  • Make sure each display is turned on for an equal amount of time if you use two displays. Any timing difference caused by the calculations in-between transmissions will make one display appear brighter than the other.

I have written posts as I progressed through the project. See them here!

This project has a tutorial. Check it out!