Tengo experiencia con el 74HC4094, y creo que el 74HC595 es esencialmente el mismo: la hoja de datos dice que tienen "salida de estado triple", pero eso es solo cuando el OE es bajo, entonces todos los pines están en estado.
Lo que querría es que alta sería alta y baja pondría el pin de salida en modo de alta impedancia (también conocido como tristate). Está diseñado para multiplexar botones, con el fin de guardar los pines IO en el micro.
¿Cómo lograr esto, mejor?
- ¿Hay algún otro chip con esta funcionalidad, o tal vez, cómo puedo hacerlo yo mismo?
- Pensé en agregar diodos a la salida, pero probablemente no funcionará bien, debido a la caída de voltaje.
- ¿Quizás hay alguna otra solución, como un chip específicamente diseñado para multiplexar botones?
Con los diodos, sería algo así como:
--u--+ +-------------//--+
|---data-->-| |->- to next shift reg.
uc |--clock-->-| shift register |->-
|--store-->-| |->-
| +-------------//--+
| | | |
| V V V diodes
| | | |
| |- |- |- buttons
| | | |
|-<--sense----o----o----o---
-----+
Acabo de enviar 1 a datos y luego ceros, moviendo el 1 a través de todos mis botones. El cable de "sentido" tendría un pull-down (o pull-up si los diodos estuvieran invertidos).