Forum: Mikrocontroller und Digitale Elektronik BASCOM Lib für I²C LCD Modul von eBay


von Alexander K. (alexander_43)


Angehängte Dateien:

Lesenswert?

Hallo liebes Forum,
ich bin neu hier und habe auch gleich eine Frage:

Ich suche für BASCOM eine Lib, um über I²C Modul mit einem PCF8574 (von 
eBay; Bild im Anhang) ein 20x4 LCD anzusteuern.

Es gibt ja einige Libs im Internet, allerdings habe ich noch keine 
gefunden, welche mit der Anschlussbelegung des Moduls vom eBay 
übereinstimmt.

Die Anschlussbelegung des Moduls ist folgende:

P0 : RS
P1 : RW
P2 : E
P3 : Backlight LCD
P4 : D4
P5 : D5
P6 : D6
P7 : D7

Ich hoffe, ihr könnt mir helfen!

Alexander_43

von holger (Gast)


Lesenswert?

>Es gibt ja einige Libs im Internet, allerdings habe ich noch keine
>gefunden, welche mit der Anschlussbelegung des Moduls vom eBay
>übereinstimmt.

Dann kauf doch eins das passt!

von Alexander K. (alexander_43)


Lesenswert?

Leider haben die fertigen Module meines Wissens nach immer dieselbe 
Belegung und ich würde halt gerne dieses Modul verwenden, da ich es 
schon gekauft habe. Vor dem Kauf hätte ich nicht gedacht, dass das mit 
der Lib so ein Problem wird.
Vielleicht kennt ja aber auch jemand eine Lib, bei der ich die Pins 
individuell konfigurieren kann?

Vielen Dank für die Hilfe im Voraus!

von Kurt B. (kurt-b)


Lesenswert?

Sandro K. schrieb:
> Leider haben die fertigen Module meines Wissens nach immer dieselbe
> Belegung und ich würde halt gerne dieses Modul verwenden, da ich es
> schon gekauft habe.

Versuchs mal damit.

http://www.forum.g-heinrichs.de/viewtopic.php?f=12&t=73

 Kurt

von Alexander K. (alexander_43)


Lesenswert?

Vielen Dank für die Antwort!

Soweit läuft das Ganze auch, allerdings möchte ich Hardware I²C 
verwenden. Dazu habe ich die "i2c_twi.lbx" reingeladen und das config 
SCL/SDA weggelassen. Das Ganze funktioniert soweit auch. Allerdings 
bringt BASCOM mit der "i2c_twi.lbx" und ohne das config SCL/SDA mehrere 
Fehlermeldungen. Funktionieren tut es trotzdem.

Mein Problem ist nur, dass meine gemessene Bus-geschwindigkeit (Oszi an 
SCL) bei 2,85 KHZ liegt, obwohl ich Config Twi = 100000 angegeben habe. 
Da ich später noch eine DS1307 im Bus mit anschließe, kann ich maximal 1 
kHz Busgeschwindigkeit haben.

Ich hoffe, jemand weis eine Lösung für die Probleme.
Vielen Dank im Voraus!

Hier mein code:


$regfile = "M8adef.dat"
$crystal = 8000000
$hwstack = 50
$swstack = 50
$framesize = 100

'Config Scl = Portc.5 
'Konfigurieren von I2C
'Config Sda = Portc.4



$lib "YwRobot_Lcd_i2c.lib"   'YwRobot Treiber für LCD
$lib "i2c_twi.lbx"
Config Twi = 100000


'**********************************************************
'******************* Deklarationen ************************

Const Pcf8574_lcd = 126              'Adresse des I2C-LCDs
Dim Lcd_backlight As Byte  '1 = an; 0 = aus. Wird erst durch einen 
'LCD-Befehl umgesetzt!

'****************** Initialisierung ***********************

Config Lcd = 20 * 4
Waitms 300      'warte bis Kondensator bei Ta0 geladen, auch für 
LCD-Init!


'**********************************************************
'******************** Hauptprogramm ***********************

Cls
Lcd "Hello world!"
Wait 1
Lcd_backlight = 0
Locate 2 , 1
Lcd "2. row..."
Wait 2
Lcd_backlight = 1
Locate 3 , 1
Lcd "3. row..."
Locate 4 , 1
Lcd "4. row..."
End

: Bearbeitet durch User
von Alexander K. (alexander_43)


Lesenswert?

Also ich habe den Fehler selber gefunden. Laut BASCOM Hilfe muss man 
config SCL/SDA auch bei Verwendung der Hardware TWI angeben. Ich hatte 
gedacht, dass muss ich dann weglassen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.