Stage 1

Arduino mit 74hct165

Wie bekommt man die Schaltzustände von 8 Tastern in den Rechner? Ganz einfach: man stöpselt sie in einen Arduino. Allerdings belegt man dann auch 8 von 13 Pins. Nicht wirklich effizient.
Alternativ nutzt man ein Schieberegister, z.B. in Form des 74HCT165. Damit die Eingänge bei offenen Schaltern nicht rumspinnen, werden sie mit 10k an Masse angeschlossen. Parallel dazu die Schalter - d.h. bei geschlossenem Schalter hängt Vcc am entsprechenden Pin und gleichzeitig über den 10k Widerstand an Masse. Lässt man den Widerstand weg, zappelt der entsprechende Pin beim Öffnen des Schalters im besten Fall ein paar mal zwischen HIGH und LOW, bevor er sich für einen der Zustände entscheidet. Im schlechtesten Fall ist das HIGH. Also: Widerstand rein (nennt sich Pulldown).

Dann muss man ein kleines Programm schreiben, dass die parallelen Schaltzustände einließt und dann kontrolliert aus dem Register schiebt. Eine kleine for-Loop, die den Clock-Pin immer brav von LOW nach HIGH schaltet - eigentlich Easy Peasy
Doch Vorsicht: Gefahren lauern überall!

  1. Am besten alles was man nicht braucht (d.h. CE und DS) auf Masse packen.
  2. Reihenfolge beim Shiften beachten: Clock LOW, Arduino::Read, Clock HIGH!
  3. Durch Latch LOW, Latch HIGH die nächsten Schaltzustände einlesen.

So, jetzt funktioniert’s. Next Stage: PD-Patch bauen.

Hinterlasse eine Antwort