LCD DIP204 Problem

Gast #90413
Lesenswert?
• ▲
▼
Hallo,

wir verwenden das LCD Modul EA DIP204-4 (Kontroller KS0073) von
Electronic Assembly mit 4 zeilen und 20 Zeichen pro Zeile und einen
ATMega128.

Folgender Code ist dazu wichtig:


...



// Port für das LCD festlegen
#asm
   .equ __lcd_port=0x15
#endasm

// Includes
#include <lcd.h>
#include <delay.h>

// LCD modul initialisieren mit 20 Zeichen pro Zeile
lcd_init(20);

// Text auf LCD ausgeben
unsigned char counter = 0;

// 80 mal ein a auf das LCD einfügen
for(counter = 0; counter < 80) {
     lcd_putsf("a"); // gib a aus auf LCD
     delay_ms(300); // warte
}


...


Eigentlich sollte das Display laut Hersteller (und man kann die Stellen
auch zählen) 20 Zeichen pro Zeile enthalten und 4 Zeilen hoch sein ->
also 80 Zeichen fassen können. Das obere Programm-Snippet füllt nach
und nach das Display mit 'a', DOCH ab Stelle 13 in Zeile 1 schreibt
das LCD das 'a' auf einmal in Zeile 1 UND in Zeile 2 weiter!!! Ab da
gibt es dann ein wildes Durcheinander! Was ist da falsch? Kennt jemand
zufällig dieses Problem? Muss man vor dem 1. Schreiben auf das LCD noch
etwas anderes inizialisieren am LCD? Nromalerweise sollte es genügen,
"lcd_init(20);" aufzurufen...

Ich bin für jede Hilfe dankbar, denn es handelt sich hierbei um eine
Studienarbeit...

Gruß.
Gast #90415
Lesenswert?
• ▲
▼
Hi,

das Problem liegt darin das das IC (Ks0073) nicht 100% kompatibel zum
HD44780 ist.

In der Codesammlung findest du fertige Routinen von mir zur Ansteuerung
des Display's per SPI.

Ansonsten muesstest du mal in der Headerdatei bei dir nach den
Zeilenadressen suchen und diese richtig abaendern.


Mfg

Dirk
Gast #90417
Lesenswert?
• ▲
▼
@DIRK:

Ich habe mir deine "lcd_spi2.zip" runtergeladen. Jetzt habe ich
folgendes Problem: Woher bekomme ich die "avr/io.h"? ich habe nur die
"stdio.h". Mit der funktioniert es nicht.
Wäre super wenn du mir helfen könntest!

Gruß
Gast #90420
Lesenswert?
• ▲
▼
Hi,


das kann ich dir leider nicht beantworten.... da ich noch C Anfaenger
bin und dieses mein erstes C Projekt war. Ansonsten den Code von mir
anschaun und auf CodeVision portieren oder wie gesagt in deiner
Headerdatei die Zeilenadressen suchen und abaendern.

Mfg

Dirk

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren