Categories

Digit Shield overview

This shield uses a 4 digit, 7-segment display to give you the data you need. You can use it to make clocks, timers, show sensor data, or anything else you can dream up.

Here is a picture of the shield that I purchased, this version is slightly different than the original nootropic design version in that the resistors are surface mount types rather than the through hole ones. In this case the shield also did not come as a kit but was already assembled other than that its a basic copy, the reason for this is that the folks at nootropic made the shield open source and all design files are available. In theory you could create your own version, the only addition i would have is to perhaps using surface mount versions of the 2 IC’s used but that’s not a major improvement

Digit shield

Digit shield

If you would like to look at the schematics of the board I have put them on https://github.com/arduinolearning/Schematics-and-layouts/blob/master/digitshield_v1-0.pdf. I encourage you to look at the schematics to learn how this shield works, the main work is done by the 74Hc595 shift register and an IC that many may not have much knowledge of the 74LS247 BCD to seven-segment drive IC.

The IC does have some limitations in that it can only really display the numbers 0 to 9 and a few strange characters which can be made up using the segments, so you can display text of any description on this.

 

Features

The shield only uses 4 Arduino pins (2,3,4,5)
All through-hole parts for easy kit assembly , also comes in a pre-assembled form
Available in two display colors:  green or red-orange
On board reset button

There is a open source library to make it easier to use the shield, not that the shield is that difficult anyway. You can get the library from our github site at https://github.com/arduinolearning/Arduino-Libraries/blob/master/digitshieldlibrary.zip

 

Code

Here is the code adapted from the basic example which counts up to 1000 and displays this on the 7 segment displays

#include <DigitShield.h>
 
float counter = 0;
int d = 100;
 
 
void setup() 
{
  DigitShield.begin();
  DigitShield.setPrecision(0);
}
 
void loop() 
{
  DigitShield.setValue(counter);
  counter = counter + 1;
  delay(d);
  if (counter >= 9999) 
  {
    counter = 0;
  }
}

The page at http://nootropicdesign.com/digitshield/ explains the functions in the library in more detail with pictures

 

Links

The module comes in at under $9 a piece
Digit Shield 4 digit LED display module

Share

Comments are closed.