Voltage Level Shifter - Page 1
Forum section: electronics / beginners

author: hendrix
author_rank: Contributor
timestamp: April 25, 2016, 08:54:50 am
content: Hello,As the question will probably show, I am a novice so bare with me pls...I am trying to convert a 3.3v 200Khz signal to 5v 200khz signal with minimal delay (in the ns). The signal is fed by a LPC1769 (hence 3.3v) and it needs to control another board with 5v inputs, its only one direction, so dont really need bi-directional shifting. I was recommended to use a logic level shifter. The recommendations are mostly to use 74LVC125, 74HCT125 or 4050B. However, I only have three pins to shift and would like to be able to manage the conversion without output enablers or a input voltage source, if possible.I have looked into offerings from NXP, the 74LVC3G34 and 74HCT3G34 but, as a novice, I cant tell if these would do what I want. Any recommendations?Thanks.

author: danadak
author_rank: Super Contributor
timestamp: April 25, 2016, 09:50:25 am
content: http://www.onsemi.com/PowerSolutions/parametrics.do?id=649http://www.ti.com/lit/sg/scyt129f/scyt129f.pdfSome possibilities.Regards, Dana.

author: Cervisia
author_rank: Regular Contributor
timestamp: April 25, 2016, 10:21:32 am
content: When run at 5 V, LVC devices need a high-level input voltage of at least 3.5 V, so this would not work.3.3 V is the same as a high-level TTL signal, so a 5 V device with TTL inputs works just fine. The 74HCT3G34 is exactly what you want.

author: forrestc
author_rank: Unknown
timestamp: April 25, 2016, 10:33:50 am
content: Quote from: hendrix on April 25, 2016, 08:54:50 amFirst, have you just tried to hook it up? If your expansion board has TTL threshold inputs it should just work. Without knowing your board, it's hard to guess for sure if this might work... That said:200kHz is relatively slow. My gut instinct is that you should be able to do this with a pair of transistors. Output signal from LPC1769 through a 10K resistor into the base of a NPN transistor (i.e. 2n2222). Tie emitter to ground. Tie collector to +5V through another 10K resistor. At the collector of this resistor, you'll find a 5V level shifted, but INVERTED signal. To re-invert it back to the correct polarity, wire the collector/resistor junction to the base of a second NPN transistor. Again, tie the emitter to ground, and the collector to +5V. Now you've got a +5V level shifted signal. However, you'll still need +5V. One note: Dropping the resistors to 1K may improve speed, at the expense of power consumption.Alternatively, you can also actually get away with using any 74HCT series, the reason being that the thresholds for the HCT series are 2.0V, which will definitely work with a 3.3V signal level from your LPC processor. I usually have some 74HCT14 or 74HCT04's floating around for this reason. You'll need two gates for each signal, and that 5V supply. If usually use the HCT14's just because the schmitt trigger helps clean up any noise from the wire.If you're CLOSE to the threshold you could also use the diode and pullup resistor trick, but that will only increase the top voltage by the amount of the voltage drop. Connect a fairly high Vf diode (such as a 1n4148 to your output, with the band side 'pointing' toward the LPC. Hook a 10K resistor to +5v, and the other end to your input and also hook the other end of the diode to the input. This will result in the low voltage moving upward to around 0.7V (the Vf of the diode), and the high voltage moving upward to around 4V. Since the threshold for 5V cmos is about 3.7V (and 5V TTL is about 2V), this should work fine.

author: Alex Trofimov
author_rank: Contributor
timestamp: April 25, 2016, 10:48:54 am
content: Agree with forrestc. If you have a 3.3V output and 5V input, you can just hook 'em up, it should work.If you need exactly 5V for some reason, use something of 74HC family, it's about 10ns delay, or thereabouts. There're a lot of subtleties if you use something fancier. :-)

author: danadak
author_rank: Super Contributor
timestamp: April 25, 2016, 10:57:24 am
content: http://www.interfacebus.com/voltage_threshold.htmlThis might help, eg. meeting noise margins.Regards, Dana.

author: Simon
author_rank: Unknown
timestamp: April 25, 2016, 11:42:35 am
content: is ns response time essential ?

author: Cervisia
author_rank: Regular Contributor
timestamp: April 25, 2016, 12:02:53 pm
content: Quote from: forrestcA single transistor in common-base configuration would switch much faster.

author: hendrix
author_rank: Contributor
timestamp: April 25, 2016, 12:31:12 pm
content: Thanks for the replies,I could use a single transistor, any recommendations for one?Its not time essential I guess but, two of the three pins give out commands that need to be in sync of each other, as long as thats achieved, the rest doesnt matter.

author: Cervisia
author_rank: Regular Contributor
timestamp: April 25, 2016, 12:45:33 pm
content: 200 kHz is child's play, and in any case, the delay through two identical transistors should be almost identical.You can use any random general-purpose small-signal NPN transistor that you have lying around, e.g., 2N3904, 2SC1815, BC547, S8050.

author: danadak
author_rank: Super Contributor
timestamp: April 25, 2016, 01:00:54 pm
content: Level Trans sim, attached.Regards, Dana.

author: hendrix
author_rank: Contributor
timestamp: April 25, 2016, 01:08:43 pm
content: I see...But, to save some space and some soldering, I could go with a 74HCT3G34...I have to solder 15 of these because I have 5 of these 3 pin groups, I could get away with 5 IC's, right?

author: newbrain
author_rank: Super Contributor
timestamp: April 25, 2016, 01:32:43 pm
content: Quote from: hendrix on April 25, 2016, 01:08:43 pmYes, but if you have 15 signals total, why not just two 74HCT244 (octal buffers), unless the inputs or outputs must physically be separated/isolated?If you tie the /OE pins to 0V, they are just transparent drivers; input level and propagation delays are the same as the 74HCT3G34.

author: hendrix
author_rank: Contributor
timestamp: April 25, 2016, 01:40:00 pm
content: You are right, of course, its jsut that the physical connectors that I am using are kind of large, so the PCB lanes from two buffers need to widen quite a bit, thats why I was searching for a IC to put right behind every physical connector.

author: txescientist
author_rank: Regular Contributor
timestamp: April 25, 2016, 09:44:15 pm
content: Maybe this will help:http://1.bp.blogspot.com/-pzm6yPuDXro/UiIp4_i5QxI/AAAAAAAABdg/krs8dg78Aw4/s1600/i2c-converter-schematic-alt.pnghttp://www.nxp.com/documents/application_note/AN10441.pdfRegards, Milos.

author: Marco
author_rank: Super Contributor
timestamp: April 25, 2016, 09:58:51 pm
content: Quote from: Cervisia on April 25, 2016, 12:02:53 pmEven if you added a small emitter resistor so you don't drive it into saturation a 10K resistor is going to take a while to fill the output capacitance on a standard small signal transistor.

author: Zero999
author_rank: Super Contributor
timestamp: April 25, 2016, 10:40:27 pm
content: What sort of package do you want to use?If it's through hole then the 74HCT244 would be ideal.If better signal integrity is required then there's the 74HCT7541 which is a Schmitt trigger.http://www.nxp.com/documents/data_sheet/74HC_HCT7541.pdfIf you have to have three separate packages then the 74HCT14 could be used with pins 11 & 12, 2 & 3 and 6 & 9 connected together, to form three non-inverting buffers.

author: bson
author_rank: Unknown
timestamp: April 26, 2016, 02:03:42 am
content: You can also operate the LVC/HC/HCT buffer at an intermediate voltage, like 4.25V (which is 5V with a diode drop). Low enough for LVC to see its required voltage (0.7*Vcc), yet high enough to meet the specs of the receiving end.

author: forrestc
author_rank: Unknown
timestamp: April 26, 2016, 05:08:32 am
content: Quote from: hendrix on April 25, 2016, 01:40:00 pmIf you want something pre-built:https://www.sparkfun.com/products/12009https://www.sparkfun.com/products/11771https://www.adafruit.com/products/1875https://www.adafruit.com/products/395https://www.adafruit.com/products/757