Hi!

Hab ein Problem mit I2C. Wenn ich den C Port mit C0 und C1 für SCL und SDA nehme funktioniert mein Programm nicht mehr. Andere Ports, wie z.B. B3 und B4 funktionieren. Es ist egal welches I2C Gerät ich da anschliesse.

Hab mal ein Test Programm für das LCD02 geschrieben.
Code:
'********************************
'* LCD Testprogramm I2C Version *
'********************************

Const Lcd_adr = &HC6                                        'I2C SlaveAdresse von LCD02
Const Ref = 5 / 1023                                        'Für Batteriespannungsberechnung

Dim I As Byte                                               'Zählvariable für For-Schleife
Dim S As String * 80                         'max Anzahl Zeichen. 20*4 Zeichen auf LCD
Dim A As Byte                                               'Länge des benutzten Strings ermitteln
Dim Volt As Single
Dim B As Byte                                     'Länge des restlichen Strings ermitteln

Declare Sub Lcd_clrscr()
Declare Sub Batteriespannung()

$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600

Config Adc = Single , Prescaler = Auto  
Config Scl = Portc.0
Config Sda = Portc.1

Sound Portd.7 , 400 , 450                                   'BEEP
Sound Portd.7 , 400 , 250                                   'BEEP
Sound Portd.7 , 400 , 450
Print "-------LCD TEST---------"
Print

I2cinit
Waitms 500

Call Lcd_clrscr
Call Batteriespannung

A = Len(s)
For I = 1 To A

   I2cstart

   I2cwbyte Lcd_adr

   I2cwbyte 0

   I2cwbyte S

   I2cstop

   B = A - I

   S = Right(s , B )

Next I



End



'---------------------SUB's------------------------------'
Sub Lcd_clrscr()

   I2cstart

   I2cwbyte Lcd_adr

   I2cwbyte 0                                               'Command Register

   I2cwbyte 12                                              'Command ClrScr

   I2cstop

End Sub



Sub Batteriespannung()

Local W As Word

   Start Adc

   W = Getadc(6)

   Volt = W * Ref

   Volt = Volt * 5.2941

   S = Str(volt)

End Sub
Für die Nutzung von Port B hab ich nur die zwei Zeilen mit SCL und SDA angepasst.
Wie schon gesagt, mit SCL auf B.3 und SDA auf B4 funktioniert alles, nur nicht mit C0 und C1.

Kann ein kompletter Port abrauchen, ohne dass der Rest beeinflusst wird?
Oder steig ich gerade nicht durch?

Kann mir jemand weiterhelfen?

Danke
Uli