CONFIG LCDPIN/de
Inhaltsverzeichnis |
Funktion
Überschreibt die PCD-Pin Zuordnung.
Syntax
CONFIG LCDPIN = PIN , DB4= PN,DB5=PN, DB6=PN, DB7=PN, E=PN, RS=PN [WR=PIN] [BUSY=PIN] [MODE=mode]
CONFIG LCDPIN = PIN , PORT=PORTx, E=PN, RS=PN
Anmerkungen
PN |
Der Name des Portpins wie zum Beispiel PORTB.2 |
PORTX |
Wenn Sie das LC-Display im 8-Bit-Modus benutzen wollen dann müssen Sie PORT benutzen. |
PIN |
Portpin der mit dem Busy-Pin verbunden ist. Der Busy-Pin wird nur vom 20x4VFD Display unterstützt. |
MODE |
Modus für das 20x4VFD Display. Möglich : 0 : 4 bit parallel upper nibble first 1 : 4 bit parallel lower nibble first |
Mit diesem Befehl können Sie die PIN-Standardwerte überschreiben so dass eine zweite Konfiguration weitere Pins für ein zweites LC-Display ermöglicht.
Der CONFIG Befehl sollte bevorzugt werden gegenüber der Nutzung der Standardwerte von BASCOM weil es im Programmcode klarer darstellt welche Pins benutzt werden. Mit dem CONFIG Befehl werden die Standardwerte überschrieben.
PIN und MODE gibt es nur für das 20x4VFD display. Siehe auch LCDAUTODIM
Der WR Pin ist optional. Wenn Sie den WR Pin selektieren dann wird eine andere Library benutzt. Diese Library nutzt den WR-Pin und liest das Busy-Signal vom LC-Display.
Die Library lcd4busy_anypin wird benutzt welche auf Lucianos LUC_lcd4busy Library basiert.
Seit der Version 2040 generiert der Compiler LCD Portpin-Infos die Sie für Ihre eigenen Libraries nutzen können.
Standardmäßig ist der WR-Pin optional und das WR-Signal des LC-Displays sollte mit Gnd verbunden werden. Dadurch bleibt ein Pin für andere Zwecke frei. Wenn Sie genügend Pins frei haben dann ist es besser, den WR-Pin zu benutzen.
Wenn Sie den WR-Pin nicht mit Gnd verbinden sondern mit einem Pin und Sie den WR-Pin nicht spezifizieren aber Sie einen Logic-Level 0 per Programm setzen dann müssen Sie INITLCD benutzen nachdem Sie den WR-Pin auf 0 gesetzt haben.
Siehe auch
CONFIG LCD , CONFIG LCDMODE , CONFIG LCDBUS
Beispiel
'----------------------------------------------------------------------------------------- 'name : lcd.bas 'copyright : (c) 1995-2005, MCS Electronics 'purpose : demo: LCD, CLS, LOWERLINE, SHIFTLCD, SHIFTCURSOR, HOME ' CURSOR, DISPLAY 'micro : Mega8515 'suited for demo : yes 'commercial addon needed : no '----------------------------------------------------------------------------------------- $regfile = "m8515.dat" ' Benutzter Mikrocontroller $crystal = 4000000 ' Taktfrequenz $baud = 19200 ' Baudrate $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 ' default use 10 for the SW stack $framesize = 40 ' default use 40 for the frame space $sim 'Entfernen Sie &&SIM wenn das Programm gebrannt werden soll !! '$sim wird für eine schnellere Simulation verwendet. 'Anmerkung: Getestet mit PIN Mode mit 4-bit 'Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.5 , Rs = Portb.6 Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Portc.7 , Rs = Portc.6 'Settings für ein STK200 in PIN Mode 'Verbinden Sie DB4 bis DB7 des LCD mit dem LCD Anschluss des STK D4-D7 'Verbinden Sie E des LCD mit A15 (PORTC.7) und NICHT mit E des LCD Anschlusses 'Vervinden Sie RS, V0, GND und =5V des LCD mit dem STK LCD Anschluss Rem Mit dem config lcdpin Befehl kann man die Stanfardwerte überschreiben Dim A As Byte Config Lcd = 16 * 2 'Konfigurieren des LC Displays. 'Andere Optionen sind 16 * 4 and 20 * 4, 20 * 2 , 16 * 1a 'Wenn nichts angegeben wird dann wird 16 * 2 angenommen '16 * 1a wird benutzt für 16-Zeichen Displays mit über 2 Zeilen verteilten Adressen '$LCD = address Setzt das LC-Display in 8-Bit Mode ' Benutzen Sie das für uP mit externem RAM und/oder ROM ' weil die nicht die Portpins benutzen Cls 'Löschen des LCD Displays Lcd "Hello world." 'Anzeigen des Textes in der ersten Zeile Wait 1 Lowerline 'Positionieren auf die unterste Zeile Wait 1 Lcd "Shift this." 'Anzeigen in unterster Zeile Wait 1 For A = 1 To 10 Shiftlcd Right 'Text nach rechts verschieben Wait 1 'Etwas warten Next For A = 1 To 10 Shiftlcd Left 'Text nach links verschieben Wait 1 'Einen Moment warten Next Locate 2 , 1 'Schreibmarke setzen Lcd "*" 'Zeichen anzeigen Wait 1 'warten Shiftcursor Right 'Schreibmnarke verschieben Lcd "@" 'Anzeigen Wait 1 'warten Home Upper 'Obere Zeile Position 1 Lcd "Replaced." 'Test anzeigen (alten überschreiben) Wait 1 'wait a moment Cursor Off Noblink 'Schreibmarke nicht anzeigen Wait 1 'warten Cursor On Blink 'Schreibmarke wieder anzeigen Wait 1 'warten Display Off 'Display ausschalten Wait 1 'warten Display On 'Display einschalten '-----------------Neue Unterstützung von 4-Zeilen LC-Displays------ Thirdline Lcd "Line 3" Fourthline Lcd "Line 4" Home Third 'Gehe zu Home der dritten Zeile Home Fourth Home F 'Es reicht auch der erste Buchstabe Locate 4 , 1 : Lcd "Line 4" Wait 1 'Definition benutzerdefinierter Zeichen 'Die erste Ziffer ist die Zeichennummer (0-7) 'Die anderen Zahlen sind die Zeilenwerte 'Benutzen Sie das LCD Tool und Zeichen zu erstellen und diese Zahlen einzustellen Deflcdchar 1 , 225 , 227 , 226 , 226 , 226 , 242 , 234 , 228 ' replace ? with number (0-7) Deflcdchar 0 , 240 , 224 , 224 , 255 , 254 , 252 , 248 , 240 ' replace ? with number (0-7) Cls 'Selektiere Daten RAM Rem Es ist wichtig, dass ein CLS nach den DEFLCDCHAR Befehlen kommt weil das den LCD-Controller wieder in den Datenmode zurücksetzt. Lcd Chr(0) ; Chr(1) 'Ausgabe von benutzterdefinierten Zeichen '----------------- Benutzung einer internen Routine ------------ _temp1 = 1 'Wert in ACC !rCall _write_lcd 'auf LCD schreiben End
Languages | English • Deutsch |
---|