Köra multiplexed 7 segment display (3 / 4 steg)
Steg 3: Koden
int en = 2;
int b = 3;
int c = 4;
int d = 5;
int disppin = 7.
int t = 5; int i, indx = 0;
int ingen [6]. matris med tal som ska skrivas för varje stift
långa int no2bdisp = 123456; nummer som ska visas
void setup() {
pinMode (2, utgång); D2 A
pinMode (3, OUTPUT); D3 B
pinMode (4, OUTPUT); D4 C
pinMode (5, OUTPUT); D5 D
pinMode (7, OUTPUT); D7 1
pinMode (8, OUTPUT); D8 2
pinMode (9, OUTPUT); D9 3
pinMode (10, OUTPUT); D10 4
pinMode (11, OUTPUT); D11 5
pinMode (12, OUTPUT); D12 6
}
void loop() {
samtidigt (1)
{
Skriv numret på visar ***
för (jag = 0; jag < 6; i ++) {
digitalWrite (d, hög & & (ingen [i] & B00001000));
digitalWrite (c, hög & & (ingen [i] & B00000100));
digitalWrite (b, hög & & (ingen [i] & B00000010));
digitalWrite (en, hög & & (ingen [i] & B00000001));
digitalWrite (disppin, hög);
Delay(t);
digitalWrite (disppin, låg);
disppin ++;
om (! () disppin < 13))
disppin = 7.
Dela upp numret till siffror ***
samtidigt (no2bdisp > 0) {
ingen [indx] = no2bdisp % 10.
no2bdisp = 10;
indx ++;
}
}
}
}