sollte ohne große probleme laufen. Ich kenne kein LCD, welches mit Bascom nicht lief (jedenfalls noch keins).
Kann mir mal bitte jemand schnell sagen welches LCD von Pollin ich ohne probleme mit Bascom ansteuern kann?
Is echt dringend da wir jetzt bestellen möchten.
ich wollte mir davon 3 stück bestellen:
LCD-Modul BATRON MDL16265
2-zeiliges Text-Display mit Controller HD44100H. Durch die Printkontakte kann dieses Display einfach auf eine Loch- oder Streifenrasterplatine montiert werden.
Technische Daten:
- 2 Zeilen x 16 Zeichen Text
- integrierter Controller, Industriestandard-kompatibel
- Ansteuerung über 4-Bit- oder 8-Bit-Datenbus
- 8 benutzerdefinierte Zeichen bei einer Zeichengröße von 2,95x4,85 mm
- Betriebsspannung +5 V
- Anzeigefläche 61x15,8 mm.
Maße (BxHxT): 84x44x10 mm.
Lieferung mit ausführlicher Anleitung und Software auf Diskette.
sollte ohne große probleme laufen. Ich kenne kein LCD, welches mit Bascom nicht lief (jedenfalls noch keins).
Das was ich vorher hatte lief nicht sofort. Man musste erst irgentwelche Routinen in Bascom ändern da es sich nicht initialisieren ließ. Und das möchte ich diesmal vermeiden.
Du hast ein Controller mit den Kennung "HD44...."angegeben. Bascom hat mit diesen Exemplaren keine Probleme.
Ok danke, werde mir nun 3 stück bestellen.
Ähm ja nu hab ich das LCD hier und es will nicht richtig. Schwarze Balken werden angezeigt und ich kanna uch den Kontrast regeln, aber das wars dann auch schon.
Code:$regfile = "M8def.dat" $crystal = 3686400 Config Portd = Output Config Lcd = 16 * 1 Config Lcdpin = Pin , Db4 = Portd.3 , Db5 = Portd.4 , Db6 = Portd.5 , Db7 = Portd.6 , E = Portd.2 , Rs = Portd.7 Config Lcdbus = 4 Config Lcdmode = Port Initlcd 'initialisiert das LCD '-------------------------------------------------------------- Do 'Begin Hauptschleife Cls 'setzt Cursor in die obere Zeile Lcd "Erster Test" Wait 1 'wartet 1 sekunde Cls 'löscht LCD Wait 1 'wartet 1s und schreibt erneut Loop 'erneut aufrufen End
...war es nicht zweizeilig ?Config Lcd = 16 * 1
...und das ist nicht nötig !Config Portd = Output
Config Lcdbus = 4
Config Lcdmode = Port
habas geändert und geht trotzdem nicht ....
ist nun schon das 3. LCD was ich ausprobiere und es funzt nicht...
Hallo hardstyleroxx
Mir fällt auf das du eine recht exotische Frequenz zum Takten des mega8 verwendest. Du mußt dir bewusst sein das Bascom nicht im Stande ist bestimmte Zeiten einzuhalten, unabhängig von der Frequenz mit welcher der Controller getaktet wird. Das ist bei den C-Compilern anders, die passen die Zeiten an.
Ich vermute, sollte dein Kode richtig sein, das die Setup und Hold Zeiten die bei der Initialisierung eines LCD eingehalten werden müssen bei deiner exotischen Frequenz nicht eingehalten werden. Das Resultat, der LCD initialisiert nicht richtig. Taktest du deinen mega8 mit 8 oder 16Mhz, so dürfte das Programm funktionieren. Da du sicher die LCD-Routinen von Bascom verwendest hast du keine Möglichkeit die Parameter zu beeinflussen! Vielleicht kannst du in deiner Anwendung den mega8 konventioneller Takten und die Anpassungen an die höhere Frequenz woanders ausführen!
MfG
Hellmut
Hallo,
hatte das selbe problem auch mal gehabt. bei mir lag es an der masse. alle ports der displays die du nicht benutzt müssen gegen masse geschaltet werden. da Bascom auch kein R/W pin benötigt muss der auch an masse. ganz wichtig.
dann eventuell nochmal die restliche verkabelung prüfen. bei dir müssen sich einige kabel kreuzen. weil du das rs signal vom pin4 am display an portd.7 gibts (laut deiner definition in bascom).
dein programm ist richtig. nur das es beim zweiten aufruf nichts mehr anziegen kann weil du kein lcd " " drin hast. du löschst zwar den inhalt aber du lässt nichts mehr anzeigen, deine schleife springt dann wieder hoch und du löschst wieder den inhalt, erst dann zeist du wieder was an. das zweite cls kannste also auch weg lassen.
würde an deiner stelle erstmal nur was anzeigen lassen. nicht blinken oder so ein schnick schnack.
cu arno
Lesezeichen