マイコン回路での電圧レベル(5V←→3.3V)変換方法

〔マイコン使用による電子部品の使い方に戻る〕


 通常マイコンの回路では電源電圧5Vか3.3Vが主に使用されています、 それで、何かの電気回路を製作する場合はどちらかに統一して製作すれば良いのですが、 使用する部品やセンサーなどは5Vだったり3.3Vだったりまちまちですね。
例えば、センサーが5Vでマイコンが3.3Vなら配線する信号ラインの電圧レベルを 合わせないと部品が壊れてしまいます。

 電圧レベルを変換する方法として簡単な方法としては、 5Vから3.3Vに変化させるには抵抗を使い分圧するやり方で、 3.3Vから5Vに変化させるにはトランジスタかFETを使う方法が有りますが、
その方法はこちらの「ねがてぃぶろぐ」さんのHPが詳しく載せて有ります、参照して下さい。
また、この方法を利用した変換モジュールがこちらのスイッチサイエンスストロベリー・リナックス で販売されています、このモジュールは送信側2回路・受信側2回路で1.8V〜5Vまでの範囲のようです。

 トレラント機能有りのロジックIC(バッファIC)を使用した方法もあります、こちらは
74VHCTxxx/74LCXxxx/74VCXxxxタイプ辺りがトレラント機能が有ります。
でもぉ、おそらく表面実装タイプのチップがほとんどでぇ、半田付け無理っぽいしぃ、 だからぁ、この話は置いといてぇですぅ。
尚、トレラント機能についてはこちらのHPを参考にして下さい。

 ここでは秋月電子で販売のこちらのレベル変換モジュールの話をします。
このモジュールはロジックレベル変換専用のIC(FXMA108)を使用しています、 電圧も1.65V〜5.5Vの範囲で相互変換可能で8回路分(8本分の信号線)あり、それに自動信号検出により方向制御信号が不要なんで 信号方向を気にせずに配線可能ですよぉ。
20PのDIP化なので半田付けOKだしぃ、取扱いも楽だしぃ、安いしぃ、もぉ最高ですね。

回路図1
これはMicroSD使用回路例です、
信号ラインのプルアップ抵抗は
無視しています。

MicroSDが3.3V電源で、
Arduinoのデジタル入出力端子は
5Vなので、このままではSDカード
は壊れます。
MicroSD→Arduinoはそのままでも
OKと思いますがぁ....



回路図2
レベル変換モジュールはこの様に
MicroSDとArduinoの間に入れます。
4本使用して後4本余っています。

このモジュールの右下端子(OE)は
GND接続で出力が有効になり、
VCCA(3.3V)側電源に接続すれば
出力は無効(ハイインピーダンス)
になります。


注意としては、このレベル変換モジュールはI2C接続でのレベル変換は無理ぽいです、
その場合はこちらの「I2Cバス用双方向電圧レベル変換モジュール」を利用しましょう。
このI2Cバス用変換モジュールの記事はこちらで記載しているので参考にして下さい。

PS. *2)
こちらのBSS138使用のモジュールは4ビットなので小さく最高電圧が20Vまで変換可能です、
更にI2CやSPIにUART等レベル変換をこなすらしい、重宝しそうな一品ですね。



記事一部追記(*2) 2019/01/27
リンク切れ見直し(*1) 2017/01/11


【きむ茶工房ガレージハウス】
Copyright (C) 2006-2019 Shigehiro Kimura All Rights Reserved.