lcd initialisiert nur ein mal (ATmega8)

OP #4024117
Lesenswert?
• ▲
▼
Hallo zusammen,

folgendes Problem: Ich habe ein 2x16 LCD-Modul an meinen ATmega8 
angeschlossen und die Dateien lcd-routines.c /.h, die sich hier im 
AVR-GCC-Tutorial finden
(http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung)
per copy-and-paste übernommen und das Beispiel 1 kompiliert.
Hat alles prima funktioniert, ich konnte auf Anhieb 'Test' und 'Hello 
World' wunderschön auf dem Display lesen. Soweit gut. Aber dann.

Ich habe in die while-Schleife folgendes eingebaut (#include 
<util/delay.h> natürlich):
1
 _delay_ms(1000);
2
lcd_setcursor(0,1);
3
lsd_string("Haensel");
4
_delay_ms(1000);
5
lcd_setcursor(8,1);
6
lsd_string("liebt");
7
_delay_ms(1000);
8
lcd_setcursor(0,2);
9
lsd_string("Gretel");
10
_delay_ms(1000);
11
lcd_clear();

Compiler läuft durch, Prog. auf den Chip -> Zeichenmurks, verschiedene 
ooo.

Das eigentlich kuriose ist aber: Ich habe nach hin und her wieder die 
while-Schleife leer gemacht, also das originalfile wieder hergestellt - 
compilieren und übertragen geht immer (Erfolgsmeldung AVRDUDE). Jetzt 
Initialisiert aber das LCD-Modul wohl nicht mehr: Die erste Zeile zeigt 
nur helle Felder, die zweite Zeile zeigt nur die Hintergrundfarbe ohne 
Zeichen. Weder 'Test' noch 'Hello World' sind sichtbar. Woran kann es 
liegen, wenn schon alles funktioniert hat?

Ich habe leider keine Hinweise auf Probleme mit den Dateien aus dem 
Tutorial gefunden.

Vielen Dank und Grüße
Johannes
Gast #4024723
Lesenswert?
• ▲
▼
Hallo Johannes,

wäre schön wenn du hierzu mal wirklich den exakten Code 1zu1 postest den 
du verwendet hast.

Ich bezweifle dass die Funktion lsd_string()* irgendwas sinnvolles 
ausgibt.
Wobei wirre Zeichen für LSD wohl sinnvoll sein dürften ;-)

Thomas

* Es muss lcd_string() heißen, und nicht lsd_string()
OP #4025739
Lesenswert?
• ▲
▼
Hallo Thomas,

danke für die Antwort. lsd_string war natürlich ein Tippfehler, im 
Programm hatte ich es aber richtig, sonst hätte der Compiler wohl auch 
gemeckert.

Die Files, die ich angehängt habe, habe ich jetzt so compiliert und 
aufgespielt - ohne Fehlermeldung. Aber das Display zeigt wieder nur 
einen massiven Balken in der ersten Zeile und in der zweiten nichts.

Ist das Fehlerbild des Displays irgendwie typisch oder bekannt?

Schöne Grüße
Johannes
Angehängte Dateien:
Gast #4025759
Lesenswert?
• ▲
▼
Johannes Heß schrieb:
> Ist das Fehlerbild des Displays irgendwie typisch oder bekannt?

Klar, das Bild deutet darauf hin, dass das Display nicht (richtig) 
initialisiert wurde. Kann ein Software-Problem sein, aber auch an der 
Hardware liegen (z.B. Fehlendes Enable-Signal).

Viele Grüße und schnellen Erfolg :-)
OP #4025884
Lesenswert?
• ▲
▼
Es geht!!!!

Danke für Eure Hilfe. Echt ein Dreck. Ich hatte eine Stiftleiste ans 
Display gelötet, damit ich es schön auf das Steckbrett stecken kann. 
Eine der Löststellen muss gleich am Anfang gebrochen sein. Jedenfalls 
habe ich alles nochmal nachgelötet und jetzt lieben Haensel und Gretel 
sich im LSD-Rausch sinnlos blinkend.

Nochmal Danke allen.
Johannes

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.