i2c START direkt nach STOP ok?

Gast #4646409
nach meinen Startschwierigkeiten komme ich jetzt sehr gut voran mit 
(hardware) i2c auf dem Mega328P.

Eine Frage ist noch aufgetaucht: Wenn ich ein STOP generiere am Ende der 
Übertragung, wird ja kein Interrupt ausgelöst / das TWINT bit nicht 
gesetzt. (Siehe Datenblatt Seite 215)

Heißt das, ich kann direkt danach ein neues START generieren, und die 
Hardware wartet ggf. so lange, bis das STOP fertig ist? Oder ist das 
nicht zulässig?

also direkt hintereinander

TWCR = &B10010100 'STOP
TWCR = &B10100101 'START
(dann auf Interrupt warten)
Gast #4646435
Hi

>Eine Frage ist noch aufgetaucht: Wenn ich ein STOP generiere am Ende der
>Übertragung, wird ja kein Interrupt ausgelöst / das TWINT bit nicht
>gesetzt.

Wenn du sicher sein willst, kannst TWSTO in TWCR abfragen. Das wird nach 
gesendetem STOP zurückgesetzt.

MfG Spess
#4646440
i2c twi schrieb:
> Heißt das, ich kann direkt danach ein neues START generieren, und die
> Hardware wartet ggf. so lange, bis das STOP fertig ist? Oder ist das
> nicht zulässig?

Wenn du ein Start initiierst wird automatisch gewartet bist der Bus frei 
ist.

"The TWI hardware checks if the bus is available, and generates a START 
condition on the bus if it is free. However, if the bus is not free, the 
TWI waits until a STOP condition is detected, and then generates a new 
START condition to claim the bus Master status"
Gast #4646492
spess53 schrieb:
> Wenn du sicher sein willst, kannst TWSTO in TWCR abfragen. Das wird nach
> gesendetem STOP zurückgesetzt.

Ok, verstanden. Bis jetzt hab ich es immer nur gesetzt und nie gelesen.

Dominik B. schrieb:
> Wenn du ein Start initiierst wird automatisch gewartet bist der Bus frei
> ist.

Cool, da muss ich mich bei einem Bus mit nur einem Master (mein 
Mega328P) und einem Slave gar nicht drum kümmern. Das gefällt mir am 
Besten.. :-)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.