PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bascom LCD RW-Pin nicht auf GND



big_ben
04.06.2006, 12:31
Hallöle,
folgendes LCD-Problem:
In Bascom wird vorausgesetzt, das RW auf GND liegt.
Ich habe ein Modul, das sieht RW aber für Benutzung vor,
sprich es ist "hardwareverdrahtet" und eine Änderung der Hardware
ist NICHT geplant.

Wie kann ich es anstellen per Software Pin an dem RW hängt auf GND (resp. 0)
zu setzen?

Mit

Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , Db7 =
Porta.0 , E = Porta.4 , Rs = Porta.6

Config Pina.5 = Output
Porta.5 = 0

geht es nicht, da kommt nur Müll auf dem Display an.

Bascomversion ist 1.11.8.1

Hat jemand einen Tipp?

Danke

Dirk
04.06.2006, 12:37
Hallo big_ben,

bei mir klappte das, wenn ich nach kurzer Pause (20ms) nach dem Portx.y=0 noch einmal INITLCD gemacht habe.

Gruß Dirk

big_ben
04.06.2006, 17:42
Hallo Dirk,
besten Dank, so funzt es auch.

su0359
14.07.2006, 15:41
Hallo.
Bin aufgrund gleicher Probleme auf dieses Forum gestoßen, obwohl die Beiträge wohl älter sind. Habe aber nun die Lösung gefunden.

1. Muss der Port, wo das LCD angeschlossen ist, als Ausgang definiert werden.
2. Dann den Typ vorgeben
3. PIN-Belegung definieren
4. Übertragungsmodus
5. Anschlußmodus
...zum Schluß dann initialisieren lassen.

Bei mir wir folgender Text zur Definition und Initialisierung eingegeben

Config Portc = Output
Config Lcd = 16 * 2
Config Lcdpin = Pin , R = Portc.7 , E = Portc.5 , Db4 = Portc.4 , Db5 = Portc.3 , Db6 = Portc.2 , Db7 = Portc.1
Config Lcdbus = 4
Config Lcdmode = Port
Initlcd

danach:

Cls
Lcd "Message."

Gruß Pascal.

Marco78
14.07.2006, 21:53
Wenn man R/W sowieso mit am µC anklemmen muss/will, kann man auch gleich das Busy-Flag mit auslesen.
lcd4busy.bas in den Samples von Bascom.
Damit hat man dann auch keine Probleme mehr mit unnötigen Wartezeiten im Programmablauf.

Ich hatte auch mal das Problem, das eine ISR unter bestimmten Umständen kurz nach einer LCD-Ausgabe aufgerufen wurde und selbst auch was auf's LCD geschrieben jat.
Das fand das LCD garnicht lustig und ist dann immer abgestürzt :(
Passiert auch nicht, wenn das Busy-Flag ausgelesen wird.

Und das mit den unnötigen Wartezeiten kommt von Mark himself!

Also, wann immer es möglich ist RW mit anklemmen, außer wenn der AVR nur jede Minute die Temperatur anzeigen soll. Das ist ja nun wirklich nicht zeitkritisch ;)