#define DELAY 1000 // Задержка в миллисекундах между цифрами
const int dataPin = 2; /* DS */
const int clockPin = 3; /* SHCP */
const int latchPin = 4; /* STCP */
// byte one [10][8] = {
// {1,1,1,1,1,1,0,0}, //0
// {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,1}, //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,1}, //9.
// };
byte digits [10] = {
B11111100,//0
B01100000,//1
B11011010,//2
B11110010,//3
B01100110,//4
B10110110,//5
B10111111,//6.
B11100000,//7
B11111110,//8
B11110111//9.
};
void setup() {
for(byte pin = 2; pin < 5; pin ++ ) {
pinMode(pin, OUTPUT);
digitalWrite(pin, LOW);
}
}
void loop() {
for( byte digit =0; digit <=9; digit++)
{
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, LSBFIRST, digits[digit]);
digitalWrite(latchPin, HIGH);
delay(DELAY);
}
}