Forum: Compiler & IDEs problem LCD-routine von p.fleury


von Johannes Schmidt (Gast)


Lesenswert?

hi leuz,
ich möchte zeichen mittels der lcd-routinen von peter pfleury auf mein
lc-disp ausgeben. benutze die dip-module. mit 2 zeilen bereitets kein
problem, aber wenn ich ein 4*20-disp benutze, spiegelt sich ein teil
(das ende) der ersten zeile in der zweiten und ebenso ein teil der
dritten in der vierten. mit \n gelange ich nicht von zeile 1 zu zeile
2, sondern zur dritten. und auch die gotoxy-commands erreichen die
ungeraden zeilen nicht.
lcd.h habe ich angepasst:
#define LCD_LINES           4
ich benutze win-avr und das prog läuft auf nem atMega163
die disps heissen ea-dip162 bzw dip204.
antwortenden sei gedankt.
gruss
johannes

von ??? (Gast)


Angehängte Dateien:

Lesenswert?

hallo,

gleiches problem hatte ich auch mit 4x20 lcd.
versuchs mal mit dem file im anhang, ist peter pfleury mit einer
kleinen
änderung von mir...

von ??? (Gast)


Lesenswert?

...und ich habe vergessen zu sagen, das bei der lcd.h die
LCD_DISP_LENGTH aufgrund der änderung "echte länge - 1" gilt.
desweiteren habe ich gotoxy nicht getestet/angepasst...

von Peter Fleury (Gast)


Lesenswert?

Leider benutzen einige Display Controller die nicht ganz kompatibel sind
zum HD44780 und deshalb eine andere Adressierung des Display-Memories
haben.

Aufgrund deiner Aussage dass ein gotoxy von Zeile 1 auf Zeile 3 springt
statt auf Zeile 2, muss man die Zeilenaddressierung in lcd.h (
LCD_START_LINE1 .. LCD_START_LINE4 ) anpassen.

Welche Adressen dort eingetragen werden müssen, müsstest du aus dem
Datenblatt deines LCDs entnehmen.

von ??? (Gast)


Lesenswert?

bei mir ist der original hd44780 drauf, dennoch hatte ich mit dem
jweweilig letzten zeichen einer zeile und falschen zeilenümbrüchen zu
kämpfen.
ich habe dann die funktion lcd_putc leicht abgeändert um dieses problem
zu umgehen.
die änderung dürfte sich meiner meinung nach auch auf andere displays
nicht negativ auswirken.

ps: ich benutze das diplay BATRON BT42008

von Johannes Schmidt (Gast)


Lesenswert?

erstmal danke.

>>> @???
Deine Änderungen bewirken bei mir leider gar nille.

>>> @Peter Fleury
Habe die Adressen aus meinem Datenblatt des Kontrollers (KS0073)
angepasst, aber auch das hilft nix. Wie finde ich denn die interne
Zeilenlänge des Kontrollers heraus? kann es etwas damit zu tun haben?
ich hab einiges ausprobiert, jedoch ohne Erfolg.
Es erscheinen auch unmotivierte Zeichen auf dem disp, namlich
"_____". Allerdings kann ich nach den Adressanpassungen wenigstens
die erste Zeile voll ausschreiben, in der 2. spiegelt sich ein teil
wieder, und in die 3. und 4. Zeile komme ich jetzt gar nicht mehr.

von Peter Fleury (Gast)


Lesenswert?

Eine kurze Suche mit Google zeigt dass der Kontroller KS0073 eben nicht
100% kompatibel zum Original HD44780 ist:
http://lists.omnipotent.net/pipermail/lcdproc/2003-November/008234.html

Meine Library unterstützt nur 100% kompatible Kontroller.

von Johannes Schmidt (Gast)


Lesenswert?

is mir schon klar, dass der nicht voll kompatibel ist, zumal er auch
seriell ansteuerbar ist, dachte aber, die Grundfunktionen unds Timing
währen ähnlich genug...
Werd die lib anpassen.

von Liakos Konstantinos (Gast)


Lesenswert?

Hello all.I have the same problem (with the lines ) at my DIP204 LCD.I
am using windows xp.How can i solve this problem?Can you pleas give me
some help?
Thank you.

von René (Gast)


Lesenswert?

@ Johannes

Kannst Du mir mal dein geändertes file zukommen lassen?
Habe uczh ein DIP von lcd-Module mit KS0073 und verzweifle.

Ciao René

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.