Forum: Mikrocontroller und Digitale Elektronik 74HC959 verhält sich merkwürdig


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Freddy L. (ananas_k)


Bewertung
0 lesenswert
nicht 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

: Bearbeitet durch User
von g457 (Gast)


Bewertung
0 lesenswert
nicht lesenswert
> Kann mir einer sagen, warum?

Fehler im Aufbau.

von Freddy L. (ananas_k)


Bewertung
0 lesenswert
nicht lesenswert
Habe folgenden Aufbau von hier verwendet:

Aufbau: https://www.arduino.cc/en/uploads/Tutorial/ShftOut_Schm1.gif
Quelle: https://www.arduino.cc/en/tutorial/ShiftOut

Habs auch grade nochmal überprüft.

von Teo D. (teoderix)


Bewertung
2 lesenswert
nicht lesenswert
Freddy L. schrieb:
> Habs auch grade nochmal überprüft.

Oft findet man die selbst produzierten Fehler nicht. Man sucht immer im 
selben Schema...
Pause machen, andren drauf gugen lassen o. bei so einfachen Sachen, neu 
aufbauen.

von Freddy L. (ananas_k)


Bewertung
0 lesenswert
nicht lesenswert
War doch ein Aufbaufehler, habs jetzt gelöst!

Trotzdem danke!

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Freddy L. schrieb:
> ich habe hier ein Schieberegsiter, konkret ein 74HC959

Meinst du vielleicht ein 74HC595?

Guck mal, was auf dem Gehäuse steht ;-)

von Georg A. (georga)


Bewertung
0 lesenswert
nicht lesenswert
Für ein Regsiter passt der 959 ja ;)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.