Forum: Mikrocontroller und Digitale Elektronik Atmega8 und LCD funktioniert nicht!


von Christian B. (chris001)


Lesenswert?

Hallo!

Ich habe hier ein kleines Problem mit meinem Experimentierboard und dem 
dazu gehörigen LCD. Beide Komponenten sind von myAVR.

Ich habe nachstehendes Programm auf den Mega8 übertragen. Aber das LCD 
zeigt nur 16 schwarze Kästchen. Da das Licht des Displays blinkt, gehe 
ich mal davon aus das der Prozessor arbeitet.

$regfile = "M8def.dat"
$crystal = 1000000

Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , _
   Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
Config Lcd = 16 * 2
Cursor on

'Licht an PB1
lcdlicht Alias Portb.1
Config lcdlicht = Output
cls

Do
lcdlicht = not lcdlicht
waitms 500
locate 1,1
lcd "Hallo "
locate 2,1
lcd "und noch mal Hallo!"
 Loop
End

Ich habe auch schon das Testprogramm was es zu den Boards gibt 
aufgespielt.
Das funktioniert.

Was mache ich falsch?

von Andreas W. (geier99)


Lesenswert?

Hallo ,

ich kenne das Teil zwar nicht, aber ich vermute mal das hier der 
LCD-Init fehlt.

Gruss
 Andi

von smufte (Gast)


Lesenswert?

Hallo

Glaub dei Fehler liegt hier

Config Lcdpin = Pin , Db4 = Portd.4

Config Lcdpin = Pin . Db4 = Portd.4

hier muss ein Punkt stehen.

von Christian B. (chris001)


Lesenswert?

Hallo Andi!

Hab mal schnell in das Programm den Befehl:

INITLCD

eingefügt.

Funktioniert aber nicht!

Schö mit Ö...

Christian

von Christian B. (chris001)


Lesenswert?

Hallo!

In der Bascom Hilfe steht das aber auch mit "Komma"!

Es funktioniert aber bei mir auch nicht mit Punkt.

Schö mit Ö

Christian

von smufte (Gast)


Lesenswert?

$regfile = "ATtiny2313.dat"
$crystal = 1000000
$hwstack = 32
$swstack = 10
$framesize = 40
Config Lcdpin = Pin . Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , 
Db7 = Portb.3 , E = Portd.5 , Rs = Portd.6

Config Lcd = 16 * 2
Dim A As Integer
Cursor Off


Cls
Do
A = A + 1
Locate 1 , 1
Lcd "zeile a "
Locate 2 , 1
Lcd "zeile b" ; A
Loop

End

Hab auch vor kurzem ein Display bestellt. Dieser Code lief bei mir auf 
anhieb.

von Dr.PillePalle (Gast)


Lesenswert?


von müC (Gast)


Lesenswert?

Liegt der RW-Anschluss auf GND?

von Christian B. (chris001)


Lesenswert?

Hallo!

Ja der RW liegt auf GND

Den Bascom Kurs kenne ich. Der ist echt gut.
An dem Codebeispiel kann ich leider auch nichts finden was da groß 
anders wäre.

Schö mit Ö...

Christian

von Herr M. (herrmueller)


Lesenswert?

Kontrasteinstellung überprüft?

von Oliver H. (Firma: OliverHeinrichs.de) (dobson)


Lesenswert?

Herr Mueller schrieb:
> Kontrasteinstellung überprüft?

Christian Betzen schrieb:
> Aber das LCD
> zeigt nur 16 schwarze Kästchen.

Passt irgendwie nicht, Herr Müller...

von Oliver H. (Firma: OliverHeinrichs.de) (dobson)


Lesenswert?

Zuallererst einmal...

Andreas W. schrieb:
> Hallo ,
>
> ich kenne das Teil zwar nicht, aber ich vermute mal das hier der
> LCD-Init fehlt.
>
> Gruss
>  Andi

Stimmt nicht ganz.
The LCD display is initialized automatic at start up when LCD statements 
are used by your code.
If fore some reason you would like to initialize it again you can use 
the INITLCD statement.
Quelle: Bascom AVR Hilfe-Datei 1.11.9.8

Dann...

smufte schrieb:
> Hallo
>
> Glaub dei Fehler liegt hier
>
> Config Lcdpin = Pin , Db4 = Portd.4
>
> Config Lcdpin = Pin . Db4 = Portd.4
>
> hier muss ein Punkt stehen.

Stimmt DEFINITIV auch nicht. Da gehört ein Komma hin. Und sonst nix.

Überprüfe bitte deine Verkabelung noch einmal. Mit dem Init stimmt was 
nicht.

Gruß
Olli

von Giuseppe G. (Firma: ACS) (gcrax)


Lesenswert?

Hi Chris...

Frage, benutzt du wirklich auch 1MHz Quarz intern?? Und wenn, haste die 
Fuse auch beim MyAVR-Board nicht ausversehen geändert??

Ich hab deinen Code verbessert, in meinem M8 rein und er funzt :-)
hab ihn dir angehängt...

http://www.els-web.de/maxpe/LCD-anM8.rar

Sollte er trotzdem nicht laufen, dann haste irgendwo ne verbindung 
vergessen oder vertauscht...

Gib rückmeldung wie es aussieht :-)
LG, Giuse

von Christian B. (chris001)


Lesenswert?

Hi G.G.!

Mit den Fusees! Mmmmm. Ich guck mal nach. Der Atmega hat hier so rum 
gelegen.
K.a. was ich damit zuletzt gemacht habe.

Ich werde es mal austesten wenn ich gleich zuhause bin.

Bis dann...

Chris

von Giuseppe G. (Firma: ACS) (gcrax)


Lesenswert?

alles klar, sag dann grad bescheid, was passiert ist :-)
Lg Giuseppe

von Christian B. (chris001)


Lesenswert?

Hallo!

Bin gestern leider nicht mehr dazu gekommen.

Dafür heute eine gute Nachricht.

Es geht mit deinem Programm G. G.! Danke.

Also die Fuses sind i.o. Ich denke das das "wait 1" nach dem "config 
lcd" usw. es aus macht.

Danke an alle!

Schö mit Ö....

Chris

von Giuseppe G. (Firma: ACS) (gcrax)


Lesenswert?

Hallo Christian

freut mich das ich dir helfen konnte :-)
das mit dem wait, das muss nicht unbedingt sein, aber sollte, da diese 
lcds viel zu langsam bei der initialisierung sind.
dein fehler lag zum ersten darin und zum zweiten in der configzeile für 
das lcd...
eigentlich sollte mein code ja nur zu vergleichszwecken sein ;-)

wenn ich dir in zukunft wieder helfen kann, einfach mal melden...

Lg Giuse

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.