Forum: Mikrocontroller und Digitale Elektronik Problem I2C beim LPC2148


von Thomas S. (Gast)


Lesenswert?

Hallo zusammen,
ich hab ein Problem beim der Ausführung des Stops beim I2C Interface des 
LPC2148.
void XI2C0Stop(void) {
 I2C0CONCLR = I2CSI;
 I2C0CONSET = I2CSTO; // stop I2C
 while (I2C0CONSET & I2CSTO) ; // wait stop I2C
}

Ab und zu (ich nehme an wenn ein Interrupt zwischen clr SI und set STO 
haut) wird der I2CSTO nicht zurückgesetzt und bleibt hängen. Hat den 
Effekt sonst noch jemand oder vielleicht ne Idee, was ich falsch mache ?

Vielen Dank und die besten Grüße
Thomas

von Thomas S. (Gast)


Lesenswert?

Eureka !

Man sollte bei der Verwendung von Internetquellen immer ein bisschen 
aufpassen:
 I2C0CONSET = I2CSTO; // stop I2C
 I2C0CONCLR = I2CSI;

Vertauschen der beiden Zeilen reicht, dann läufts.

Thomas

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.