Abend. Ich habe vor kurzem mit dem EFM32 Happy gecko angefangen.
Das ist mein erster Versuch den I2C zu benutzen. Mein Code habe ich
selbst geschrieben, aber irgendwie startet I2C überhaupt nicht.
Vllt. habe ich irgendwas vergessen:
Eine Idee:
> seq.buf[1].len=1; //receive 1 byte> seq.flags=I2C_FLAG_WRITE;
Klingt für mich komisch. Wenn du nur schreibst kannst du auch nix
empfangen -> Transfer wird nie fertig.
Oben war das noch seq.flags=I2C_FLAG_WRITE_READ;
Hm, auch mit Write_Read passiert nichts.
Ich habe meinen Logic Analyser angeschlossen, und ich sehe gar nichts.
Sieht so waus, als ob I2C modul deaktiviert ist oder so...
Dirty Gecko schrieb:> Ich habe meinen Logic Analyser angeschlossen, und ich sehe gar nichts.
Wir auch nicht. Welchen Pegel haben die I²C Leitungen denn?
Das wäre der korrekte Zustand nach einer Start Condition. Beim Startup
des Controllers muss der Logic Analyser aber IMHO kurz beide Signale auf
"1" sehen.
Tja, ich bin doof
while (status==i2cTransferInProgress){
status=I2C_Transfer(I2C0);
}
hat sofort geholfen.
Nur hing immer noch mein LA an den I2C BUs, und störte den ganzen
System...
Danke an allen