Gast
#4822175
Hallo, ich habe ein Problem mit der Kommunikation von einem Atmega1284 über I²C zu PCF8574 als Eingang. Ich sende die Adresse, bekomme ein ACK, und empfange den Eingangszustand des PCF8574, dann das STOP-Bit. Jedoch bleibt der SDA-Pegel auf LOW und mein Controller hängt sich auf. Lasse ich das Stop-Bit am Ende der Kommunikation weg (war Zufall, hatte ich vergessen), so hängt sich der Controller nicht auf. Ich kann weiter kommunizieren, jedoch bleiben bis zur nächsten Kommunikation und danach die SDA und SCL Pegel auf LOW. Zweites wäre kein Problem, weil die Kommunikation funktioniert. Aber ich bin auf den INT von dem PCF8574 angewiesen (Eingänge/Port-Zustand ändert sich), welche nur funktioniert wenn die Pegel wieder auf HIGH sind. Damit der Controller gleich reagieren kann. Ich benutze die Library für I²C von Peter Fleury. Screenshot tek00010 zeigt die Kommunikation mit STOP-Bit Screenshot tek00011 zeigt die Kommunikation ohne STOP-Bit Die Eingänge de PCF8574 liegen auf LOW. Weshalb im Datenbyte nichts zu sehen ist. Woran liegt das das die Pegel von SDA & SCL nicht mehr auf HIGH gehen?


