Gast
#4280172
Hallo Experten. Ich versuche mit dem Arduino Uno ein defektes Spezialdisplay meines Synthesizers Roland JX-10 zu ersetzen. Das Original ist kein LCD, sondern ein Vakuum-fluoreszierendes Display das mit 40 Volt betrieben wird. Der Display-Treiber wird mit Clock und Data versorgt und ist ziemlich einfach codiert. Die Bits kommen mit einer Frequenz von ca. 80kHz an. Ein Byte dauert also ca 100 Mikrosekunden. Pause zwischen den Bytes ist ca. 200 Mikrosekunden. Ich habe also PIN 2 als Interrupt für den Clock (RISING EDGE) verwendet, auf PIN 3 lese ich die Daten ein. Zum Teil funktioniert das auch prima. Im Vergleich zum Speicheroszi (da kommen die korrekten ASCII codes an) zeigt die Arduino Auswertung manchmal zufällige falsche ausgelesene Character an. Nun die Frage vom Anfänger an die Experten: - Kann das ein Timing Problem sein? - wie schnell kann ein Arduino UNO eigentlich Interrupts auswerten? - Gibt es eine bessere Möglichkeit, Clock und Data auszulesen (z.B. ISP?) - Sollte ich besser ein 8Bit Schieberegister z.B. 74xx164 vorschalten und die Daten dann parallel einlesen? Hier wirds allerdings dann eng mit den dig. Inputs.... Danke!