LED Display ansteuerungs Probleme

Moin moin erstmal, bin neu hier und begrüße die Kommunity!!

Hab auch gleich schon ein Problemchen.
Hab mir vor Jahren mal ein schickes LED Display(24 Spalten, 8 Reihen, 7 Farben) ersteigert habs aber damals nie hinbekommen das anzusteuern.
Jetzt nach meinem ersten Arduino Projekt fand ich das Ding wieder und dachte mir das ich mich jetzt mal daran setze das anzusteuern.

Das Problem:
Ich muss einen String Seriel ausgeben habs mit der library SoftwareSerial.h mal probiert aber die frisst keine Strings.

Vielleicht interpretiere ich die Programmieranleitung auch falsch (bild 1) Dieses “DisplayB” verwirrt mich einwenig soll das wirklich ein String sein?

Hab auch schon an die Schieberegister library gedacht dafür fehlt aber der clock -und latchpin. Nur mit dem data Pin geht auch nicht da auch diese Library keine Strings nimmt.

Hier mal die Informationen die ich zu dem Teil hab
http://picasaweb.google.com/lh/photo/QQnR_2NvoIDFE0wGudearQ?feat=directlink <— Bild1 Programmieranleitung
http://picasaweb.google.com/lh/photo/AAX2UPRsscbjTOdmF7xVhw?feat=directlink <— Bild2 Platinenlayout und Anschlüsse
http://picasaweb.google.com/lh/photo/nn8rGOxRVczZ99eTyIrHsQ?feat=directlink <—Bild3 Mein Aufbau

Vielleicht hat jemand noch eine idee wie das gehen könnte, steh wie damals wieder auf dem Schlauch :smiley: .

Dieses "DisplayB" verwirrt mich einwenig soll das wirklich ein String sein?

Sieht ganz so aus, auch wenn sich mir als altem Assemblerprogrammierer und Bitausquetscher von Effizienz wegen die Zehennägel aufrollen... :wink:

Ein wirklich schönes Display hast Du da! :slight_smile:

Steht da irgendwo ne Typenbezeichnung?

Nein leider nicht, bis auf diesen Weißen aufkleber wo DisplayB draufsteht.

Ich vermute es handelt sich um eine ganze Reihe von Displays, die diesem Typ entspricht. Somit können auf einer einzigen seriellen Leitung mehrere Displays nacheinander angesteuert werden. "DisplayA , Werte , DisplayB, Werte" usw. Vermutlich ist der String der ausgegeben werden muss sicherlich Case-senstitiv.

Ein String ist doch aber nichts anderes als eine Folge von Bytes bzw. Chars oder ?

Irgendwie kann ich auf dem Bild deiner Schaltung auch nicht erkennen, dass du den Pin der seriellen Schnittstelle angeschlossen hast. im oberen Drittel der Programmieranleitung steht: "Programmierung: Seriell 8N1 9600"
Den Pegel der seriellen Leitung (Spannung) kann ich nicht identifizieren. Bevor man mit der seriellen Schnittstelle am PC beginnt würde ich es zuerst mit TTL Pegeln versuchen. Also mit der seriellen Schnittstelle des Arduino.

Ach, und bevor ich es vergesse: Herzlich willkommen im Forum, meisteroe.

Ich vermute es handelt sich um eine ganze Reihe von Displays, die diesem Typ entspricht.

Jo das hab ich mir auch so gedacht.

Vermutlich ist der String der ausgegeben werden muss sicherlich Case-senstitiv.

Was bedeutet das?

Ein String ist doch aber nichts anderes als eine Folge von Bytes bzw. Chars oder ?

Ja davon geh ich auch aus nur leider weiss ich nicht wie ich Chars Seriell an einem Pin ausgebe. Bytes krieg ich wohl hin, muss ich das dann im ASCII code ausgeben oder was ist so üblich?

Hab jetzt die serielle Schnittstelle des Displays an einem ausgang von meinem Arduino gesteckt. Das wäre dann ein Pegel von 0-5V.....
Bedeutet "Programmierung: Seriell 8N1 9600" denn TTL-Pegel? (Zur erinnerung war doch -12 bis +12V oder?!)

Hier steht 5V: Transistor-Transistor-Logik – Wikipedia (bei standart TTL)

Case sensitive heist: Unterscheidet nach Gross und Kleinbuschstaben :wink:

Und zum Seriellen... Ich würde einfach mal ASCII probieren. Und das mit der tatsächlichen Spannung ist weiterhin ungeklärt. Hast du mal versucht zu messen (am LEDDisplay) ob dort eine Spannung am seriellen Anschluß anliegt ? Wenn ein RS232-Wandler drin wäre, dann wäre die Spannung für die serielle Schnittstelle +-12 Volt. (RS232 nicht mit TTL verwechseln)

Wobei ich persönlich schätze, dass es 5V / 0V sind :wink:

Hab das ganze ding mit 5V versorgt (hamwa das geklärt ^^ ) auch der serielle Teil

Ja es werden wohl 5V sein hab mal ein Programm von einem anderen Projekt genommen welches auch seriell arbeitet.Einfach mal geguckt ob irgendeine 0101 kombination ins schwarze trifft :smiley:

und tatsächlich in der siebten Zeile leuchteten 2 grüne Punkte auf ^^ (nach einiger wartezeit)
natürlich erfreulich
aber das Programm ist knappe 2000 zeilen lang und ich hab keine ahnung an welcher position das passiert.

Wie kann ich denn dieses "DisplayB" seriell ausgeben?
nach Ascii wäre das ja in Dezimal: D-68, i-105, s-115, p-112, l-108, a-97, y-121, B-66

Mach ich das mit der Shiftout funktion für Schieberegister oder was würdet ihr nehmen?

Serial.print("DisplayB 1 1 128"); ? vielleicht :wink: