LCD mit Fleury-lib + ATMega32

Gast #238337
Lesenswert?

Hallo,

Ich weiß, hier geistern schon etliche Beiträge zu dem Thema LCD mit der
Fleury-Lib herum, die konnten mir aber alle nicht weiter helfen.

Ich habe folgende Konfiguration:

Ein einfaches 4*16 Zeilen-LCD-Display von Reichelt (sollte doch
kompatibel sein zu der Libary oder!?) [Im Datenblatt steht Controller:
"KS0070B"].

Folgendermaßen angeschlossen (an einen ATMega32):
RS  > PA0
RW  > PA1
E   > PA2
DB4 > PA3
DB5 > PA4
DB6 > PA5
DB7 > PA6

Die Einstellung (makefile + lcd.h) und die int main() alles im Anhang!

Wenn ich das dann kompiliere und mit PonyProg rüber lade bleiben
immernoch die beiden schwarzen Balken und "Hallo Welt!" kommt schon
gar nicht ;-).

Ich weiß wirklich nicht woran das liegen soll...

Noch eine Frage, kann ich des R/W auch unbeschaltet lassen, wenn ich
nicht lesen will, oder funktioniert die Lib dann nicht mehr?

Kennt ihr noch ne andere LCD-Lib, mit der ich es auch mal testen
könnte?

Ich hoffe, ihr könnt den Fehler finden, vielen Dank schonmal.

Grüße, Jan.
Angehängte Dateien:
Moderator Persönliche Seite #238339
Lesenswert?

> Noch eine Frage, kann ich des R/W auch unbeschaltet lassen, wenn ich
> nicht lesen will,...

Du willst immer lesen können, das BUSY-Flag nämlich.

Man kann eine Ansteuerung auch so schreiben, dass sie ohne BUSY
auskommt (keine Ahnung, ob die Fleury-Variante das kann), aber dann
verplempert man unnötig Zeit in Wartezyklen, da man mit dem Timing
von pessimistischen Annahmen ausgehen muss, obwohl das Display
eigentlich schon lange wieder ready-to-go wäre.
Gast #238342
Lesenswert?

Jetzt hab ich grade gesehen, da erscheint des "Hallo Welt!" sogar,
aber nur ganz schwach unter dem oberen schwarzen Balken... Sehr
komisch... Passt da was mit dem Initialisieren viell. nicht!?
Gast #238344
Lesenswert?

Hallo Jan,

ich hatte mal Probleme mit einem 2x20 Display.
Der AVR (ATMEGA32) lief mit 8 MHz und das Display ging nach einen Reset
nur sporadisch.
Als ich die AVR Frequenz auf 2 MHz runtergedreht habe gings absolut
stabil nach jedem Reset!
Wohl gemerkt hatte ich natürlich die entsprechenden XTAL Angaben in der
Fleury Lib gemacht!

Grüße
Günni
Gast #238345
Lesenswert?

Bei meinem Display mit KS0073 Chipsatz musste ich damals die lcd_init
Prozedur etwas anpassen. Die letzten Commands hatte ich zu

  lcd_command(0x2C);
  lcd_command(0x0B);
  lcd_command(0x28);
  lcd_command(0x0F);
  lcd_command(0x01);
  lcd_command(0x07);

geändert.

Grüße
Gast #238346
Lesenswert?

Hi Tobias,

Danke schön, du hast mich gerettet g Es funktioniert! Ich hab schon
überlegt, ob ich ne eigene Init-Funktion schreiben soll nach
Datenblatt, dann hab ich aber erstmal hier nachgefragt und siehe da es
funktionert!

Risen Dankeschön,

Grüße, Jan.

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