Forum: Mikrocontroller und Digitale Elektronik TWI/I2C AT89C5131 zweites Datenbyte soll gesendet werden


von Christian L (Gast)


Angehängte Dateien:

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

von Christian L (Gast)


Angehängte Dateien:

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?

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.