Titelbild Mikrocontroller

15.4.3 Daten empfangen

Im Anschluss an Fall M4 oben hat der Master bereits das erste Byte empfangen. Das master read interrupt Flag ist gesetzt und der Master muss sich auf den Empfang weitere Daten vorbereiten. Der Master muss jedes Byte mit einem ACK oder NACK beantworten. Wenn während der Übertragung eine Kollision auftrat und der Master die Hoheit über den Bus verloren hat, ist das arbitration lost Flag gesetzt.

Ein Codebeispiel für Master write und Master read ist in der Datei unter Beispielcode / Download zu finden (in Datei suchen nach Test TWI master write).

Und so sieht der erste Teil (Schreiben Byte AA ab Adresse 0000) aus:

Beispiel TWI

Beispiel TWI


Man erkennt die 4 Byte, die beim Schreibvorgang ausgegeben werden. Dann folgt die Wartezeit (Runterzählen von FF auf Null) in der der Bus frei ist (beide Leitungen auf H). Dann beginnt das Pollen durch ausgeben der Adresse, die zunächst nicht bestätigt wird. Adressbyte wird als 50h angezeigt, da die Adresse ja nur 7 Bit hat und das R/W Bit abgeschnitten wird.
« zurück:
15.4.2 Daten senden
» weiter:
15.5. Slave Betrieb
Impressum