Me gustaría un pestillo donde la salida solo cambie cuando ambas entradas hayan cambiado. Si solo ha cambiado una entrada, la salida del latch debe permanecer constante.
Aquí está la tabla de estado que quiero:
S R | Qnext
----+------
0 0 | Q
0 1 | 0
1 0 | 1
1 1 | Q
Lo anterior se parece a un pestillo SR estándar, excepto que el estado prohibido (1, 1) se reemplaza por un estado de espera.
¿Cómo puedo diseñar el pestillo anterior? Podría agregar algo de lógica para convertir las entradas (1, 1) a (0, 0) (por ejemplo, S' = S(~R)
, R' = R(~S)
), pero me preocupan las fallas.
Antecedentes/motivación :
Tengo un interruptor bipolar de un solo tiro (DPST) (uno normalmente abierto, otro normalmente cerrado). Supuse que cuando se activa el interruptor, el poste que se cierra rebotaría mientras que el poste que se abre no lo haría. Si esta suposición hubiera sido correcta, habría podido hacer rebotar el interruptor con el pestillo anterior.
Si mi suposición hubiera sido correcta, entonces el principal desafío habría sido el hecho de que los dos polos son picantes: el polo n. ° 1 podría cambiar antes o después de que cambie el polo n. ° 2. Esto significaría que durante una transición los polos podrían estar en cualquier estado: (0,0), (0,1), (1,0) o (1,1). Pero habría una propiedad en la que podría confiar: una vez que el cambio pasara de (0,1) a (1,0) (o viceversa), no se recuperaría. Esta propiedad habría permitido que el pestillo anterior hiciera rebotar el interruptor.
En primer lugar, su suposición de que los interruptores mecánicos se abren limpiamente es falsa. Rebotan tanto en hacer como en romper.
Sin embargo, para abordar la cuestión específica del pestillo, es simplemente cuestión de crear un pestillo SR que solo active los estados "finales" (0,1) y (1,0). El pestillo cambiará de estado la primera vez que se alcance el nuevo estado final. Si la marca ocurre primero, el rebote entre el estado inicial y (1,1) no provocará ningún cambio en el pestillo. Una vez que el otro contacto se rompe, el pestillo cambiará y se ignorará cualquier rebote a (0,0). Si la ruptura ocurre primero, entonces el enganche activará la primera marca del otro contacto y, nuevamente, se ignorará cualquier rebote a (0,0).
Un interruptor SPDT típico será de "interrupción antes de la conexión garantizada", lo que significa que incluso si se mueve la palanca lentamente, el contacto que se está abriendo podría rebotar durante un período no especificado, el segundo contacto no se cerrará hasta después de que el primer contacto se haya abierto por bien. Por lo tanto, no debería tener que preocuparse de que se cierre el segundo contacto.
Sin embargo, hay un par de puntos que puede considerar: (1) hay varias formas en que puede diseñar el circuito del interruptor para que el interruptor consuma energía cero en una condición de estado estable. Por ejemplo, en lugar de usar puertas NAND o NOR, use inversores con resistencias en la ruta de retroalimentación y use el interruptor para conectar a tierra una u otra entrada del inversor; (2) incluso con un interruptor de dos estados, el antirrebote absolutamente perfecto es imposible, porque el contacto que se está cerrando puede conducir durante un momento extremadamente breve y luego volver a abrirse por un tiempo antes de cerrarse definitivamente. Si el breve cierre inicial tiene la longitud correcta, puede perturbar el pestillo lo suficiente como para evitar que mantenga un "cero" cerrado limpio, pero no lo suficiente como para que cierre un "1" limpio. Esto podría causar una condición llamada "metaestabilidad";
david tweed
michael pruitt
Richard Hansen
Richard Hansen
Richard Hansen
brian carlton
Richard Hansen