Hallo zusammen, die programmierung von TWI Master habe ich nach Anleitung von (Mikrocontroller.net) programmiert. Nun will ich den Slave dazu programmieren und habe ne Frage dazu. Bei SLR Mode muss ich nur die zwei Befehlssätze schreiben(siehe unten)? und er reagiert auf Befehle von Master? oder muss ich auf was bestimmtes achten? Kann mir jemand paar tips geben?? TWAR = 0x04;--> die Adresse (7Bit Adresse mit general call=0) TWCR = ((1<<TWINT)|(1<<TWEN)); Vielen Dank
Hi >Bei SLR Mode muss ich nur die zwei Befehlssätze schreiben(siehe unten)? >.... > TWCR = ((1<<TWINT)|(1<<TWEN)); Nö, falsch. Tu dir einen Gefallen und lies das Datenblatt. MfG Spess
>Nö, falsch. Tu dir einen Gefallen und lies das Datenblatt.
Hi Spess,
Schuldigung mein Fehler. Mit "SLR" meinte ich "Slave Receiver Mode"SRM.
Hi
>Schuldigung mein Fehler. Mit "SLR" meinte ich "Slave Receiver Mode"SRM.
Das meinte ich nicht.
TWCR = ((1<<TWINT)|(1<<TWEN)); löscht ein evtl.gesetztes INT-Flag und
erlaubt TWI.
Aber die Antwort (ACK) auf Erkennen der Slaveadresse (mit TWEA) wird
nicht eingeschaltet. Damit ist der Slave für dem Master nicht existent.
Und genau solche Einstellungen findest du im Datenblatt.
MfG Spess
Ja, du hast Recht. Habe den falschen bit gesetzt. TWAR = 0x04; TWCR = ((1<<TWEA)|(1<<TWEN)); Jetzt sollte es stimmen. Danke.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.