Was mir noch auffällt, bzw als Verbesserungsvorschlag. Mach dir Makros wie
#define sda_to_high() (PXYZ |= (1<<PXY))
#define sda_to_low() (PXYZ &= ~(1<<PXY))
dann erscheint der code leserlicher und du bist sicher, dass du immer bei SDA/SCL whatever das gleiche register beschreibst
Gruß
Georg
Lesezeichen