Arduinoでロジックレベル変換器を使う方法
By Kunkune | Published: 2026-10-23
Category: ハウツーガイド
5VのArduinoを3.3Vのセンサーにロジックレベルコンバーターを使って接続する方法を学びます。TXS0108Eを使用したI2Cレベルシフトのためのステップバイステップの配線とコード。
クイックアンサー
TXS0108Eのような双方向ロジックレベル変換器を使用して、5VのArduinoピンを3.3VのI2Cセンサーに安全に接続します。高電圧側を5Vに、低電圧側を3.3Vに配線し、変換器のチャンネルを介してSDAラインとSCLラインを接続します。
I2Cにレベルシフターが必要な理由
Arduino Unoや多くのクラシックボードは5Vロジックで動作しますが、MPU6050、BMP280、OLEDディスプレイなどの人気センサーは3.3Vで動作します。これらを直接接続すると、センサーが損傷したり、通信が不安定になる可能性があります。双方向レベル変換器は、特別な制御ピンなしで自動的に電圧変換を行います。
TXS0108Eは8チャンネルを備えており、複数の信号を同時に変換できます。シンプルなI2Cプロジェクトでは、2チャンネル(SDAとSCL)のみ必要ですが、残りのチャンネルは他の3.3Vペリフェラルに使用できます。
2チャンネルモジュールと8チャンネルモジュールの選び方
2チャンネルIIC I2Cロジックレベル変換モジュール(製品ID 2426955)はコンパクトで、ほとんどのI2Cセンサープロジェクトに十分です。価格はやや高めですが、I2Cに最適化されたプルアップ抵抗が内蔵されています。TXS0108E 8チャンネル双方向ロジックレベル変換器(製品ID 2426944)は、より多くのチャンネルを低コストで提供するため、複数の3.3Vデバイスや混合信号タイプのプロジェクトに適しています。
1つまたは2つのI2Cラインのみを変換する必要がある場合は、2チャンネルモジュールで配線がシンプルになります。後で拡張する予定がある場合は、8チャンネルバージョンで、別の変換器を購入することなくSPIやUARTデバイスを追加できます。
ステップバイステップガイド:ロジックレベル変換器の配線と使用方法
- 高電圧側と低電圧側を特定する: 一般的なレベル変換モジュールでは、一方の側がHV(高電圧、5V)、もう一方がLV(低電圧、3.3V)と表示されています。HVピンをArduinoの5Vに、LVピンをセンサーの3.3V電源に接続します。よくある間違い:これらの電圧を逆に接続すると、モジュールやセンサーが損傷する可能性があります。 回路に電源を投入する前に、シルクスクリーンのラベルを再確認してください。
- グランド基準を接続する: ArduinoのGNDからレベル変換器のGNDピンへ、そして変換器のGNDからセンサーのGNDへグランド線を接続します。レベルシフターが機能するには、両側で共通のグランドを共有する必要があります。よくある間違い:グランド接続を忘れると、データが不安定になったり通信ができなくなります。 ブレッドボードのレールを使用して、すべてのデバイスにグランドを分配します。
- I2Cデータラインを配線する: ArduinoのSDA(UnoではA4)をHVチャンネルピン(例:HV1)に接続し、対応するLVチャンネルピン(LV1)をセンサーのSDAに接続します。SCL(UnoではA5)についても、2番目のチャンネル(HV2からLV2)を使用して同様に行います。よくある間違い:チャンネルを交差させる(例:SDAをHV1、SCLをLV2に接続)と動作しません。 各信号ラインで、両側で同じチャンネル番号を維持します。
- プルアップ抵抗を追加する(必要な場合): 多くのレベル変換モジュールには、両側にプルアップ抵抗が内蔵されています。モジュールにプルアップ抵抗がない場合や、I2Cバスが10cmより長い場合は、LV側のSDAとSCLから4.7Vに3.3kΩの抵抗を追加します。よくある間違い:HV側の5Vにプルアップを追加すると、センサーに過剰な電圧がかかる可能性があります。 モジュールのデータシートを確認してください。2チャンネルモジュールにはプルアップ抵抗が含まれていますが、TXS0108Eには含まれていない場合があります。
- I2Cスキャナーでアップロードしてテストする: 標準のI2Cスキャナースケッチ(ファイル > 例 > Wire > i2c_scanner)をArduinoにアップロードします。シリアルモニターを9600ボーで開きます。配線が正しければ、センサーのI2Cアドレスが表示されます。よくある間違い:デバイスが表示されない場合は、グランド、電源、チャンネルマッピングを確認してください。 スキャンが成功すれば、メインのスケッチを書く前にレベル変換器が動作していることが確認できます。
製品情報
- 5個 2チャンネルIIC I2Cロジックレベル変換モジュール 5V~3.3V Arduino用: 2チャンネルIIC I2Cレベル変換器は、5Vと3.3Vのシステム間を橋渡しし、異なる電圧デバイス間での効率的で安定した通信を実現します。さまざまなシリアルアプリケーションに最適です。このモジュールにはI2Cのタイミング要件に適合したプルアップ抵抗が内蔵されているため、外部部品なしで直接配線できます。

5個 2チャンネルIIC I2Cロジックレベル変換モジュール 5V~3.3V Arduino用 - TXS0108E 8チャンネル双方向ロジックレベル変換器: TXS0108E 8チャンネル双方向ロジックレベル変換器 8チャンネルにより、I2C、SPI、UART、GPIO信号を同時に変換できるため、マルチセンサープロジェクトに柔軟に対応します。

TXS0108E 8チャンネル双方向ロジックレベル変換器

