int yukleme = 7; // 74HC165 bağlantıları.
int clockAktif = 4;
int veriGiris = 5;
int clockGiris = 6;
const int bekle = 10; // 74HC595 bağlantıları.
const int clockPin = 11;
const int veri = 12;
int ledler[8];
void setup () {
pinMode(yukleme, OUTPUT); // 74HC165 pinleri.
pinMode(clockAktif, OUTPUT);
pinMode(clockGiris, OUTPUT);
pinMode(veriGiris, INPUT);
pinMode(bekle, OUTPUT); // 74HC595 pinleri.
pinMode(clockPin, OUTPUT);
pinMode(veri, OUTPUT);
}
void loop() {
digitalWrite(yukleme, LOW); // Girişleri oku.
delayMicroseconds(5);
digitalWrite(yukleme, HIGH);
delayMicroseconds(5);
digitalWrite(clockGiris, HIGH);
digitalWrite(clockAktif, LOW);
byte gelenVeri = shiftIn(veriGiris, clockGiris, LSBFIRST);
digitalWrite(clockAktif, HIGH);
switch (gelenVeri) {
case B11111110:
ledler[0] = B11111111;
ledler[1] = B01111110;
ledler[2] = B10111101;
ledler[3] = B11011011;
ledler[4] = B11100111;
ledler[5] = B11011011;
ledler[6] = B10111101;
ledler[7] = B01111110;
break;
case B11111101:
ledler[0] = B00000001;
ledler[1] = B00000010;
ledler[2] = B00000100;
ledler[3] = B00001000;
ledler[4] = B00010000;
ledler[5] = B00100000;
ledler[6] = B01000000;
ledler[7] = B10000000;
break;
case B11111011:
ledler[0] = B10000001;
ledler[1] = B01000010;
ledler[2] = B00100100;
ledler[3] = B00011000;
ledler[4] = B00000000;
ledler[5] = B00100100;
ledler[6] = B01000010;
ledler[7] = B10000001;
break;
case B11110111:
ledler[0] = B10101010;
ledler[1] = B01010101;
ledler[2] = B10101010;
ledler[3] = B01010101;
ledler[4] = B10101010;
ledler[5] = B01010101;
ledler[6] = B10101010;
ledler[7] = B01010101;
break;
case B11101111:
ledler[0] = B10000000;
ledler[1] = B00000001;
ledler[2] = B01000000;
ledler[3] = B00000010;
ledler[4] = B00100000;
ledler[5] = B00000100;
ledler[6] = B00010000;
ledler[7] = B00001000;
break;
case B11011111:
ledler[0] = B11000000;
ledler[1] = B01100000;
ledler[2] = B00110000;
ledler[3] = B00011000;
ledler[4] = B00001100;
ledler[5] = B00000110;
ledler[6] = B00000011;
ledler[7] = B10000001;
break;
case B10111111
:
ledler[0] = B11100000;
ledler[1] = B01110000;
ledler[2] = B00111000;
ledler[3] = B00011100;
ledler[4] = B00001110;
ledler[5] = B00000111;
ledler[6] = B10000011;
ledler[7] = B11000001;
break;
case B01111111:
ledler[0] = B10001000;
ledler[1] = B01000100;
ledler[2] = B00100010;
ledler[3] = B00010001;
ledler[4] = B10001000;
ledler[5] = B01000100;
ledler[6] = B00100010;
ledler[7] = B00010001;
break;
defaul:
break;
}
for (int i = 0; i < 8; i++) {
digitalWrite(bekle , LOW);
shiftOut(veri , clockPin , MSBFIRST , ledler[i]);
digitalWrite(bekle, HIGH);
delay(200); }
}