Hi, ich benutze den STM32F411CE mit einem MPU9250 Sensor. Nach einiger Zeit tritt am I2C2 ein sporadisches Busy Flag auf, nach 10 min, 30min manchmal auch nach 3 Std. Ich hab 4,7k für die Pullups und 100R als Serienwiderstand. Ich weiß einfach nich mehr woran es liegen kann. Der Bus läuft mit 400kHz. Ich kann auch das Busyflag / I2C nicht resetten, das klappt nur wenn ich wirklich komplett die Spannungsversorgung einmal trenne. Könnte mir vielleicht jemand einen Tipp geben? (Setup: Eclipse, FreeRTOS, I2C Sensor und Ausgabe via USB VCOM) VG E
Hallo, Die Peripherie läst sich auch einzeln über die RCC rücksetzen, das sollte auch ausreichen. In der Cube Lib sind entsprechende Macros. Dieses sporadische Busy Flag hatte ich auch schon hi und da. ich hab das aber immer im Zusammenhang mit solchen Aktionen, wie Oszi Tastkopf an / abklemmen oder ähnliches gesehen, ohne aber wirklich einen Grund auszumachen. Im Errata des 405 (den ich benutzte) steht auch davon etwas drin, dass das Busy Flag kommt, wenn auf dem Bus unerwartet eine Stop Bedingung erkannt wird. Allerdings wo soll die her kommen. mfg
_HAL rcc i2c1 force reset hats gebracht :). Der BuS kann resettet werden. dad Busyflag taucht halt auf aber da muss ich einfach mal wegen den PullUps schauen. die Leitung ist scheinbar sehr empfindlich. dafür kann ich jetzt wenigstens die sache resetten und neustarten.
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.