Forum: Mikrocontroller und Digitale Elektronik Eigene Zeichen auf LCD


von Michael Joehrendt (Gast)


Lesenswert?

Hallo Leute,
ich versuche auf einem Display mit hd44780 controller
ein eigenes Zeichen zu generieren. Leider ist mir das noch nicht
geglueckt. Hat jemand vielleicht ein Assemblerlisting wo die
Zeichengenerierung zu erkennen ist?

Vielen Dank im Voraus

Mfg Michael

von Michael Joehrendt (Gast)


Lesenswert?

War wohl nichts!!!

von Klaus (Gast)


Lesenswert?

Hab ich schonmal gemacht, vor unzähligen Jahren, weil mit die 
Unterlängen der Buchstaben g und p und q überhaupt nicht gefielen. Dafür 
habe ich im Treiberprogramm diese Buchstaben abgefangen und auf die frei 
definierbaren Zeichen gepatcht, die ich vorher definierte. Hat genaus so 
funktioniert, wie im Manual beschrieben. Kann ich aber nicht mehr aus 
dem Gedächtnis sagen, aber wenns bei Dir gar nicht klappen will, kann 
ich ja die Files nochmal raussuchen. Ab besten du schickst den Code, den 
Du verwendest, als zip-file im Anhang mit, dann können wir den Fehler 
finden.

Welche Unterlagen hast Du?

Gruß!

von Michael (Gast)


Lesenswert?

Hallo Klaus,
ich habe nur die standard Beschreibung von
Conrad fuer das Display und daraus kann ich
nur erkennen wie ich mein Zeichen definieren
kann aber nicht wie ich es danach ansprechen
kann. Fuer eine schnelle Loesung waere ich
dankbar.

Mfg
Michael

Ps. wenn du eine andere Anleitung hast mit mehr Details und du sie mir 
zukommen lassen
koentest waere das super

von Phagsae (Gast)


Lesenswert?

Wenns nur der Aufruf ist
Wie die anderen zeichen im CharacterGeneratorROM = CGROM
Wobei die User zeichen streng genommen im CGRAM liegen
Auf der Codetabelle findest du 2 leere Spalten
zb von 0x00 bis 0x07
in denen sind deine Zeichen
Warum 2?
Weil die DDRAM so organisiert ist
0000XDDD  DDD= Adresse deines Zeichens
0x00 =1 Zeichen

Fürdie Zeichengeneration brauchst du für ein zeichen 8 Datensätze
Organisiert in Zeilen  XXXZZZZZ   ZZZZZ = 5 pixel

Ablage erfolgt durch schreiben( wie normales schreiben ) auf Spezial 
Adressen ( wie normaler Steuerbefehl )
Adresse  1 Zeichen 1 Reihe XXXZZZRRR  = XXX|000|000
Also ZZZ bleibt für Zeichen # 2 immer 010
Also ZZZ bleibt für Zeichen # 7 immer 111

Die Reihen laufen dann 0bis 111 durch
Wenn du im auto inkrement modus arbeitest braucht man die Adresse nicht
extra nachsetzten


!!!!
Damit Du Erfolg hast muss bei Adresse Setzten folgendes Beachtet werden

CGRAM Adressen haben folgende form
( Da muss dein Zeichen hin)
RS RW D7 D6 D5......D0
0   0    0   1    ZZZ|RRR


DDRAM Adressen

RS RW D7 D6 D5......D0
0   0    1   0    DATEN


PS
Binn mal im internet über einen Char generator gestolpert
Da kann man mit der maus die Zeichen zusammenklicken
Und sich die Datentabelle für 8 zeichen im hex format ausgeben lassen

Interessen ?


Phagsae

von Markus Wittmer (Gast)


Lesenswert?

@ Phagsae
das wird vielleicht die seite des generators sein:
http://www.geocities.com/dinceraydin/lcd/charcalc.htm

ist übrigens eine super seite mit LCD-infos

von Sven (Gast)


Lesenswert?

Danke Markus für den Link, ist keine schlechte Seite. Besonders der
LCD-Simulator gefällt mir, kennt jemand sowas für ASM?

Mal ne kurze andere Frage, wo's gerade um LCDs geht:
Laut Datenblatt haben die Befestigungslöcher 2,5mm Durchmesser. Passt
da vielleicht trotzdem ein M3-Gewinde durch? Oder muss da dann auf die
Verwendung der Standard-Platinenverbinder verzichten?

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
Noch kein Account? Hier anmelden.