How to use 74hc245 buffer as voltage Level Shifter?

>> Basic guide to use 74HC245 buffer

74hc245 buffer for level shifter
>> 74HC245 buffer is a high speed buffer from NXP(philips). It is used to convert voltage level of different databus in embedded systems.
>> Some time we need to connect a 3.3 volt operated device with 5 volt device. For example we have to connect ethernet controller ENC28J60 with P89v51RD2 microcontroller. In this case ethernet controller ENC28J60 is 3.3 volt compatible while P89v51RD2 is 5 volt compatible.
>> Here we can’t connect data bus(SPI data bus) of both directly. We have to convert voltage level.
>>For this we can use 74HC245 buffer from NXP.

>>Some features of 74HC245 buffer:

  • Octal bidirectional bus interface
  • Non-inverting 3-state outputs
  • Multiple package options
  • Complies with JEDEC standard no. 7A
  • ESD protection:
    • HBM EIA/JESD22-A114-B exceeds 2000 V
    • MM EIA/JESD22-A115-A exceeds 200 V
  • Specified from −40 °C to +85 °C and from −40 °C to +125 °C

>> How to use 74HC245 buffer?

  • As shown in above figure there are 20 pins in 74HC245 buffer.
  • From these 16 pins are for data, one is for VCC, one for ground, one DIR and one OE(bar).
  • VCC we can apply -0.5V to +7V. It depends on how much volt we want on data pins.
  • DIR and OE(bar) defins direction of data pins. Configuration of DIR and OE pins should be as shown in below figure.
74HC245 direction configuration
  • If you want to connect 3.3V device with 5V controller then you have to apply 3.3V VCC to 74HC245 buffer. So we will get 3.3V output at data pins of both sides.
>> You can download 74HC245 datasheet for more details. In future I will post 74HC245 proteus demo tutorial. Keep visiting Genius Devils. Also dont forget to check our proteus designs tutorials.


Incoming search terms:


  1. Lenny says:

    Using the 74HC245 in this way is not recommended.
    If you look at the data sheet, it says that the maximum logic level on the inputs should not be higher than Vcc. So, if you set Vcc to 3.3V and apply 5V to the inputs, you risk damaging the chip.
    However, the 74LVT245 is designed for the purpose of buffering between two circuits of differing voltages. That is, with the 74LVT245, you can set Vcc to 3.3V and apply 5V to the inputs without damaging the chip.

Speak Your Mind