const int segmentPins [7] = {2 , 3 , 4 , 5 , 6 , 7 , 8};
const int digitPins [4] = {9 , 10 , 11 , 12};
const byte digits [10][7] = {
{1 ,1 ,1 ,1 ,1 ,1 ,0} ,
{0 ,1 ,1 ,0 ,0 ,0 ,0} ,
{1 ,1 ,0 ,1 ,1 ,0 ,1} ,
{1 ,1 ,1 ,1 ,0 ,0 ,1} ,
{0 ,1 ,1 ,0 ,0 ,1 ,1} ,
{1 ,0 ,1 ,1 ,0 ,1 ,1} ,
{1 ,0 ,1 ,1 ,1 ,1 ,1} ,
{1 ,1 ,1 ,0 ,0 ,0 ,0} ,
{1 ,1 ,1 ,1 ,1 ,1 ,1} ,
{1 ,1 ,1 ,1 ,0 ,1 ,1}
};
const byte pinCode [4] = {3 , 1 , 4 , 2};
void setup () {
for (int i = 0; i < 7; i ++) {
pinMode ( segmentPins [ i ] , OUTPUT ) ;
}
for (int i = 0; i < 4; i ++) {
pinMode ( digitPins [ i ] , OUTPUT ) ;
}
}
void loop () {
for (int i = 0; i < 4; i ++) {
for (int d = 0; d < 4; d ++) {
digitalWrite ( digitPins [ d ] , HIGH ) ;
}
for (int s = 0; s < 7; s ++) {
digitalWrite ( segmentPins [ s ] , digits [ pinCode [ i ]][ s ]) ;
}
digitalWrite ( digitPins [ i ] , LOW ) ;
delay (5) ;
}
}