Frage zu TWI im ATMega

OP #1151271
Hallo,
hab da mal ne einfache Frage zu TWI. Habe einen Master und viele Slaves. 
Der Master fragt nun den Slave nach Daten, der sendet fröhlich. Jetzt 
hat der Slave keine weiteren Daten und will das dem Master mitteilen, 
ohne ein eigenes Protokoll in die Daten implementieren zu müssen (sowas 
wie ein Escape-Zeichen).
Der Slave kann ja ein ACK senden oder nicht (NACK), aber auch wenn ich 
ein NACK sende sagt mir die Rückgabe auf dem Master, dass es ACK 
empfangen wurde.
Erstmal die Frage ob TWI das überhaupt unterstützt und wenn ja wie ich 
das bauen muss.
#1151295
Hallo,

in der Richtung geht das nicht so, denn
der eine sendet die Daten der andere sendet das ACK oder NACK.
In Deinem Fall sendet der Slave die Daten, und der Master sagt ACK, weil 
er es empfangen hat.
Erst wenn der Master keine Daten mehr haben will, macht er ein NACK, und 
der Slave hört auf.
OP #1151299
OK, das heißt wenn ich verswchiedne große Daten senden will muss ich mir 
was einfallen lassen. Eigene Paketstruktur oder jede Slave muss zu 
Beginn als erstes übertragen wie viele Daten er zur Verfügung hat und 
der Master holt sich dann diese Anzahl an Daten.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 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.