#061 SR Latch
Set/Reset latch with BJTs.
Here’s a quick video of the circuit in action:
Notes
This is a classic Set-Reset latch. See LEAP#062 SRLatchFlipper for a version of this circuit but with Arduino control and monitoring.
In this circuit:
- Switch S1 acts as “Set” (S)
- Switch S2 acts as “Reset” (R)
- Out1 is output state Q
- Out2 is inverted output state -Q
The behaviour is summarised here:
S | R | Action | Q | Q next |
---|---|---|---|---|
0 | 0 | Hold State | ~ | ~ |
1 | 0 | Set | 0 | 1 |
0 | 1 | Reset | 1 | 0 |
1 | 1 | Invalid, n/a | ~ | ~ |
Set/reset are edge-triggering pulses, and pulses only need to be long enough for the transistors to react. Repeated pulses cause no change to the output.
A power supply from 5-9V is fine.
Here’s a great animation of the circuit from wikibooks:
Ben Eater has a great video explaining SR latch behaviour:
Latch of Flip-flop?
Although terms are often used interchangeably, this circuit is strictly speaking a “latch”.
- a latch is asynchronous, and the outputs can change as soon as the inputs do
- a flip-flop, on the other hand, is edge-triggered and only changes state when a control signal transitions high to low or low to high
Construction
Credits and References
- LEAP#062 SRLatchFlipper - same project, but with Arduino control and monitoring
- S9013 Datasheet
- SR latch - wikibooks
- Flip-flop - wikipedia
- PCB heaven - demo circuit used as the basis for this project
- ..as mentioned on my blog