TWI/I2C AT89C5131 zweites Datenbyte soll gesendet werden

Gast #3474353
Lesenswert?

Servus Leute ich habe ein Projekt zu bewältigen, das nicht sehr einfach 
zu handhaben ist. Und zwar will ich zwei Controller über TWI miteinander 
verbinden, der eine ist ein ATmega8 (Slave) und der andere ein 
AT89C5131A (Master). Das was die ganze Sache jetzt so kompliziert für 
mich macht ist, dass ich den AT89C5131A (8051 Derivat) in Assembler 
programmieren muss. Ich habe natürlich auch schon alles abgeklappert was 
google mir zu diesem Thema liefern konnte.
Ich bin dabei auf die Atmel Code Examples gestoßen (Seite 12 ff.)
http://www.atmel.com/Images/doc4353.pdf
Vom Prinzip her läuft die Übertragung vom Master (senden) zum Slave 
(empfangen), nur leider ist es mir bis jetzt nicht gelungen einen 
zweiten Datensatz an den Slave zu übertragen.
Nun meine Frage:
Wie müsste ich den Code abändern, um nach dem ersten gesendeten Byte 
(Data was transmitted ACK bit recieved) ein zweites Datenbyte zu senden.
Ich hab auch schon versucht was umzuschreiben, dies funktioniert so aber 
nicht (siehe Anhang). Ich hoffe jemand kann mir diesbezüglich 
weiterhelfen. Danke im Voraus.
Gruß Christian
Angehängte Dateien:
Gast #3474481
Lesenswert?

Ich hab hier mal ein Oszibild. Merkwürdig ist nur das die SCL Leitung 
nach dem Senden auf Low geht (nicht auf dem Bild zusehen) und auch so 
bleibt. Kann das vielleicht der Grund sein. Es sollte doch SCL und SDA 
nach einem Stopp des Masters high sein oder?
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren