Many CPLDs have a handy feature which will weakly drive pins toward their present state, so that a pin which is weakly pulled high will pull high and one which is weakly pulled low will pull low. Are there any convenient ICs which will perform that function without needing a CPLD or a bunch of resistors? A possible design for a 14-pin part would be to have eight "bus" pins with "weak" drivers, VDD and VSS, and two pairs of mode pins controlling four bus pins each. The mode pins would select one of four bus modes:
- 00 - Open-circuit (no pull-up or pull-down)
- 01 - Unconditional weak pull-down
- 10 - Unconditional weak pull-up
- 11 - Pull-up or pull-down based upon current pin state
Such a part could be used for bus-keeper applications, and also for things like low-power polling of switches (with the pull-up/pull-down modes). Does anything like that exist?