Sorry ich check das mit den Bildern irgendwie garnicht!
Hallo zusammen,
ich bin jetzt langsam am verzweifeln. ich habe mien 4x16 LCD an meinen mega8 angeschloßen und mit 4bit no busy betrieben. Zumindest wollte ich das.
Bild hier
Bild hier
Das Bild zeigt das sich die Ausgabe auf 1 1/2 Zeilen beschränkt und keinerlei Zeichen zu sehen sind.
Ich weis jatzt nicht woran das liegt. Könnte das mit dem Internen Takt von 1MHz zusammen hängen (zu langsam oder ungenau?)? Ich weis noch nicht wie ich die Fusebits im PonyProg setzten muss, um den ext. 16MHz Quarz zu nutzen, welcher mit zwei 22pF gegen Masse liegt.
Wenn sich jemand erbarmen könnte, mir einen Tip zu geben wäre ich echt dankbar.
MfG EagleStar
never touch a running system [-X
Sorry ich check das mit den Bildern irgendwie garnicht!
Ohne Angaben über den Anschluss des LCD und das verwendete Test-Programm kann man da nur raten.
Auf jeden Fall sind Kästchen da, damit hat das LCD Spannung.
Gruß Dirk
OK, dem kann ich abhelfen:
Der verwendete Code:
Der Anschluss ist wie im RN-Wissenbereich angebracht.Code:$regfile = "m8def.dat" $crystal = 1000000 $baud = 9600 $lib "lcd4.lbx" Config Lcdpin = Pin , Rs = Portc.4 , E = Portc.5 , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 Config Lcd = 16 * 4 Cls Locate 1 , 1 Lcd "*mayer-world.de*" Lowerline Lcd "1234567812345678" End
4bit Ansteuerung ohne busy (I/O)
never touch a running system [-X
Versuch 'mal am Anfang vor dem Cls ein Lcdinit.
Gruß Dirk
Lcdinit zeigt mir Bascom nicht als Befehl an (blau, fett).
Beim Compilen: Error: Unknown statement!
Sorry, lange nicht mehr Bascom geproggt.
Ist natürlich Initlcd.
Gruß Dirk
OK, das ging glatt als Befehl durch! Hatte aber leider auch keine Auswirkung.
Was meinst du zu der Fusebitsache: Weisst du wie ich die setzten muss.
Mir ist aufgefallen, dass mein Display 15 pins hat. Spielt das eine Rolle?
Das Display ist von Pollin: "LCD-Modul HLM8070"
Oder weist du was ich sonst noch ausprobieren kann?
MfG EagleStar
1. Funktioniert dein M8 überhaupt? Probier' mal ein Prog, was nur einen Portpin 1x pro Sekunde an und aus schaltet. Da kannst du dann eine LED dran hängen zum Test.Oder weist du was ich sonst noch ausprobieren kann?
2. Wenn du den M8 neu hast, läuft er auf 1 MHz intern ohne Quarz. Diese Taktfrequenz hast du ja auch in deinem Prog ($crystal) angegeben.
3. Wenn du bis jetzt nicht an den Fusebits etwas geändert hast, dann lass es auch, bis das LCD läuft. Das muss auf jeden Fall auch mit 1 MHz laufen.
Wenn du einen Quarz 16 MHz dran hast und die Fusebits auf extern-crystal umgestellt hast, dürfte er mit 16 MHz laufen. Dann must du das aber im Prog ($crystal) auch so angeben: $crystal = 16000000.
4. Wenn der M8 prinzipiell läuft (LED blinkt), dann geht's ans LCD. Melde dich dann evtl.! Für den Funktionstest lass die lcd4.lbx erst mal weg!
Gruß Dirk
Erstmal Danke für die Mühe vorweg!
1. mega8 tut, und läuft auch auf inter 1MHz, RS232 tut auch (wg Frequenz testen und so)!
2. richtig! passt!
3. gut lass ich die Finger weg. (Hab schon einen damit abgeschossen!)
4. Die Bibliothek weglassen habe ich auch schon versucht, macht aber keinen Unterschied.
Komisch nich?
Danke
MfG EagleStar
never touch a running system [-X
Lesezeichen