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
Ist es auch so angeschlossen wie du es konfiguriert hast?
Programmtechnisch kann man da nicht viel falsch machen.
Läuft der Controller mit der angegeben Geschwindigkeit (10 MHz)?
Also ich hab die Beschaltung so aus dem Datenblatt zum Testprogramm
rausgenommen. Den Controller hab ich jetzt mal auf 16Mhz gesetzt, da ist
es nur noch schwarz.
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.
cyblord ---- schrieb:> Läuft der Controller mit der angegeben Geschwindigkeit (10 MHz)?
oben steht aber 1 MHz ;)
rk schrieb:> Controller hab ich jetzt mal auf 16Mhz gesetzt
Kontrollier das lieber noch mal...
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?
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.
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".
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?!
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