Couple of questions about buffers

HI all, long time lurker first time poster ::slight_smile: and I have a couple questions nagging me about buffer chips

first one 74HC244 vs 74HC245, I know the 244 is inverting, and the 245 is not, but its their descriptions that has me wondering "what else is different"

74HC244; 74HCT244 Octal buffer/line driver; 3-state

74HC245; 74HCT245 Octal bus transceiver; 3-state

so what is the difference tween a buffer and a transceiver, cause the 245 is often suggested as a buffer

Question 2
While piddle farting around with a memory stick pro I needed to lower the 5v arduino levels to 3v, some random thread on some random website stated "oh just use a 74HC244 or 245, run 3v into its power connection and it will shift levels tween 5 and 3v for you"

now I instantly said hogwash but hooked it up anyway, and yea what happens is the chip is passing 5v from the arduino side to the suposedly 3v outputs at 4.8 or so volts, so ...

Question 2a) what is the point of the buffer if its electrically connected enough to pass voltage from a digital output to the buffer output

2b) if I was mistaken and somehow the above does work as a level shifter, does anyone have a clue on how to do it, cause apparently I dont

thanks

A transceiver is bi-directional (for data busses), a buffer is unidirectional, for address busses.

(I think)

On the '245 each I/O pin can be either an input or output. On the '244 each
pin is either an input or output.

I do not believe that the HC is specified as 5V tolerant inputs. Not sure.
If it isn't specified as such then you may have reliability issues later.
The AHC family does have 5V tolerant inputs and can be run with
a 3V supply. Also LCX, VHC, LVC have 5V tolerant inputs.
Some manufacturers have other logic family designators. Look
for "5V tolerant inputs"

The function of the buffer is to maintain signal integrity. Usually
buffers can drive high currents so more devices can be connected
to a data line.

(* jcl *)


www: http://www.wiblocks.com
twitter: http://twitter.com/wiblocks
blog: http://luciani.org

Yeah. The 244 only goes one way. It has a tristate enable for each of it's 4 bit halves, but the innies go to the outies and that's it.

The 245 is bidirectional. You can send bits in either direction. It has a pin that enables it, and another pin that selects the direction.

On the data sheet I'm looking at, while the supply voltage is fine, the input is limited to VCC max (Vih must be less than Vcc). That could be a problem, because the 5V outputs (Voh) on an Arduino running at 5V can get higher than 3V.

A buffer does two things: it effectively provides current amplification. You put a small current in its input and it can drive a larger current on its output. It also provides re-leveling. The Vih min is less than Voh min and the Vil max is more than the Vol max. The former is much more useful than the latter. Sometimes it can isolate something "bad" happening on the output from what happens on the input. Suppose the circuit on the output is noisy, and that noise would be a problem on the input side. The buffer isolates the input from the output. You often use a buffer between a "quiet" internal bus and a "noisy" external bus.

A transceiver is bi-directional

yea well I guess thats a face palm on me

I do not believe that the HC is specified as 5V tolerant inputs. Not sure.

should be, it just cant take the current to drive older ls devices

The function of the buffer is to maintain signal integrity. Usually
buffers can drive high currents so more devices can be connected
to a data line.

See that is totally different than what I was understanding, but once I got to playing with it things were not adding up ... more on this in a moment

A buffer does two things: it effectively provides current amplification. You put a small current in its input and it can drive a larger current on its output. It also provides re-leveling. The Vih min is less than Voh min and the Vil max is more than the Vol max. The former is much more useful than the latter. Sometimes it can isolate something "bad" happening on the output from what happens on the input. Suppose the circuit on the output is noisy, and that noise would be a problem on the input side. The buffer isolates the input from the output. You often use a buffer between a "quiet" internal bus and a "noisy" external bus.

that is a pretty rock solid description

I kinda wish I didn't mention the 3v supply + 5v inputs, It didn't make since when I read it, It didn't work, and looking at how these things work I really cant see how you could even rig it, so lets scrap that (besides I already built a level shifter for that case)

now what originally got me looking at 244's and 245's was a ghetto lpt port logic analyzer, software seems ok, the hardware is basically wires coming out of the printer port BUT it was recommended by the op to use a 245 just in case, for protecting the PC if you plug it in to a higher than 5v source, and I had my doubts about that tidbit too

Would a 245 protect my pc if I accidentally touch a 15v power source? it doesnt matter after being schooled on these things I would feel better using opto's anyway

I see the practical uses of these things now, and you all have been very helpful, so thanks!

I do not believe that the HC is specified as 5V tolerant inputs. Not sure.

should be, it just cant take the current to drive older ls devices

The inputs aren't 5V tolerant when powered at 3V. The Phillips spec
is Vcc + 0.5V. So the maximum specified voltage would be 3.5V.

If you want much higher (and don't care too much about speed)
you could use zener clamps and a series resistor. This would clamp the voltage
and limit the current. A lot more parts but you would easily get to
the 15V you wanted.

(* jcl *)

The inputs aren't 5V tolerant when powered at 3V. The Phillips spec
is Vcc + 0.5V. So the maximum specified voltage would be 3.5V.

yes, that's why I regret bringing that into the question, at the moment of posting I was in a whirlwind of seeing the "best of electronics sites" on google where every other thread had conflicting information

once I got a chance to purge the garbage from my mind, read the responses, and thought about it, much came apparent

Thanks again for all the help

Ps: all this is just cloud theory atm, trying to wrap my head around a (not too distant) future project, but I will be working with upwards 15 volts and various negitive voltages scattered about the board

I don't want to slip once and have to wait 4 days till a new port card comes in, or worse fry my pci bus

yes, that's why I regret bringing that into the question,

Perfectly legitimate question. What logic family can I use to interface
a 5V system to a 3V system.

It is also useful to know when you are stocking your parts cabinet. If
you were planning on getting HC parts you may be better off
getting AHC parts.

(* jcl *)

well yea put that way it is ;D

Is there a big table that tells what the letter meanings are for the family?

Im sure its something obvious, but after a week of wire wraping my led matrix my brain is functionally shot

Im sure its something obvious

If you find something obvious let me know :wink: It seems a lot more divergent
now than it used to be.

Texas Instruments has a very good Logic Family brochure that highlights the advantages of each logic family. On-semi may have one too. On-semi is mostly SMD packages for their logic. I am not sure about the other mfgs. I try to use TI and
On-Semi.

Usually you can characterize the families with a couple of specs --
design voltage (nominal Vcc), Vcc range, output drive, and the
most important spec -- 5V tolerant inputs :wink: For high-speed applications
you will need a couple of more numbers.

Do not make the mistake of buying the fastest logic. If your system
is not designed for high-speed logic you can get poor performance
due to reflected signals.

(* jcl *)

as far as speed goes, I am still impressed with the khz range so It might be a while but that is a good point to keep in mind