I have a PCA9555 in my system to expand some GPIO for LEDs and to switch some transistors, etc.
The problem I am seeing is that some of the OUTPUT pins are not read correctly by the INPUT register..
In my code I test the outputs for a stuck condition by setting the output, and comparing the output register value for that bit, to the input register. They should never disagree unless there is some external condition holding the pin. However, on this particular output, once I set it HIGH the input register ALWAYS reads "1" for the bit, even if set to "0".
I watch the output on the scope, and it always swicthes. The input register for the bit does not follow the state of the output for the pin.
What up TI?