Hallo,
ich habe einen einen PCF 8574 wie folgt angeschlossen:
Vcc und GND ganz normal, die drei Adressports alle auf Masse gelegt, von den 8 Portpins hab ich einen auf Masse gelegt, 3 haben keine Verbindung und 4 Stück sind jew. an die Ausgänge von IS471 Sensoren angeschlossen.
Ich lese über I2C ganz normal aus. Klappt auch recht gut. Jedoch schleicht sich da ca. jeden fünften Wert eine "65" ein, die da eigentlich nichts verloren hat. --> seltsam
Aber das richtig lustige kommt noch:
Ich will die Interruptleitung verwenden. Die hängt über 10k an Vcc und direkt auf einen Int Pin vom µC. Der Int wird als low aktiv angegeben. Also ständig 5V bis eine Änderung registriert wird. Dann zieht das IC die Leitung auf Masse. Zurückgesetzt wird der Int entweder durch ein Schreib/Lesevorgang dieses Ports, der den Interrupt ausgelöst hat oder ein Erneutes Ändern zum alten Zustand.
Und jetzt bin ich mal gespannt auf eure Erklärungsversuche: Ich hab nämlich auf der Int Leitung ein Takt! Verhältnis low zu high oder high zu low ist ca. 1:5. Es ist komplett willkürlich, ob low oder high nach anschalten den größeren Anteil hat.
Und man beachte, es gibt keinerlei Änderung der Eingangssignale! (oder vllt. doch die in der Luft hängenden Pins?)
Lasse ich nun ein Sensor auslösen, fällt der Takt zusammen und es ergibt sich ein 0V Pegel, der Int löst also wunderbar aus. Nach Wiederherstellung des Eingangssignals erscheint wieder dieser seltsame Takt auf meiner Int-Leitung. Auch bei einem Lesevorgang erscheint der Takt wieder. (Der Int resetet also auch wunderbar).
Hat einer eine Erklärung dafür?
Gruß Hacker
Lesezeichen