Titelbild Mikrocontroller

16.5.5. Kontrolleinheit

Die Kontrolleinheit überwacht den TWI Bus und erzeugt Antworten in Abhängigkeit der Einstellungen im TWCR TWI Control Register. Wenn ein Ereignis auf dem TWI Bus die Aufmerksamkeit der Applikation erfordert, wird dies durch das TWI Interrupt Flag (TWINT) signalisiert. Im folgenden Taktzyklus wird das TWI Status Register (TWSR) mit den Informationen gefüllt, die den Status identifizieren. Das TWSR enthält nur dann relevante Informationen, wenn das TWI Interrupt Flag gesetzt ist. In allen anderen Fällen enthält das TWSR einen speziellen Satuscode, der signalisiert, dass keine relevanten Statusinformationen vorliegen. So lange, wie das TWINT Flag gesetzt ist, wird die SCL Leitung auf Low gehalten. Dies erlaubt der Applikations Software die laufende Aufgabe zu beenden, bevor die TWI Übertragung fortgesetzt wird.

Das TWI Flag wird in folgenden Fällen gesetzt:
  • Nachdem das TWI eine Start / wiederholete Start Bedingung gesendet hat
  • Nachdem das TWI eine SAL+R/W gesendet hat
  • Nachdem das TWI ein Adressbyte gesendet hat
  • Nachdem das TWI das Schiedsgericht verloren hat
  • Nachdem das TWI durch die eigene Slave Adresse oder einen Rundruf adressiert wurde
  • Nachdem das TWI ein Datenbyte empfangen hat
  • Nachdem eine Stopp oder wiederholte Start Bedingung empfangen wurde, während der Baustein noch als Slave adressiert war.
  • Wenn ein Busfehler durch eine illegale Start oder Stopp Bedingung aufgetreten ist.
Impressum