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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.