I'd like to use the PCF8574 I/O Expander in a design, however I'd like the I2C address to be set in the field. Since the datasheet specifies that A0-2 should be connected directly VDD or VSS and that no pull-up is required, can I use the following circuit to physically select the address?
Edit: So based on the comments, A0-2 may have internal pull-up resistors. If that's the case, the circuit could be simplified to this:
Best Answer
The datasheet is rather vague on the subject, but it appears that the A0-A2 lines have internal pullups.
If this is really true, then connect your switches between the address lines and ground. A closed switch forces the line low, and a open switch allows it to float high due to the internal pullup.
You might want to send email to your local TI field application engineer and ask for clarification on whether these inputs really have internal pullups or not. The wording around that in the datasheet is quite poor, and it wouldn't hurt for the FAE to bring this back to the factory to have it fixed.