Forum: Mikrocontroller und Digitale Elektronik I2C lesen schlägt fehl. CLK und SDA weiterhin auf low


von Schuschu (Gast)


Angehängte Dateien:

Lesenswert?

Hey Leute bin jetzt schon seit mehreren Wochen am suchen, kann den 
Fehler im Programmcode aber nicht finden.

Nachdem ich die erste Nachricht des Slaves empfangen habe, weigert sich 
der PIC die Clock-und Datenleitung wieder auf high zu setzen.

Folgendes habe ich schon probiert.
Ich habe versucht mehr Daten abzufragen, da es ja möglich sein könnte, 
dass der Slave die Leitungen auf Low zieht, da er noch etwas hat. Leider 
ohne Erfolg. Die Clock-Leitung hört komischerweise nach einem weiteren 
Taktzyklus auf und läuft nicht weiter, Daten wurden keine mehr 
empfangen.

Vlt. kann mir jemand von euch helfen....

: Verschoben durch User
von Sepp (Gast)


Lesenswert?

Hi Schuschuh.

Ich kenne zwar den PIC nicht im detail, aber beide Leitungen auf LOW 
können auch einen "BUS Error" bedueten. (Oder der Slave kann die Leitung 
zieht, wenn er noch was zu verarbeiten hat. Das ist aber dann temporär). 
Ich hatte so einen Fall mal beim AVR, da hatte ich versehentlich den 
Status "Bus Error" nicht abgefangen. Das hat dann manchmal zu dem von 
dir geschildertem Effekt geführt.
Abhilfe: Im Buss-Fehlerfall entsprechendes Freigabe Bit setzen.
Zu Busfehlern kommt es, wenn z.B. Start - Stop hintereinander gesendet 
werden, ein Bit fehlt, usw...

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.