74HC959 verhält sich merkwürdig

OP #4915704
Lesenswert?
• ▲
▼
Hallo,

ich habe hier ein Schieberegsiter, konkret ein 74HC959. Ich wollte 
erstmal nur zum testen ein LED-Lauflicht erzeugen. Dafür habe ich 
folgenden Code geschrieben
1
//Pin connected to ST_CP of 74HC595
2
//Bei einer Flanke werden die Daten im Schieberegister ins Ausgangsregister übernommen
3
int latchPin = 8;
4

5
//Pin connected to SH_CP of 74HC595
6
//Bei einer Flanke wird der Wert der am DataPin anliegt ins Schieberegister übernommen, zusätzlich, wird alles einmal weitergeshifted
7
int clockPin = 18;
8

9
//Pin connected to DS of 74HC595
10
//Hier liegt der Wert an, der in das Schieberegister übernommen werden soll.
11
int dataPin = 17;
12

13
byte i = 9;
14

15
void setup() {
16
  pinMode(latchPin, OUTPUT);
17
  pinMode(clockPin, OUTPUT);
18
  pinMode(dataPin, OUTPUT);
19
}
20

21
void loop() {
22
  if(i == 9)
23
  {
24
    //Ersten Impuls erzeugen
25
    digitalWrite(dataPin, HIGH);
26
    digitalWrite(clockPin, HIGH);
27
    digitalWrite(latchPin, HIGH);
28
    delay(100);
29
    digitalWrite(dataPin, LOW);
30
    digitalWrite(clockPin, LOW);
31
    digitalWrite(latchPin, LOW);
32
    delay(900);  
33
    i = 1;
34
  }
35
  else
36
  {
37
    //Durchschieben 
38
    digitalWrite(clockPin, HIGH);
39
    digitalWrite(latchPin, HIGH);
40
    delay(100);
41
    digitalWrite(clockPin, LOW);
42
    digitalWrite(latchPin, LOW);
43
    delay(900);
44
    i++;
45
  }
46
}

Die ersten 4 LEDs leuchten so wie sie sollen, d.h. eine nach der 
anderen. Sobald aber die 5. LED leuchten sollte, leuchten LED 5 UND 6. 
Wenn die 6. leuchten sollte, leuchtet KEINE, und wenn dann die 7. 
leuchten sollte, leuchtet die 6. mit.

Kann mir einer sagen, warum?

Gruß,
Freddy

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.