Versuch erst mal ne Adresse zu finden mit dem Software I2C, da kann man zumindest erst mal schauen ob ein Teilnehmer am Bus ist.



Code:
$regfile = "M32DEF.DAT"
$crystal = 16000000
$baud = 9600

Config Sda = Portc.1
Config Scl = Portc.0
Config I2cdelay = 10

Dim Busaddress As Byte
Dim Busaddress_read As Byte
Dim Chipaddress As Byte
Dim Erkannt As Bit

:
'Scan bus for valid I2C addresses on bus
' ( test for ACK to come back from Busaddress )
Print "Scan start"
For Busaddress = 0 To 255
'for all even addresses
  I2cstart
  I2cwbyte Busaddress
    If Err = 0 Then
    Erkannt = 1
      Print "Slave at address: " ; Busaddress ; " Dezimal, = " ; Hex(busaddress) ; " hex"
      'Chipaddress = Busaddress \ 2
      'Print " with chip address " ; Hex(chipaddress) ; "hex"
    End If
  I2cstop
'free bus
Next
Print "End Scan"
If Erkannt = 0 Then Print "Keine I2C Teilnehmer gefunden!!"
Do
Loop
Müsste natürlich noch ein bischen angepast werden von dir