Electronic – Is it possible to drive TTL inputs from 3.3v microcontroller

3.3varm

I need a quick heads up on a problem I am trying to solve at work. I'm trying to connect to a parallel data port on an interface module we use to access smart cards. The port has an 8bit input and an 8 bit output with associated strobe/ready pins. I have a microcontroller board with an ARM cortex (mbed.org) which would be perfect to interface to these ports to my PC for test purposes. The ARM board has loads of i/o but its a 3.3v part. I have used it with your typical 2 line LCD display (5v part) with no problem (I know the ARM i/o is 5v tolerant) and I can control the LCD no problem. What I'm wondering is, is it ok to assume that I can drive any 5v TTL level input from a 3.3v output pin ? I'm happy that I can read the 5v ttl levels as I said the ARM Cortex chip's documentation says it 5v tolerent. The connection will be very short (<10cm).

Best Answer

The datasheets should tell you the minimum voltage required to register as a digital high for your receiver, and the minimum voltage guaranteed at the output for a high from your sender. Just make sure they're within each other's limits.

A TTL input signal is defined as "low" when between 0 V and 0.8 V with respect to the ground terminal, and "high" when between 2.2 V and 5 V (precise logic levels vary slightly between sub-types). TTL outputs are typically restricted to narrower limits of between 0 V and 0.4 V for a "low" and between 2.6 V and 5 V for a "high", providing 0.4V of noise immunity.

http://en.wikipedia.org/wiki/Transistor-transistor_logic#Interfacing_problems