Ich hab es jetzt hingekriegt dass der M32 dem M8 etwas senden kann. Allerdings kommen keine Daten an wenn er etwas vom M8 anfordert.

Code:
$regfile = "m8def.dat"
$crystal = 8000000
$baud = 19200


Dim Send_data As Byte                                       ' was gesendet wird

Send_data = 5


Declare Sub Twi_init_slave
Declare Function Twi_wait() As Byte
Dim Twi_control As Byte                                     ' Controlregister lokale kopie
Dim Twi_status As Byte
Dim Twi_data As Byte


Twi_data = 0
Call Twi_init_slave                                         ' TWI aktivieren

Do

Twi_status = Twi_wait()
If Twi_status = &H80 Then
   Cls
   Locate 1 , 1
   Lcd "Angekommen!"
   Locate 2 , 1
   Lcd "Daten: " ; Twi_data

Elseif Twi_status = &HA8 Or Twi_status = &HB8 Then
   Cls
   Locate 1 , 1
   Lcd "Daten gesendet!"
End If



Loop

End




' TWI als slave aktivieren
Sub Twi_init_slave
    Twsr = 0                                                ' status und Prescaler auf 0
    Twdr = &HFF                                             ' default
    Twcr = &B00000100                                       ' erstmal nur TWI aktivieren
    Twar = &H40                                             ' Slaveadresse setzen
    Twcr = &B01000100                                       ' dann ACK einschalten
End Sub

Function Twi_wait() As Byte

    Twi_control = Twcr And &H80                             ' Bit7 von Controlregister

    If Twi_control = &H80 Then
        Twi_status = Twsr And &HF8                          ' Status

      ' wurde ein Byte geschickt
      If Twi_status = &H80 Or Twi_status = &H88 Then
            Twi_data = Twdr                                 ' neue Daten merken

      ' wird ein Byte angefordert
      Elseif Twi_status = &HA8 Or Twi_status = &HB8 Then
            Twdr = Send_data

      End If
      Twcr = &B11000100                                     ' damit es weitergeht

    End If





End Function
Das ist mein Code bis jetzt. Im Prinzip sind die zwei Wiki Beiträge (transmitter & receiver) zusammengefasst. Aber leider klappt es nicht!
Elseif Twi_status = &HA8 Or Twi_status = &HB8 Then <--- das is leider niemals wahr und deshalb gehe ich mal davon aus dass der Slave nichts versendet hat!

Findet jemand den Fehler?

MfG