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
>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!
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!
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
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.