Forum: Mikrocontroller und Digitale Elektronik TWI Interrupt


von Andreas Mader (Gast)


Lesenswert?

Hallo!

Wird beim TWI der Interrupt im Slave Modus nur ausgelöst, wenn die
Slave Adresse stimmt oder wird zuerst allgemein der Interrupt ausgelöst
und dann erst die Adresse kontrolliert?

Danke für Antworten!

mfg Andi

von Thomas Burkhardt (Gast)


Lesenswert?

Soweit ich mich erinnere wird der TWI Interrupt (assume AVR Mega) bei
jeder Aktion aufm Bus ausgelöst. Du musst in deiner ISR das
Statusregister TWSR auswerten, um die entsprechenden Reaktionen
durchzuführen.

von Kupfer Michi (Gast)


Lesenswert?

Bei den Megas mit voller TWI unterstützung wird zwar nach jedem
vollständigen Byte ein Interupt ausgelöst, wenn man jedoch als Slave
auf eine neue Nachricht vom Master wartet so generiert die Address
Match Unit erst bei Adressübereinstimmung (ausnahme General Call) mit
TWAR einen Interupt. Dieser Interupt kann dann sogar die MCU aus dem
Sleep Modus aufwecken.

von Thomas Burkhardt (Gast)


Lesenswert?

Jo, ich habe nicht genau gelesen ;-)
Ich meinte natürlich, dass in dem Fall, wenn die Addresse stimmt bzw.
ein General Call vorliegt, trotzdem mehrere Interrupts ausgelöst
werden. Es muss auf jeden Fall das Statusregister ausgelesen werden, da
der Inhalt des Datenregisters abhängig von der jeweils verursachenden
Kondition ist.

von Kupfer Michi (Gast)


Lesenswert?

Die ganz neuen Megas haben sogar glaub ich die Möglichkeit auf
Adressgruppen als Slave Address zu triggern.

von Mader Andreas (Gast)


Lesenswert?

Danke! Ich habe einen Mega 8 und einen Mega 16! Wie schauts bei denen
aus? Bekomme ich nur einen Interrupt wenn die Slaveadresse stimmt?

mfg Andi

von Kupfer Michi (Gast)


Lesenswert?

Hmmm... und was hindert dich daran diese Frage durch Lesen des M16/M8
Datenblattes (kapitel Address Match Unit und Control Unit) dir selbst
zu beantworten?

von Mader Andreas (Gast)


Lesenswert?

Danke - habs aber zuerst nicht gefunden im Datenblatt!

Stimmt es, dass er jedesmal einen Interrupt auslöst (hätte ich aus dem
Datenblatt gelesen)?

Danke

mfg andi

von Kupfer Michi (Gast)



Lesenswert?

Hast du dir die Atmel Notes AN311 und AN315 schon durchgelesen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.