3.3v logic levels interface with standard TTL/CMOS logic - How to do it...

Dear Forum,

Hi, I am fairly new to the Arduino Due.

I note that the Due uses 3.3v levels. In that case, how would one interface to the standard 5v TTL levels, or the even higher voltages of CMOS? Say for instance octal data latches, Digital to Analogue Converters etc.

I thought there may be some suitable voltage translator ICs, or could be achieved with some resistors & discrete devices maybe?

Any help or advice would be greatly appreciated.

Thanks,

Simon B.

This chip looks like it could work well

Power from 3.3V, output on 5V side should go high enough to be seen as a 1.

Other variations in pin count, packages in the same family:
http://www.digikey.com/product-search/en/integrated-circuits-ics/logic-translators/2556437?k=74lvc

Interesting - digikey search for 74lvc245 brings up the thru hole part.
More general search for 74lvc does not show any thru hole parts.

"74lvc through hole" works tho.

This problem has been around since the early days of logic circuits.
When it comes to CMOS chips, There is no easy answer.
The original CMOS chips Ranged in voltage from 15V and in some cases up to 30V.
I do not recommend using the older chips. However, current CMOS chips will run at 15V or 5V.
I have never tried to run true CMOS at 3.3V. If you're referring to the 74H series which is a CMOS -based " TTL " series, They normally run at 5V, check your data sheet. Some of these chips will run fine at 3.3 V. Even if you run them at 5V, Going from 3.3 V to 5 V should not give you a problem. However, you will need a voltage divider when going in the opposite direction. A level shifter is always recommended.

All 7400 series TTL logic runs at 5V and maybe less, depending on the series. It used to be pretty easy to keep up with the 74xx series and the voltage that they would run at. Now there are two many 74xx series to keep up with. Check the data sheet for specific specifications.

Note: some TTL chips put out a small current from the input side. The output of the preceding chip either pulls it low or forces it to go high. This voltage can cause erratic output if the input is not tied to either a positive or negative voltage. If the gate is not in use, always tie the input so it produces a LOW output. For this reason a logic shifter is always recommended when going from one voltage to another.

Hope this helps.
Joe.

Note: the 74LVC245 Is a "Octal bus transceiver with direction pin with 5-volt tolerant inputs/outputs 3-State".
It is not specifically a logic shifter for individual bits. It will Shift the logic for a entire bite. Which is not recommended For a microcontroller, because any bit maybe set for output or input. If any two outputs are connected together it could cause problems or damage the microcontroller..Unless you are intending to shift one entire bite at a time, and all Bits are known to be either input or output, Do not use it.
Also note: This chip needs to be powered by 3.3 votes only.

Hope this helps.
Joe.

promacjoe:
This problem has been around since the early days of logic circuits.
When it comes to CMOS chips, There is no easy answer.
The original CMOS chips Ranged in voltage from 15V and in some cases up to 30V.
I do not recommend using the older chips. However, current CMOS chips will run at 15V or 5V.
I have never tried to run true CMOS at 3.3V. If you're referring to the 74H series which is a CMOS -based " TTL " series, They normally run at 5V, check your data sheet. Some of these chips will run fine at 3.3 V. Even if you run them at 5V, Going from 3.3 V to 5 V should not give you a problem. However, you will need a voltage divider when going in the opposite direction. A level shifter is always recommended.

Please do not confuse TTL with 7400 series, TTL is transistor-transistor logic,
period. These days noone uses TTL chips at all.

All the modern 7400 series chips are CMOS, such as 74HC, 74HCT, 74LVC, etc.

The simplest way to interwork is with specialist level-shifting chips (you can
get level shifting breakout boards from various suppliers). Some such chips
are bidirectional and can be used for busses that cross the 3.3V/5V barrier.

Another way is to use 5V-powered open-collector (open-drain) output gates when
talking to 3.3V logic from 5V logic (pull up resistor to 3.3V), or 74LVC series gates
(3.3V powered) with their 5V tolerant inputs. 74LVC gates go down to 1.8V I
think should you even need to talk to a 1.8V chip.

Going the other way there are some "high voltage open-collector" gates in the 7400
series, which can be used with pull-ups to 5V (or more?), or more simply use 74HCT gates
powered at 5V to receive 3.3V logic signals (they are guaranteed to read 2.4V
or higher as HIGH. 74HCT gates require 5V power, note, unlike 74HC gates
which can run from 2 to 6V.

" Please do not confuse TTL with 7400 series, TTL is transistor-transistor logic,
period. These days noone uses TTL chips at all. "

I don't know where you get your information, but it is wrong. 4000 series is CMOS Which predates the 7400 series and is very rarely used today. Although many 74 series chips do use you CMOS logic, For instance the 54C and 74C series was CMOS. 7400 series was primarily TTL. And if you look at the 74H series You'll find that the Numbers after the letters changed to 4xxx. The function of these numbers correspond to the 4000 series chip numbers, With very little variance. That is a 74HC4060 will have the same function as a 4060 Chip, aThe "14 stage binary counter" . But using TTL voltage specifications.
If you want I can send you a copy of a page or two from the National Semiconductor data book from 1984 to prove it. Yes I have been dealing with them that long.

The 7400 series includes but is not limited to:

74 TTL.,
74ALS advanced low-power schottky.
74AS Advanced schottky.
74S schottky.
74L Low-power TTL.
54HC/74HC/54HCT/74HCT High-speed micro CMOS,
74 LS I in VLSI CMOS,

Joe.

All I'm saying is these days the "7400 series" refers by default to the pinouts, not the
original TTL logic family (which has been obsolete for decades, firstly in favour of
"LS" and "ALS" and "F" TTL variants, and then CMOS).

New designs don't use TTL chips (with family codes "", "S", "LS", "F", "ALS" etc),
because they are out-performed comprehensively by CMOS families on all fronts
(well, perhaps there are a few special cases, but in general).

"HC", "HCT", "AC", "LVC" etc are the families of choice, so when someone talks of
a 7414 hex inverter they would typically mean a 74HC14, and quite rightly.

If you want to refer to an original TTL chip you should quote the whole part number
as in SN7414D (incidentally they are hard to find and expensive too!)

4000 series is CMOS Which predates the 7400 series

No.

If you want I can send you a copy of a page or two from the National Semiconductor data book from 1984 to prove it. Yes I have been dealing with them that long.

Oh so you are a newbee then. :stuck_out_tongue:

The 7400 series was out way before the 4000 series. The 4000 series only came in around the mid 70s, by which time the 7400 series was at least 6 years old. Note I say 7400 series that is in no letters between the 74 and the later digits. So a 7400 was a quad two input NAND gate and the 74LS00 was a pin compatible device with different characteristics. The 74LSxx came in just after the 4000 was introduced.

So to get back to the OP's questing.
The attached PDF gives you some options.

3_3vto5vAnalogTipsnTricksBrchr.pdf (953 KB)

Grumpy_Mike:
So to get back to the OP's questing.
The attached PDF gives you some options.

Really good paper should read from everyone, helps to keep equipment alive.

Follow-up to previous post: although I have been dealing with logic circuits since the mid-70s, I admit I am not up on the most current logic circuit family. So I decided to do some research and I came up with this:

Scroll down to the lower two thirds of the page and you will find a chart giving various parameters of each logic circuit family up to about 2004. These parameters include logic family, circuit speed, voltage requirements and current draw. Interesting enough that the fastest chip that was listed here was the 74 "G" series which is a TTL circuit running at 1.125 GHz.

I just thought this might help someone when choosing logic circuits for their Arduino project.

Joe.

Hope this helps too! : )

Hello, read through those comments and is amaze with it. But i still got doubt. Please help me. Im so wan the 12 bit PWM provided by the I/O pins from this arduino due. But my concern are:

  1. whether those logic level converter IC can work this 12 bits PWM? because im doing with hall sensor geared motor, worry that the accuracy will be affected.
  2. is those bi-directional converter? means if i attach all the digital pins to the converter, can i read/write data as other arduino board?
  3. can those work with analog pins?