Hallo, ich versuche gerade mit einem Atmega32 ein 74HC165 aus zu lesen. Ich möchte jeden Taster definieren und aus lesen. Aber irgendwie geht das nicht so richtig. Taster1 zeigt er an aber die anderen nicht, geschweige die anderen 2 74HC165. Liege ich bei denn Code auf dem Holzweg? Ein Tipp wäre nicht schlecht. Gruß Peter
Peter schrieb: > Taster1 zeigt er an aber die anderen nicht, geschweige die anderen 2 > 74HC165. Wie sieht deine Schaltung dazu aus? Vielleicht ist die Anzeige einfach nur zu langsam oder du liest sie zu langsam ab. Schreibe doch die möglichen Ausgaben mal nicht übereinander.
Das Programm sieht dem hier ziemlich ähnlich, allerdings sind es hier LEDs statt Tastern und HCF4094 statt der 74HC165: http://www.loetstelle.net/forum/viewtopic.php?p=11345 Ich nehme an, die Schaltung ist aber ähnlich, nur muss das Schieberegister parallel zu seriell wandeln statt umgekehrt. So viele Schalter ordnet man üblicherweise in einer Diodenmatrix an, statt jeden einzeln anzuschließen.
Hallo, das sieht so ähnlich aus. Nur das noch 10K an VCC gehen, wegen Pullup. Plan ist im Anhang. Würde ich gerne machen als Matrix aber die anderen brauche ich für Ausgänge. ( Servos usw. ) Gruß Peter
Peter schrieb: > Liege ich bei denn Code auf dem Holzweg? Etwas. Betrachtet man das Timing-Diagramm im 74165-Datenblatt, dann wird PL (Pin1) zu Beginn eines Auslesezyklus auf Low gezogen, das latcht die Eingänge in's Schieberegister. Nachdem PL auf High zurückgeht, werden die Daten rausgeschoben bzw. kaskadiert über DS (Pin10) durch die anderen 74165 durchgeschoben. Betrachtet man populate_shift_register(), dann hat das wenig Ähnlichlkeit damit. Hinzu kommt, dass Pulseout() den Portpin toggelt, um einen kurzen Low-Impuls zu erreichen, muss der Pin vorher High sein, das isser aber nicht. Ein paar Sachen umgestellt und es sollte gehen, Pulseout() vor Shiftin() und Sr_Load-Pin vorher auf High setzen.
Peter schrieb: > Würde ich gerne machen als Matrix aber die anderen brauche ich für > Ausgänge. > ( Servos usw. ) Statt der 74HC165 (wieso eigentlich 2 und nicht 3 bei 24 Tastern) kannst du doch genauso gut einen 74HC165 und einen 74HC595 o.ä. an das SPI hängen. Damit könntest du bequem eine Matrix mit 24 Tasten abfragen und hättest sogar noch 5 Leitungen frei - jedenfalls solange keine Mehrfachtastendrücke erkannt werden müssen. Was hat das mit Servos o.ä. zu tun?
Peter schrieb: > ich versuche gerade mit einem Atmega32 ein 74HC165 aus zu lesen. Warum lädst Du Deinen Kram in mindestens zwei Foren gleichzeitig ab? Nennt sich Crossposting und auf sowas steh' ich nicht. Lass also fortan andere für Dich denken, ich bin raus.
MWS schrieb: > Warum lädst Du Deinen Kram in mindestens zwei Foren gleichzeitig ab? Dann nenne doch auch gleich Ross und Reiter https://bascomforum.de/index.php?thread/990-74hc165-atmega32-mit-24-taster/
Forist schrieb: > Dann nenne doch auch gleich Ross und Reiter Warum? Dem TE muss ich es nicht beweisen, der weiß schon was ich meine. Es wäre dessen Aufgabe auf sein Rundumgefrage hinzuweisen. Würde er darauf hinweisen, fände ich es im übrigen ok, weil fair gegenüber dem Antwortenden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.