// This example is using 7 Segment common anode
// FOR COMMON CATHODE (DP OFF):
//unsigned char digit[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
// FOR COMMON ANODE (DP OFF):
unsigned char digit[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
// FOR COMMON ANODE (DP ON):
// unsigned char digit[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};
int cnt = 0;
void setup() {
DDRB |= B00001111; // Pin D8, D9, D10, D11 as output
DDRD = 0xFF; // PORTD (pin D0..D7) all as output
// PORTD = 0X0; // Pin D0..D7 = LOW
PORTD = 0xFF;
// PORTB |= B001111; // activate pin D8 (digit 1) = LOW (aktif low)
// PORTD = digit[9]; // show digit 9
// delay(1000);
PORTB = B000001;
}
void loop() {
PORTD = digit[cnt%10] ;
cnt++;
if (cnt%10 == 1){
PORTB |= PORTB<<1;
}
if (cnt==10000){
cnt=0;
PORTB = 1;
}
delay(500);
}