Forum: Mikrocontroller und Digitale Elektronik EFM32 I2C Startup hängt


von Weezer81 (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe folgendes Problem bei einem EFM32ZG222F32 Zero Gecko :

Nach dem Startup ( init der Hardware abgeschlossen und Programm läuft 
bereits in der main loop) versuche ich über I2C Daten auszulesen.

Beim ersten Leseversuch passiert allerdings gar nichts, die ISR des I2C 
Busses wird nicht angesprungen.

Erst ab dem zweiten Versuch und jedesmal danach, funktioniert das 
Auslesen des Busses.

Auslesen tue ich das ganze über eine I2C USB Elite Schnittstelle mit 
Windows software.

Der Fehler der hier erscheint ist "timeout with no start".

Laut DAtenblatt soll bei jeden Startup init der Busy Status des I2C Bu 
gecleared werden, damit der Bus sich im Idle Zustand befindet. Dies 
geschieht auch im init code.

Ich habe den Code als Anhang mal beigefügt. Vielleicht fällt dem ein 
oder anderen noch etwas ein.

Vielen Dank im Voraus.

von ♪Geist (Gast)


Lesenswert?

Mal ohne "I2C0->CMD = I2C_CMD_ABORT;" probiert? Wenn ich dazu den 
Kommentar durchlese, kann es durchaus daran liegen.

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.