Introduction: Arduino Digital Tube Display Experiment

About: Email: louise@elecfreaks.com

In our latest blog "Start&End Kit: LED Drive Principle " we have learned LED drive principle about digital tube, today we are going to do an interesting experiment about Arduino digital tube with knowledge we learned in previous chapter.

Note:

For more funny creation, you can pay attention to : http://www.elecfreaks.com/
Our product store: http://www.elecfreaks.com/estore/

Step 1: Material

To start our experiment, we have to gather some tools and materials. I have made a list for you.

Breadboard

Jumper Wire

Arduino UNO

Mini USB Cable

4-bit, 7-segment Common Cathode Digital Tube X1

430Ω Upright Resistance X4 (390Ω~1KΩ are ok too)

Several Jumper Cable for Experiment

After we gathered these tools and materials, we can move on to our experiment. You can follow the procedure and move your hands with me.

Step 2: ​Procedure

Step 1: Pick up material we need for experiment, see picture above.

Step 3: Procedure

Step 2: Hardware Connection

We have to connect digital tube to Arduino UNO board by jumper wire.

Footer a: connect to Arduino UNO D0;

Footer b: connect to Arduino UNO D1;

Footer c: connect to Arduino UNO D2;

Footer d: connect to Arduino UNO D3;

Footer e: connect to Arduino UNO D4;

Footer f: connect to Arduino UNO D5;

Footer g: connect to Arduino UNO D6;

Footer dp: connect to Arduino UNO D7;

Note: Footers are pins on digital tube.

Step 4: Procedure

4 common port connection on digital tube: (A resistance is needed between 4 common ports and Arduino UNO to limit current.So we use upright resistance we prepared before.)

Footer 1: connect to Arduino UNO D8; Footer 2: connect to Arduino UNO D9; Footer 3: connect to Arduino UNO D10; Footer 4: connect to Arduino UNO D11; Note: Footers are pins on digital tube.

Step 5: Procedure

If you are still not very clear, you can refer to picture below. I made this picture for easier understanding.

Now, have you finished connection? If you completed, you can enter into next step and make a program.

Step 6: Procedure

Step 3: Edit Program

Open Arduino IDE interface, copy and paste the code below into editor area.

[cc_cpp]<br>int a[][8] =
{
  {0, 1, 1, 0, 0, 0, 0, 0}, //1
  {1, 1, 0, 1, 1, 0, 1, 0}, //2
  {1, 1, 1, 1, 0, 0, 1, 0}, //3
  {0, 1, 1, 0, 0, 1, 1, 0}, //4
  {1, 0, 1, 1, 0, 1, 1, 0}, //5
  {1, 0, 1, 1, 1, 1, 1, 0}, //6
  {1, 1, 1, 0, 0, 0, 0, 0}, //7
  {1, 1, 1, 1, 1, 1, 1, 0}, //8
  {1, 1, 1, 1, 0, 1, 1, 0}, //9
  {1, 1, 1, 1, 1, 1, 0, 0}, //0
  {0, 0, 0, 0, 0, 0, 0, 1}, //.
};


void setup() {
  // put your setup code here, to run once:
  for (int i = 0; i < 12; i++) {
    pinMode(i, OUTPUT);
  }
}


void loop() {
  // put your main code here, to run repeatedly:
  for (int wei = 8; wei < 12; wei++)
  {
    digitalWrite(wei, HIGH);
  }
  int dwei = 8;
  int shi = 600;
  int m = 0;
  while (1)
  {


    for (int k = 0; k < 4; k++)
    {
      int pin = 0;
      dwei = k + 8;
      digitalWrite(dwei, LOW);


      for (int s = 0; s < 8; s++)
      {
        digitalWrite(pin, a[k][s]);
        pin++;
      }
      delay(shi);


      digitalWrite(dwei, HIGH);
      pin = 0;
      for (int s = 0; s < 8; s++)
      {
        digitalWrite(pin, LOW);
        pin++;
      }
      if (shi < 210)
        shi = shi - 5;
      else
        shi = shi - 50;
      if (shi < 6)
      {
        shi = 1; m++;
        if (m == 1000)
        {
          m = 0;
          shi = 600;
        }
      }
    }
  }
}
[/cc_cpp]

Step 7: Procedure

Step 4: Operate Program

Connect Arduino UNO board to computer with a USB cable, and download code, then you will see the picture below.

Step 8: Succeed

Now can you do this experiment by yourself? Isn’t it very simple and easy?

Just move your hands and have a try!

Note:
For more funny creation, you can pay attention to : http://www.elecfreaks.com/

Our product store: http://www.elecfreaks.com/estore/