You are on page 1of 4

/*This software is provided in an “AS IS” condition,NO WARRANTIES in any form apply to this

software.
picmicrolab.com 9.27.2017
*******************************************************************************
********************************
7-Segment Display Counter with Arduino

*/

int Segment_a = 2;
int Segment_b = 3;
int Segment_c = 4;
int Segment_d = 5;
int Segment_e = 6;
int Segment_f = 7;
int Segment_g = 8;
int UP_Down = 9;//0-UP 1 - DOWN
int count = 0; //Count Value

// the setup function runs once when you press reset or power the board
void setup() {
// initialize 7-Segment I/O as output.
pinMode(Segment_a, OUTPUT); //Segment_a
pinMode(Segment_b, OUTPUT); //Segment_b
pinMode(Segment_c, OUTPUT); //Segment_c
pinMode(Segment_d, OUTPUT); //Segment_d
pinMode(Segment_e, OUTPUT); //Segment_e
pinMode(Segment_f, OUTPUT); //Segment_f
pinMode(Segment_g, OUTPUT); //Segment_g
pinMode(UP_Down, INPUT); //UP/DOWN COUNT

void loop()
{

if(digitalRead(UP_Down)== LOW)
{

Display7SegmentDigit(count);
count++;
delay(1000);
if(count == 10)
count = 0;
}

if(digitalRead(UP_Down)== HIGH)
{

Display7SegmentDigit(count);
count--;
delay(1000);
if(count == 0)
{
Display7SegmentDigit(0);
count = 10;
}

void Display7SegmentDigit(int digit)


{
if(digit == 0)
{
digitalWrite(Segment_a, HIGH); // Show digit 0 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, HIGH);
digitalWrite(Segment_f, HIGH);
digitalWrite(Segment_g, LOW);
}
if(digit == 1)
{
digitalWrite(Segment_a, LOW); // Show digit 1 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, LOW);
digitalWrite(Segment_e, LOW);
digitalWrite(Segment_f, LOW);
digitalWrite(Segment_g, LOW);
}
if(digit == 2)
{
digitalWrite(Segment_a, HIGH); // Show digit 2 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, LOW);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, HIGH);
digitalWrite(Segment_f, LOW);
digitalWrite(Segment_g, HIGH);
}
if(digit == 3)
{
digitalWrite(Segment_a, HIGH); // Show digit 3 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, LOW);
digitalWrite(Segment_f, LOW);
digitalWrite(Segment_g, HIGH);
}
if(digit == 4)
{
digitalWrite(Segment_a, LOW); // Show digit 4 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, LOW);
digitalWrite(Segment_e, LOW);
digitalWrite(Segment_f, HIGH);
digitalWrite(Segment_g, HIGH);
}
if(digit == 5)
{
digitalWrite(Segment_a, HIGH); // Show digit 5 on 7 - Segment
digitalWrite(Segment_b, LOW);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, LOW);
digitalWrite(Segment_f, HIGH);
digitalWrite(Segment_g, HIGH);
}
if(digit == 6)
{
digitalWrite(Segment_a, HIGH); // Show digit 6 on 7 - Segment
digitalWrite(Segment_b, LOW);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, HIGH);
digitalWrite(Segment_f, HIGH);
digitalWrite(Segment_g, HIGH);
}
if(digit == 7)
{
digitalWrite(Segment_a, HIGH); // Show digit 7 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, LOW);
digitalWrite(Segment_e, LOW);
digitalWrite(Segment_f, LOW);
digitalWrite(Segment_g, LOW);
}
if(digit == 8)
{
digitalWrite(Segment_a, HIGH); // Show digit 8 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, HIGH);
digitalWrite(Segment_f, HIGH);
digitalWrite(Segment_g, HIGH);
}
if(digit == 9)
{
digitalWrite(Segment_a, HIGH); // Show digit 9 on 7 - Segment
digitalWrite(Segment_b, HIGH);
digitalWrite(Segment_c, HIGH);
digitalWrite(Segment_d, HIGH);
digitalWrite(Segment_e, LOW);
digitalWrite(Segment_f, HIGH);
digitalWrite(Segment_g, HIGH);
}
}

You might also like