External pull-up and pull-down using I/O extender?


i have arduino data logger design 8 analog pins/digital i/o pins. have 10kohm external pull-up resistors on of pins sense resistance, such thermistors. 10kohm 1% resistors lot better arduino internal pullup kind of 40kohm not it.

plus, when run one-wire sensors, 10kohm work in place of 4.7kohm required value internal pullup doesn't work.

in newer design, have 8 arduino pins want have 1 10kohm resistor connected each 1 of them. first thought of having 8-bit dip switch on board enable/disable these pullup resistors. there isn't enough space , plus, have open data logger's case , flip switches in order reconfigure. thought why not using 8-bit i/o expander? can have 1 end of resistor connected arduino pin, other end 1 i/o pin on expander. expander i2c interfaced. if want pullup, tell i/o pin output , high, or if want pulldown, tell pin output , low. if don't want resistor, tell pin input. way can programmatically change pullup/down settings.

i thought should work. anyway, there no shame in asking advice community. correct solution?

fyi, here chip considering:
http://www.adafruit.com/products/593


open datasheet.  navigate d090.  read there as 0.7v drop vdd @ modest 3ma current.  may ok 1-wire not ok thermistors.  makes pointless use 1% resistors.

you need mosfets low on resistance.  way turn wire when enabled can ignore them.



Arduino Forum > Using Arduino > General Electronics > External pull-up and pull-down using I/O extender?


arduino

Comments