5V出力→3.3V入力のレベル変換

5 V レベル出力のデバイスを 3.3 V レベル入力のマイコンにつなぎたい,という場面がありました. トランジスタや FET を噛ませてオープンコレクタ(ドレイン)相当にしてやるのも1つの手ですが,こんな回路を思いつきました.

IMG_20190201_194130.jpg

ダイオードは適当なスイッチングダイオード,抵抗はプルアップに適当な値,です. マイコンの GPIO に内蔵されているプルアップ抵抗を使えばダイオード1本だけで済みます.

動作は

  • H レベル出力の場合はダイオードが off となるので,3.3 V デバイスの入力端子電圧は 3.3 V
  • L レベル出力の場合はダイオードが on になり,3.3V デバイスの入力端子電圧は 0 V

となります.

実際に回路を組んで動かしてみた波形は,このようになりました.

IMG_20190201_195912.jpg

赤が 5 V レベル,黄色が変換された 3.3 V レベルです. 確かに H レベルでは 5 V が 3.3 V に変換されてますが,L では 0 V が 0.5 V ぐらいになっています. これはダイオードの順方向電圧降下 (Vf) の影響です. まぁ,ディジタル信号なので,入力ではちゃんと L レベルと判定されて問題はありませんが.


添付ファイル: fileIMG_20190201_195912.jpg 141件 [詳細] fileIMG_20190201_194130.jpg 132件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-02-01 (金) 20:09:32 (628d)