Hallo µC-Freunde,
ich bin neu hier angemeldet und das ist also mein erster Hilferuf. :-)
Ich habe an den TWI Pins PC.0 und PC.1 eines ATmega16 per PCF8574 ein
Text-LCD angeschlossen. Das funktioniert mit folgendem Code auch so wie
es soll.
1 | $regfile = "m16def.dat" 'ATmega16-Deklarationen
|
2 | $lib "Lcd_i2c.lib"
|
3 | $crystal = 3686400
|
4 | $hwstack = 100 'Quarz Frequenz
|
5 |
|
6 | Const Pcf8574_lcd = &H40
|
7 | Config Scl = Portc.0
|
8 | Config Sda = Portc.1
|
9 |
|
10 | Dim _lcd_e As Byte
|
11 | _lcd_e = 128
|
12 |
|
13 | Cls
|
14 | Locate 1 , 3
|
15 | Lcd "1234567890"
|
16 |
|
17 | End
|
Wenn ich jetzt nur die I2C Pins auf PC.4 & PC.5 ändere und das LCD
umklemme, funktioniert es leider gar nicht mehr. PullUps sind vorhanden.
1 | $regfile = "m16def.dat" 'ATmega16-Deklarationen
|
2 | $lib "Lcd_i2c.lib"
|
3 | $crystal = 3686400
|
4 | $hwstack = 100 'Quarz Frequenz
|
5 |
|
6 | Const Pcf8574_lcd = &H40
|
7 | Config Scl = Portc.4
|
8 | Config Sda = Portc.5
|
9 |
|
10 | Dim _lcd_e As Byte
|
11 | _lcd_e = 128
|
12 |
|
13 | Cls
|
14 | Locate 1 , 3
|
15 | Lcd "1234567890"
|
16 |
|
17 | End
|
Danke für einen hilfreichen Tipp