-
-
Erfahrener Benutzer
Fleißiges Mitglied
Hi,
der prinzipielle Fehler ist, das Du am TWEA Bit nicht ablesen kannst, ob der Slave ein Ack gesendet hat. Das bekommst Du nur heraus, wenn Du das Statusregister TWSR auswertest. Also jedes mal, wenn die Warteschleife mit dem TWINT gelaufen ist prüfen, ob der Istzustand der gewollte ist, nach dem START-Request z.B. macht es nur Sinn weiterzumachen, wenn eine 0x08 im TWSR steht. Sonst springst Du in Deine Error-Schleife und läßt Dir dort das TWSR an einem Port anzeigen, dann kannst Du einfacher debuggen.
Das TWEA Bit steuert nur, ob das eigene TWI ein ACK sendet oder nicht, es spielt im Master Transmitter Mode keine Rolle.
greetz Rajko
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen