Der Nachfolger des WDR-Computerclub mit Wolfgang Back und Wolfgang Rudolph - ...und immer ein Bit übrigbehalten!


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Demoprogramm: I²C-LCD mittels I²C-Portexpander PCF8574A ansprechen Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Dietmar, Homepage - 14.01.2021 21:09)
Dietmar nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro, Open-Maxi, Open-Mini Station
' ===========================================================================
' Demoprogramm: I2C-LCD mittels I2C-Portexpander PCF8574A ansprechen
' In OCBASIC 1.12a_e1 für Open-Maxi von Dietmar Harlos am 14. Januar 2021
' ===========================================================================

' Die Open-Maxi unterstützt das komfortable Ansprechen von I²C-LCDs. Dazu muß
' ein normales Text-LCD (HD44780-kompatibel, Industriestandard) an einen I²C-
' Portexpander PCF8574 angeschlossen und der Portexpander mit dem I²C-Bus der
' Open-Maxi verbunden werden. Die I²C-Adresse des Portexpanders PCF8574 ist
' änderbar. Dadurch wird das Ansprechen mehrerer LCDs ermöglicht. Außerdem
' kann so auch ein PCF8574A verwendet werden. Die Hintergrundbeleuchtung oder
' die von einigen LCDs verwendete 2. Enable-Leitung lassen sich vom Anwender
' setzen. Dieses Beispielprogramm demonstriert, wie ein PCF8574A anstatt
' eines PCF8574 eingesetzt werden kann, um das LCD anzusprechen. Der Vorteil
' ist, daß dadurch alle 8 Portexpander PCF8574 für die 64 Extended Ports
' der Open-Maxi übrig bleiben.

' --- Definitionen ----------------------------------------------------------

INCLUDE "omax.def"  'Definitionen für die Open-Maxi

DIM w WORD          'Eine 16-Bit-Wordvariable

' --- Hauptprogramm ---------------------------------------------------------

PrintSpc=ON         'SPACE vor einem dezimalen PRINT

End2Host=ON         'Bei Programmende gleich in den Host-Modus wechseln

' I²C-Adresse vom PCF8574A für das I²C-LCD und I²C-Bustakt setzen:

POKE i2clcdadr,&h70 'Für PCF8574A mit Adreßpins A2:A1:A0 gleich 0:0:0

POKE i2cdelay,20    'Defaultwert nach Programmstart

' I²C-LCD ansprechen, initialisieren und Demotext ausgeben:

PAUSE 2             'Vorgeschriebene Verzögerung für das LCD
LcdLight=ON         'Die Hintergrundbeleuchtung könnte invertiert sein
LCDINIT             'Setzt LcdErr auf OFF bei ACK vom PCF8574A,
IF LcdErr THEN      '  sonst auf ON
  PRINT "NoAck vom I2C-LCD"
  END
END IF
LCDCLS              'Löscht den Bildschirm
LCDCMD &b00001111   '"Display on", "Cursor on" & "Blinking on"
LCDLOCATE 0,0       'Position im 4*20-LCD
LCDPRINT "Zahl:";-12345
LCDLOCATE 1,0
w=-32768
LCDPRINT "Variable:";w
LCDPUT ASC("!")

END                 'Zurück in den Hostmodus. Neustart mit RETURN-Taste.

' --- Programmende ---------------------------------------------------------


Passender Link: Offizielle Infosite zu den OM-Mikrocontrollern

Meine Homepage: http://ccintern.dharlos.de

 Antwort schreiben

Bisherige Antworten:

Re: Demoprogramm: I²C-LCD mittels I²C-Portexpander PCF8574A ansprechen (von Joachim - 15.01.2021 18:30)