Tortillia schrieb:
> Im Tutorial wird ja LCD_PORT.6 auch nicht benutzt. Dann hätte ich da
> nämlich
>
>
>
> erwartet.
>
Da es aber nur um das Bit 7 geht, also beim LCD um das DB7,
erinnert mich dies an eine BUSY-FLAG abfrage. Also ob das LCD fertig
bzw. Bereit ist.
Scheint aber einfach aus irgend einem anderen Programmteil hier
hineinkopiert worden zu sein, da es gar nicht ausgewertet wird.
Also ein COPY & PASTE Fehler.
Aus dem Tutorial :
RW legt fest, ob geschrieben oder gelesen werden soll. High bedeutet
lesen, low bedeutet schreiben. Wenn man RW auf lesen einstellt und RS
auf Befehl, dann kann man das Busy-Flag an DB7 lesen, das anzeigt, ob
das LCD den vorhergehenden Befehl fertig verarbeitet hat. Ist RS auf
Daten eingestellt, dann kann man z. B. den Inhalt des Displays lesen -
was jedoch nur in den wenigsten Fällen Sinn macht. Deshalb kann man RW
dauerhaft auf low lassen (= an GND anschließen), so dass man noch ein
IO-Pin am Controller einspart. Der Nachteil ist, dass man dann das
Busy-Flag nicht lesen kann, weswegen man nach jedem Befehl ca. 50 µs
(beim Return Home 2 ms, beim Clear Display 20 ms) warten sollte, um dem
LCD Zeit zum Ausführen des Befehls zu geben. Dummerweise schwankt die
Ausführungszeit von Display zu Display und ist auch von der
Betriebsspannung abhängig. Für professionellere Sachen also lieber den
IO-Pin opfern und Busy abfragen.
Bernd_Stein