Forum: Mikrocontroller und Digitale Elektronik kein ACK bei TWI.. / wie testen?


von TWI Anfänger (Gast)


Lesenswert?

Hallo,

Ich habe gerade einen I2C-Chip am Mega8 angeschlossen und sende

TWI-Start, (Antwort 08h) dann
die Chip-Adresse (Antwort 20h) und dann
ein Datenbyte (Antwort 30h)

Lt. Datenblatt müßte das bedeuten, daß der Slave kein "ACK" generiert 
(also gar nicht reagiert)?

Es könnte ja sein, daß der Chip ein paar Millisekunden braucht oder so.. 
Sollte ich zum Test immer zyklisch

TWI-Start -> Chip-Adresse

ODER

TWI-Stop -> TWI-Start -> Chipadresse

senden, bis Antwort 18h kommt?

Habe ich überhaupt eine andere Chance zu sehen, ob der Chip funktioniert 
/ mit mir reden will, als das ACK-Bit zu prüfen? Oszi habe ich, aber 
keiner zum Speichern..

von Xine L. (xine)


Lesenswert?

Hi,

leider kann ich Dir darauf auch keine Antwort geben, denn ich habe 
momentan exakt das gleiche Problem. Nur, dass ich 2 AVRs benutze über 
I²C verbunden.

Hast Du mittlerweile eine Antwort auf Dein Problem bekommen??? Falls ja, 
lass es mich gern wissen, denn langsam verzweifle ich hier...

Danke, Xine

von TWI Anfänger (Gast)


Lesenswert?

Ich habe es selbst herausgefunden - der Takt (definiert durch den TWI 
Vorteiler) war bei mir viel zu schnell eingestellt. Ich habe angenommen, 
es sollten so ca. 100KHz sein, aber es kann auch viel langsamer sein. 
Jetzt habe ich so ca. 10kHz und keine Probleme mehr. Das Debuggen fand 
ich nicht leicht. kannst Dir ja erstmal ein anderes TWI-Gerät nehmen, 
das sicher funktioniert (Temp.-Sensor oder so) - dann weißt Du 
zumindest, ob Dein Master funktioniert.

von Michael U. (Gast)


Lesenswert?

Hallo,

max. 100kHz können alle I2C-ICs. Natürlich darf die Leitung nicht zu 
lang sein (Kapazitäten stehen in der I2C-Beschreibung) und die PullUps 
müssen passen (Formel steht auch im AVR-Datenblatt. Innerhalb einer 
Leiterplatte sind 4,7k brauchbar, die internen PullUp des AVR sind zu 
hochohmig.

Gruß aus Berlin
Michael

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.