Guten Tag. Ich habe hier ein Problem das mein I2C Master irgendwie rumspinnt (Siehe Bilder). Auf dem ersten Bild ist ein DS1629 über den I2C angeschlossen und gibt mir auch die gewünschten Daten. Auf dem zweiten habe ich einen ATmega8 mit einem I2C über das TwoWire angeschlossen, welcher nur bestätigt und wenn er was senden soll 0x30 sendet. Das Bit wo der Fehler auftritt ist das erste Bit des 0xAA Byte (Zweiter Befehl). Gewartet werden soll über: while (PINC1!=1) { } PINC0 ist SDA und PINC1 ist SCL. Ich habe die PORT`s dauerhaft auf 0 und ziehe wenn benötigt über das DDR auf Low.
>while (PINC1!=1) { }
PINC1 ist immer 1 weil eine Konstante;)
Hier nochmal int I2CGetAck() { int Ack; DDRC=0x02; _delay_us(3); DDRC=0x00; Ack=PINC0;
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.