LCD fur Dummies ;)

Gast #2665381
Lesenswert?

Servus zusammen, ich hab das Atmel Evaluationsboard und Add-on mit dem 
dazugehörigen Display mir zugelegt.
Des weitern Programmier, oder versuche ich es Mit BasCom AVR ;)
So nun meine bitte oder frage.

Irgendwie bekomme ich es nicht hin was sinnvolles auf dem Display 
anzuzeigen. Ausser irgendwelche wirren Buchstaben.

Was ist den an diesem Programm bitte falsch?


$regfile = "m16def.dat"
$crystal = 1000000
Config Lcd = 16 * 2
Lcd_db4 Alias Portb.2
   Lcd_db5 Alias Portb.3
   Lcd_db6 Alias Portb.4
   Lcd_db7 Alias Portb.5
   Lcd_e Alias Portb.6
   Lcd_rs Alias Portb.7

Initlcd
Cls



Locate 1 , 1
Lcd "1.Erfolgreicher"
Locate 2 , 1
Lcd "Displaytest"

Waitms 1500
#2665410
Lesenswert?

rk schrieb:
> Also ich hab die Beschaltung so aus dem Datenblatt zum Testprogramm
> rausgenommen.

Verstehe nicht. War das Bascom Programm beim AVR Board dabei oder wie? 
Es geht ja darum dass das LCD so an den Controller angeschlossen ist, 
wie du es im Bascom Programm reinkonfiguriert hast.

> Den Controller hab ich jetzt mal auf 16Mhz gesetzt, da ist
> es nur noch schwarz.

Hast du dabei auch die $crystal Einstellung angepasst? Die Frage war 
einfach ob der Controller tatsächlich mit der Taktfrequent läuft welche 
du bei $crystal angegeben hast. Einfach mal hochsetzen nach try & error 
bringt doch nix. Überprüf doch mal in Ruhe die angesprochenden Sachen.
Gast #2665430
Lesenswert?

cyblord ---- schrieb:
> rk schrieb:
>> Also ich hab die Beschaltung so aus dem Datenblatt zum Testprogramm
>> rausgenommen.
>
> Verstehe nicht. War das Bascom Programm beim AVR Board dabei oder wie?
> Es geht ja darum dass das LCD so an den Controller angeschlossen ist,
> wie du es im Bascom Programm reinkonfiguriert hast.
>
Nein, hab das BASCOM-Buch extra bekommen, da für mein Projekt was darin 
ist.
Also nicht zum Board.

>> Den Controller hab ich jetzt mal auf 16Mhz gesetzt, da ist
>> es nur noch schwarz.
>
> Hast du dabei auch die $crystal Einstellung angepasst? Die Frage war
> einfach ob der Controller tatsächlich mit der Taktfrequent läuft welche
> du bei $crystal angegeben hast. Einfach mal hochsetzen nach try & error
> bringt doch nix. Überprüf doch mal in Ruhe die angesprochenden Sachen.


Habe gedacht $crystal Einstellungen sind die Taktfrequenz?! Oder versteh 
ich das falsch?
#2665432
Lesenswert?

rk schrieb:
> cyblord ---- schrieb:
>> rk schrieb:
>>> Also ich hab die Beschaltung so aus dem Datenblatt zum Testprogramm
>>> rausgenommen.
>>
>> Verstehe nicht. War das Bascom Programm beim AVR Board dabei oder wie?
>> Es geht ja darum dass das LCD so an den Controller angeschlossen ist,
>> wie du es im Bascom Programm reinkonfiguriert hast.
>>
> Nein, hab das BASCOM-Buch extra bekommen, da für mein Projekt was darin
> ist.
> Also nicht zum Board.

Also musst du schauen wie das Display am Controller angeschlossen ist, 
und dies Bascom korrekt mitteilen.

>
>>> Den Controller hab ich jetzt mal auf 16Mhz gesetzt, da ist
>>> es nur noch schwarz.
>>
>> Hast du dabei auch die $crystal Einstellung angepasst? Die Frage war
>> einfach ob der Controller tatsächlich mit der Taktfrequent läuft welche
>> du bei $crystal angegeben hast. Einfach mal hochsetzen nach try & error
>> bringt doch nix. Überprüf doch mal in Ruhe die angesprochenden Sachen.
>
>
> Habe gedacht $crystal Einstellungen sind die Taktfrequenz?! Oder versteh
> ich das falsch?

Nein, die Taktfrequenz wird über die Fuse-Bits eingestellt. Mit $crystal 
teilst du diese Bascom mit.
Gast #2665496
Lesenswert?

rk schrieb:
> Wie und wo stelle ich die den ein?

http://avrhelp.mcselec.com/index.html?program_send_to_chip.htm

Dabei kann man aber einiges falsch machen. Probiere es erst einmal mit 
der eingestellten Taktrate. Sollte 1 MHz (evtl. auch 8 oder 16 sein). 
Wenn die Frequenz richtig ist (und alles andere auch) sollte auf dem LCD 
etwas zu lesen sein.

Für einen externen Quarz musst Du das FUSEBIT KLA987 verändern. Es hängt 
davon ab, ob Du einen Quarz oder einen Oszillator verwendest. Wenn Du 
das falsch angibst, ist der Mikrocontroller erst einmal tot und nur mit 
Mühe zu "retten".
Gast #2665514
Lesenswert?

Also auf dem Display ist jetzt schon was zusehen, aber net das was ich 
genau möchte ;)
Das Problem ist hier anscheinend, das der Controller "gebraucht" ist. 
Mhh mal schauen ob ich das irgendwie hinbekomme/ auslesen kann?!
#2665524
Lesenswert?

rk schrieb:
> Fuse Bits? omg
> Muss ja mal ehrlich sein, hätte net gedacht das es da soviel zu beachten
> gibt.

Muss auch mal ehrlich sein, wer denkt er könnte hoppla hopp einfach mal 
schnell Controller programmieren der irrt nunmal. Nun hast du schon eine 
fertige Hardware, mit dem Nachteil dass du davon keine Ahnung hast, und 
eine Programmiersprache welche dir ALLE internas der LCD Ansteuerung per 
eingebauter lib abnimmt, mit dem Nachteil dass du von der LCD 
Ansteuerung nach wie vor keine Ahnung hast und auch nichts lernst. Das 
geht so lange gut, wie alles funktioniert. Sobald du aber ein Problem 
hast, hast du weder von der HW noch von der SW genug Ahnung um das zu 
beheben.

ISP Programmierung, Fuses, Taktfrequenz/quellen sind absolute 
Grundlagen, die man zumindest in Ansätzen schonmal überschauen können 
sollte, bevor man mit dem Controller irgendwas anderes versucht.

gruß cyblord

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