HD44780 + AVR mega88

Gast #819198
Hi,

hab mir ein HD44780 Display zugelegt. Hab die Anschlüsse ans STK 
kontrolliert und es sollte alles so passen wie im AVR_GCC Tut hier 
beschrieben. Hab dabei auch den PORTD gewählt also alles so gelassen wie 
es da steht. Wenn ich jetzt den Code compiliere kommt erstmal folgende 
Warning:

../lcd-routines.c: In function 'set_cursor':
../lcd-routines.c:126: warning: 'tmp' may be used uninitialized in this 
function

Optimizer ist auf -Os eingestellt, falls das wichtig ist.

Wenn ich das jetzt so in mein Controller brenne kommt nichts am Display 
an. Die Hintergrundbeleuchtung ist einfach nur an und es sind eben diese 
"schwarzen Kästen" leicht zu erkennen. Die Kontrastspannung steht auf 
dem typ. Wert von 3,4V.

Kann es was mit den delays zutun haben?:

void lcd_enable(void)
{
   // Bei Problemen ggf. Pause gemäß Datenblatt des LCD Controllers 
einfügen
   // Beitrag "Re: Bitte helft mir. Schon wieder AtMega16"
   LCD_PORT |= (1<<LCD_EN);
    _delay_us(1);                   // kurze Pause
   // Bei Problemen ggf. Pause gemäß Datenblatt des LCD Controllers 
verlängern
   // Beitrag "LCD -> Probleme mit Optimierungsgrad"
   LCD_PORT &= ~(1<<LCD_EN);
}

Hab das delay mal erhöt auf 20, hat aber auch nichts gebracht.
Wo kann hier der Fehler liegen?

Danke
jdi
Gast #819746
Hat denn noch keiner versucht das Display mit nem Mega88 zum laufen zu 
bringen?

Kann ich das nicht irgendwie ganz einfach testen? Einfach nur mal ein 
Zeichen ausgeben oder so?

Danke
jdi
Gast #819764
Immer wieder gleiches Thema - Fuses. Der ATmega88 hat außerdem noch 
einen clock divider. Also einfach mal kucken, auf welcher Frequenz der 
rennt und mit den Einstellungen für den display code vergleichen.

Gruß Matthias
Gast #819961
Hi,

guter Einwand ja. Aber er läuft mit ext. 7.3728MHz Quarz und der 
entsprechende Eintrag sieht so aus:

#define F_CPU 7372800

CKDIV8 ist nicht gesetzt.

Gruß jdi
Gast #822922
Kann doch nicht so schwer sein das Ding zum laufen zu bringen? :-/

Was sollte ich noch überprüfen? Kann man ganz einfach testen ob das Ding 
überhaupt lebt? Hintergrundbeleuchtung geht ja schonmal an.

jdi

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.