・レベルシフタというのは、5V系の回路と3.3V系の回路を接続したいときに使うやつ。なんかやるたびに調べてGはどの足だ? とかやるのがだるいのでよく使うのをまとめておく。
・ちなみに3V3っていうのは3.3Vのこと。電子工学界隈では、小数点の代わりに記号を使うという奇妙な風習がある。
5V→3.3V(単方向)
・抵抗分圧でおk。例えば [OUT/5V]-[R1.8kΩ]-[IN/3V3]-[R3.3kΩ]-[GND]
・あるいはNchMOSFETで双方向と同じように組む。5Vの方のプルアップは不要。
・レベルシフトしたい線が多いときは74HC4050*1の出番だ。6回路バッファで5Vトレラント*2。出力は電源電圧になるので、Vccを3.3Vとすると、5Vの信号を入力しても出力は3.3Vとなる。
・噂によると10kΩ抵抗介して直結でも意外と平気らしいんだけど、あんまり試したくはない。
3.3V→5V(単方向)
・HIGHのスレッショルドは2.7Vとかなのでそのまま入れておkだが、万が一5V側の内部プルアップがあったら怖いので念のため10kΩ抵抗くらいは入れとけという話。問題があるようなら以下を検討する。
- ダイオードクランプ方式:
[OUT/3V3]-[←D]-[5Vでプルアップ]-[IN/5V]
Dはショットキーバリアダイオードが望ましい。3.3V側の出力ピンに5V(からダイオードのVFを引いた電圧)が入ってしまうんだけど平気らしい。これもあんまり信用したくねえなあ。 - NchMOSFETで双方向と同じように組む。3.3Vの方のプルアップは不要。
- それ専用みたいなICを使う。74HCT125(4回路バッファ)、74LVC245(トランシーバ)、TXB0108(レベルシフタ)等
・トランジスタでもできるけど必ず反転するので省略。
5V←→3.3V(双方向)
・例えばNchMOSFETのBSS138などを使う。20個100円で売っておるな。

・足はこの形の通りに生えてる。一応SOT-23/0.95mmピッチなんだけどG~Sは足2本分の1.9mmもあるので、強引に2.54mmの普通のユニバーサル基板にそのまま実装できる模様。
・しかし、双方向ってことはつまり半二重である。今時自力でそんな面倒なことやらないだろうし、まあほとんどI2C専用って感じみたいよ。
・ま、他に方法はいくらでもあると思うけど、自分用のメモなので。まあこんなもんでしょう。