74HCT244 UART level translator, how would the circuit look

atmellevel-shiftingraspberry piuart

I am building a UART 3.3V to 5V Level translator between a Raspberry Pi and a ATMega328.

The 74HCT244 is my choice of translator but I can't find a good example of of hooking it up.

  1. Am I right that I should power it with 3.3V(VCC)?
  2. Output enabled(Grounded)
  3. 3.3v TX on Input 1.This should Output 1 at 3.3V to the ATMega328 that can work with 3.3V logic.
  4. 5v RX on Input 2 with Output Enabled. Connecting Output 2 at 3.3V to the RPI.

Number 4 to me is the bit I am not certain about. If I run the VCC at 3.3V will the input pins accept voltages above VCC.

Best Answer

Instead of the 74HCT744, you could use a chip specially made for this, such as the TI TXB0104. SparkFun makes a convenient breakout board for this chip, priced at only $4, so you don't have to deal with as SMT part.

enter image description here

From the SparkFun description:

This 4-bit noninverting translator uses two separate configurable power-supply rails. The A port is designed to track VCCA. VCCA accepts any supply voltage from 1.2V to 3.6V. The B port is designed to track VCCB. VCCB accepts any supply voltage from 1.65V to 5.5V. This allows for universal low-voltage bidirectional translation between any of the 1.2-V, 1.5-V, 1.8-V, 2.5-V, 3.3-V, and 5-V voltage nodes. VCCA should not exceed VCCB. We have broken out each pin on this module for you to easily access both the A and B ports.

So you want to supply VCCA with 3.3v and VCCB with 5v.