How does tri-state buffers work

Those who work with microcontrollers probably know about data buses. Only one device(memory, peripherals), that are connected to bus can work at one moment. So only one unit can have direct connection to bus besides CPU which usually is a host. So decoding circuit determines the desired unit and connects it to bus. Other devices are effectively disconnected so that they wouldn’t have any affect to bus operations. They are carried out by tri-state buffers.

Tristate buffers allow to isolate circuits from data bus. This means that circuit is switched to high impedance state. Usually we know dual state circuits that can have two logical levels “0” and “1”. But there is also widely used tristate logic, where is ability to switch I/O to high impedance state.

Tristate logic can simply be made by two transistors:



Using such circuit we can have following output results according to input variations:


Q1 Q2 Output

OFF OFF High Impedance




Simply speaking when output pin is in high impedance state it is physically disconnected from circuit.



  1. Very use full and interesting very helpfull. nice work

  2. I think that doesnt work.. Q2 off always result un HZ

Leave a Reply