Pages: [1]   Go Down
Author Topic: 3.3v to 5v logic level converter  (Read 758 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi,

I know this type of thing has been posted before, but I'd like some general things cleared up.  I want to make something like this to connect an electric imp (3.3v) and an arduino uno (5v).

https://www.sparkfun.com/products/8745

The BSS138 in the schematic is described as an "N-Channel Logic Level Enhancement Mode Field Effect Transistor". 

I have a decent selection of components at home - some BJTs (2N3904, 2N3906), MOSFETs (IRF830), JFETs(TL071,TL074).
Why choose one over another?  If there's some basics I should read, please let me know.

Advance thanks,
Karol. 
Logged

Valencia, Spain
Offline Offline
Faraday Member
**
Karma: 118
Posts: 4554
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

This is what that board does: http://ics.nxp.com/support/documents/interface/pdf/an97055.pdf

You might not need that complexity though. Arduino inputs recognize 3.3V as "HIGH" and a two-resistor voltage divider will convert an Arduino output to 3.3V.
« Last Edit: April 03, 2013, 06:02:10 am by fungus » Logged

No, I don't answer questions sent in private messages...

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I need bidirectional communication, so I think the simple voltage divider is not enough. 
Logged

Valencia, Spain
Offline Offline
Faraday Member
**
Karma: 118
Posts: 4554
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I need bidirectional communication, so I think the simple voltage divider is not enough. 

With the right resistors the voltage divider should work both ways (I think).

When your 3.3V device pulls the pin low the Arduino pin is connected to ground via the upper resistor of the divider. The Arduino input has an internal pullup of around 30k. If the upper resistor of the divider is small compared to that (eg.1k)  then it should register as low.

I'd try it and see before making things more complicated.
Logged

No, I don't answer questions sent in private messages...

Pages: [1]   Go Up
Jump to: