2014/03/13(木)トランジスタによる論理反転の無い 3.3V → 5V/12V etc.. レベルシフト

昨今では、このような課題はICを使えば済むのですが、
ICを使うほどでも無いとか、使えないとか言う場合も多々あります。

今回は、ICを使うほどでも無いのと、電源電圧の問題でトランジスタによるレベルシフト(しかも、論理反転しないもの)が必要でした。

たぶん、一定の汎用性があると思います:
20140313.png

Vcc は、レベルシフト後のHレベル電圧より若干高い電圧を与えます。
ここでは例示として、 6V としましょう。

Rc は、Hレベルのときに流れる電流で電圧降下を起こすので、その電流を加味して決めます。
ここで 100μA と仮定すると、10kΩでは1V の電圧降下になります。

RB1 と RB2 は、ベース電極の電圧が、Hレベルとして判定させたい電圧 + VBE(0.6V) になるように分圧するようにします。

ここでは、RB1 と RB2 は同じ 30kΩなので、ベース電極の電圧は 3V になり、エミッタ電極の電圧が 2.4V 以上になれば、Hレベルと判定されます。

ところで、提示の回路には、ダイオードが入れてあります。
これは、回路的にVEBOを超える逆電圧が加わる可能性があったために入れたもので、通常は不要と思います。ちなみにこのダイオードを入れると、エミッタ電圧がダイオードの順方向電圧分だけシフトした形になり、更に 0.6V 低い電圧 1.8V 以上でHレベルと判定されることになります。

つまり、この回路は、トランジスタのベース・エミッタ間電圧(VBE)が 0.6V 以下なら、トランジスタは OFF(C-E間は非導通)するので、Vcc の電圧がそのまま OUT に現れ、
0.6V を超えると、トランジスタは ON (C-E間導通)するので、コレクタ電極の電圧がほぼゼロになるという動作を、エミッタ電極に与える電位差でコントロールしています。
Lレベルのとき、RC によって電流制限されるので、このときの電流にも留意する必要があります。この回路定数では、VCE(sat) を無視すると、600μA になります。

C-MOS IC の場合は問題ありませんが、TTL IC を接続する場合は、この回路定数では問題が起きると思います。RC を適宜変更してください。
RB1 と RB2 は、トランジスタの hFE分の1×10倍程度以上のアイドリング電流が流れれば十分です。あまり小さい抵抗だと、回路の消費電流が無駄になるだけですので、RC の数倍から10倍程度でいいでしょう。