-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: Hyundai 128x64 LC-Display

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585

    Hyundai 128x64 LC-Display

    Anzeige

    Hallo!

    Ich möchte das (von pollin.de wohl bekannte) Hyundai HP 12542R-DYO 128x64 pixel LC-Display mit einem ATmega8 ansteuern.
    Es arbeitet mit einem SED1565, hat 8 Datenleitungen, sowie eine Enable, Read/Write, Control/Daten-Register und ChipSelect- Leitung.

    Nun, kann ich das Display mit Bascom einfach ansteuern? Daher, reichen Befehle aus, oder muss ich jedes Pixel einzeln definieren/aktivieren?

    Wie sieht es mit der Verkabelung aus? Jede Leitung an einen Port, egal welchen?

    Mein erstes Mal, dass ich ein Grafikdisplay ansteuere.
    MfG,
    ShadowPhoenix

    EDIT:
    Eins noch, das Display arbeitet laut Datenblatt mit 6800 baud, mein restliches System aber mit 9600 baud, wie kann ich dieses Problem lösen?
    Denn der AVR, der das Display ansteuert, bekommt Befehle mit 9600 baud.

  2. #2
    Erfahrener Benutzer Begeisterter Techniker Avatar von albundy
    Registriert seit
    16.10.2004
    Beiträge
    282
    Hallo,
    Eins noch, das Display arbeitet laut Datenblatt mit 6800 baud, mein restliches System aber mit 9600 baud, wie kann ich dieses Problem lösen?
    Da verwechselst du etwas. Das Display ist auf den Prozessor 6800 eingestellt.

    Es arbeitet mit einem SED1565, hat 8 Datenleitungen, sowie eine Enable, Read/Write, Control/Daten-Register und ChipSelect- Leitung.
    Du sagst es, es wird parallel mit 8 Datenleitungen angesteuert.

    Nun, kann ich das Display mit Bascom einfach ansteuern? Daher, reichen Befehle aus, oder muss ich jedes Pixel einzeln definieren/aktivieren?
    Im Datenblatt vom Controller steht wie es geht. Das Display wird Zeilenweise beschrieben (0 - 7) mit je 8 Bit pro Spalte (0 - 127).
    Bascom unterstützt diesen Controller leider nicht. Der Controller SED1565 hat leider auch keinen integrierten Zeichensatz, was die Ansteuerung nicht gerade leichter macht. Ich bin zwar gerade dabei eine Library für das Display zu schreiben, wird aber noch eine Weile dauern, da ich kaum Zeit dafür habe.

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Daher kann ich das Display mit 9600 baud ansteuern?

    Leider kenne ich mich mit so etwas nicht aus, gibt es irgendwo ein Tutorial, oder jemanden, der sich gut auskennt?

    Aus dem Datenblatt werde ich nicht schlau

    MfG,
    ShadowPhoenix

  4. #4
    Erfahrener Benutzer Begeisterter Techniker Avatar von albundy
    Registriert seit
    16.10.2004
    Beiträge
    282
    Daher kann ich das Display mit 9600 baud ansteuern?
    Das kannst du vergessen, der Controller ist auf Parallel eingestellt. Um das zu ändern, müßtest du Pin P/S (Parallel/Seriell) vom Controller auf Low legen. Wie willst du das machen ?

    Um jetzt einen Buchstaben auf das Display zu bringen mußt du:

    1. Reset vom SED1565 auf High schalten.
    2. Display initialisieren mit den Kommandos aus der „disptest1.pas“
    3. Dann einen Buchstaben in Zeile 1-8 und Spalte 1-128 darstellen.

    Der Buchstabe „A“ (5x7 Pixel) wird folgendermaßen dargestellt:

    Bit 0 - 0 1 1 1 0 0
    Bit 1 - 1 0 0 0 1 0
    Bit 2 - 1 0 0 0 1 0
    Bit 3 - 1 0 0 0 1 0
    Bit 4 - 1 1 1 1 1 0
    Bit 5 - 1 0 0 0 1 0
    Bit 6 - 1 0 0 0 1 0
    Bit 7 - 0 0 0 0 0 0
    --------------------
    Byte - 1 2 3 4 5 6

    -Auf Command umschalten A0 auf "0"
    -Kommandos über D0-D7 senden:
    -Command $B0 + Pageadresse ( Zeile 0 - 7 )
    -Command $10 + Columnadresse High ( 4 Bit High für Spalte 0 - 127 )
    -Command $00 + Columnadresse Low ( 4 Bit Low für Spalte 0 - 127 )
    -Auf Daten umschalten A0 auf "1"
    -Datenbytes über D0-D7 senden:
    $7E,$11,$11,$11,$7E,$00

    Im Datenblatt sind eigendlich nur Seite 28 mit den Displayadressen und Seite 56 mit den Kommandos wichtig.

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Danke für die Zusammenfassung!

    "Das kannst du vergessen, der Controller ist auf Parallel eingestellt. Um das zu ändern, müßtest du Pin P/S (Parallel/Seriell) vom Controller auf Low legen. Wie willst du das machen ?"

    Was bedeutet das, parallel?
    Also kann ich den nicht mit einem AVR ansteuern? Oder doch?
    Wichtig ist, der AVR hat ganz bestimmt 9600baud eingestellt.

    Pin P/S vom Controller auf Low legen, das geht doch ganz einfach?

    Hmm... ganz blick ich nicht hindurch :O

    MfG,
    ShadowPhoenix

  6. #6
    Erfahrener Benutzer Begeisterter Techniker Avatar von albundy
    Registriert seit
    16.10.2004
    Beiträge
    282
    Was bedeutet das, parallel?
    Ist das dein ernst ?
    Parallel bedeutet über 8 Datenleitungen.
    Also kann ich den nicht mit einem AVR ansteuern? Oder doch?
    Wichtig ist, der AVR hat ganz bestimmt 9600baud eingestellt.
    Der AVR muß 8 Ports für die Datenleitungen + 4 Ports für die Steuerleitungen frei haben.
    Was hast du ständig mit den 9600baud ?
    9600baud ist eine serielle Datenübertragungsrate, und ist hierbei völlig egal.
    Pin P/S vom Controller auf Low legen, das geht doch ganz einfach?
    Ach ja ?
    Ich habe den SED1565 auf dem Display noch nicht einmal gesehen !!!

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Ah ich verstehe, also werde ich das Display parallel steuern.
    (Also nicht mit PRINT ?!)
    Gibt es dazu Beispiele in Bascom?

    In meinem Code wird geschrieben:
    $baud = 9600

    (ich stelle mit dem AVR eine serielle Übertragung mit einem TRX her)

    Daher hatte ich Bedenken, dass der AVR nicht mit dem Display kommunizieren kann.

    MfG,
    ShadowPhoenix

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Hallo ShadowPhoenix,
    weißt Du überhaupt was Du da tust?
    was hat die Baudrate mit dem Display zutun?
    Ich würd auf Deiner Stelle mal mit was ganz kleinem anfangen,
    z.B. ein normales LCD Display ansteuern, aber nicht mit den Bascom Routinen, sondern"zu Fuß" Befehl für Befehl übertragen.
    Dann verstehst Du vielleicht, wie es anzusteuern geht.
    Man hat Dir schon ein Beispiel genannt, wie man einen Buchstaben
    auf das Display überträgt, schau Dir das mal an und baue den Rest darauf.

    Gruß Sebastian

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    31.01.2004
    Beiträge
    585
    Das Problem ist, ich weiß nicht, welche Befehle ich in Bascom verwenden muss, um über die Datenleitungen zu senden.

    Und hat ein Byte nicht 8 Bit? Bei albundy's Beispiel nur 6?

    MfG

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Das Problem ist, ich weiß nicht, welche Befehle ich in Bascom verwenden muss, um über die Datenleitungen zu senden.
    Du denkst einfachmal zu kompliziert,
    Es gibt doch Bascom Befehle um Pins auf logisch 0 oder logisch 1 zu setzen, oder nicht?
    Du brauchst dann 8 Pins von AVR die mit dem Display verbunden sind, das sind dann Deine Datenleitungen und 4 Pins zum Steuern, also insgesamt 12 freie Pins, jetzt gibt es sicher eine Resetsequenz, die Du am Anfang ausführen mußt, also irgendwas an die 8 Datenpins anlegen und irgendwas an die Steuerleitungen, was man machen muß, ließt Du einfach im Datenblatt zu Deinem Display.
    So wie Albundy schon schrieb, gibt es wohl keine Möglichkeit, das per ein Befehl zu machen, da mußt Du Dir Deine eigene Bibliothek schreiben, aber ohne das Datenblatt zu lesen wirst Du es kaum schafen, es sind ja nur 2 Seiten, die wichtig sind, aber wie gesagt, ich würde erstmal mit einem normalem LCD-Display üben, bevor ich damit anfangen würde.

    Gruß Sebastian

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •