1

I'm looking to understand how to convert between 3.3V logic and 12V logic, in each direction individually and bidirectionally. I know this question has been asked before, but I'm overwhelmed with the wide variety of possible answers. It seems like each of these have several different solutions.

Please consider that I'm using a 3.3V microcontroller (BeagleBone Black) on one side, and 12V relays on the other. This is not an automotive application. There will be about 50 different connections between these logic levels.

Ideally, a HIGH signal on one side would result in a HIGH signal on the other side. That is, I'd like to avoid inverting the signal.

3.3V to 12V

  1. TIP120 Transistor
  2. MOSFET
  3. Smart Highside Power Switch

12V to 3.3V

  1. Voltage Regulator
  2. Resistors + Diodes
  3. Optoisolator
  4. Use one of the relays to simply switch the 3.3V signal

Bidirectional 3.3V ↔ 12V

Here it starts to get even more complex. I'd like to find a solution such that when either the 3.3V side or the 12V side is high, the other side goes high too. That means if the 3.3V side is logic 1, the 12V side will be logic 1 to match. When the 12V side is logic 1, the 3.3V side will be logic 1 to match. If either side is high, they are both high. If they are both low, then they'll stay low until one side changes. Almost like a logical OR.

  1. Some combination of the above.
  2. Specific bidirectional translators:
  3. 2 MOSFETs + Resistors per this application note
    • Maybe this could be the MOSFET?

Which option(s) should I choose?

My head is spinning from all these options. I don't have enough knowledge to weigh these options against each other. I'm trying to avoid destroying the BBB by sourcing too much current. I'm also trying to be reasonable about cost (in terms of components and board space).

update:

It was clear from the feedback that I needed to provide more information. I thought it might be easier to correct a bad design, than to address this vague question.

I've created a "solution" to this problem here. I've requested feedback in that question. Any feedback there will address the intention behind this original question.

Nick Alexeev
  • 37,739
  • 17
  • 97
  • 230
jakekarnes42
  • 65
  • 1
  • 9
  • 3
    You don't want logic level conversion (which required fast rise and fall times), you just want to interface a relay. Please see [my previous answer on the topic.](https://electronics.stackexchange.com/questions/324795/are-bjts-suitable-for-level-shifters-it-seems-fets-are-more-common-how-do-they/324799#324799) – Janka Jan 31 '18 at 23:49
  • Those relays draw 75 mA at 12 V so they are easily driven by the ULN2003 with 7 built-in Darlington drivers in a 14-pin package. That would solve the step-up problem. Resistor dividers should be fine for the step down. You haven't given enough info for the bi-directional application. – Transistor Jan 31 '18 at 23:57
  • @Janka - I think your previous answer only covers the first category. Thanks for the tip that "logic level conversion" might not be the appropriate term. – jakekarnes42 Feb 01 '18 at 00:06
  • Define all interface switch requirements, Voltage, Current, frequency ( debounced or not), Push-Pull or SPDT or SPST or open collector etc – Tony Stewart EE75 Feb 01 '18 at 00:07
  • @Transistor - I've added some more information to the bi-directional application. Basically, if either side goes HIGH, I want the other side to match. I apologize in advance for the poor explanation. – jakekarnes42 Feb 01 '18 at 00:08
  • 2
    What circuit you need all depends on the rise and fall times, and current requirements. For bidirectional translation also stability. That's why all those different circuits exist. Specify the needs you have for the 12V→3V direction. Also those you have for the bidirectional interface: what's connected there? – Janka Feb 01 '18 at 00:30

0 Answers0