Hallo allemaal,
ik ben wat aan het experimenteren met een shift register 74HC595, ik heb deze aangesloten en gekoppeld met 8 leds.
Nu wil ik de leds 1 voor 1 aan laten gaan, en als led 8 aan is, weer terug naar led 1.
Ik heb de volgende code hiervoor, maar de teller telt (zoals verwacht) binair: led 1 gaat aan, dan gaan led 1 en 2 aan, led 4 gaat aan enz.
Mijn vraag: wat moet ik veranderen om "normaal" te tellen: dus eerst de 1e led, dan de 2e led, 3e led etc.
De output van de serial monitor is 0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0
int latchPin=11;
int dataPin=12;
int clockPin=9;
int LEDs;
int waitTime=500;
void setup() {
// put your setup code here, to run once:
Serial.begin (9600);
pinMode (latchPin,OUTPUT);
pinMode (dataPin,OUTPUT);
pinMode (clockPin,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
for (int LEDs=0; LEDs<=8; LEDs=LEDs+1) {
digitalWrite (latchPin,LOW);
shiftOut (dataPin,clockPin,LSBFIRST,LEDs);
digitalWrite (latchPin,HIGH);
delay (waitTime);
Serial.println(LEDs);
}
for (int LEDs=7; LEDs>=1; LEDs=LEDs-1) {
digitalWrite (latchPin,LOW);
shiftOut (dataPin,clockPin,LSBFIRST,LEDs);
digitalWrite (latchPin,HIGH);
delay (waitTime);
Serial.println(LEDs);
}
}
