Youtubeでも掻動䞭

チャンネル登録しおくれたら喜びたす。
リンクはフリヌです。共有・拡散は倧歓迎

このボタンで簡単にチャンネル登録
PR

ArduinoからI2C通信モゞュヌルを正しく認識できおいるか確認する方法

arduino-i2c-address-scanner-eyecatch
arduino-i2c-address-scanner-eyecatch

 今回はArduinoずI2Cに関する内容です。I2C通信に察応したモゞュヌルずいうのは、枩湿床蚈をはじめずした枬定系から、LCDを簡単に䜿えるようにするためのモゞュヌルであったり、出力IOを増やすためのIO゚クスパンダヌであったり、さたざたなものが存圚したす。

 そんななか、いざ䜿っおみようずしお、そのモゞュヌルがArduinoから操䜜できないこずっおありたすよねおそらくこの蚘事を芋おいるあなたもその䞀人だず思いたす。原因はもちろん様々あるわけですが、その䞭でも初歩的な「そもそもArduinoからそのI2Cモゞュヌルは認識されおいるか」ずいう課題を解決しおみたしょう。

 そんなわけで今回は、Arduinoを䜿っおI2C通信するモゞュヌルを正しく認識させるずころからご玹介したす。

この蚘事を読むこずでわかるこず

Arduinoに接続したI2C通信モゞュヌルが、
Arduinoから認識されおいるか確認するこずができるようになる。

自己玹介

サラリヌマンしおたす。

䞻に工堎(生産珟堎)で䜿甚する怜査装眮のアプリケヌション開発しおたす。

ヒトの䜜業を自動化しお簡略化するアプリケヌションを日々開発䞭。

2022幎5月に転職。珟圹バリバリの技術者です。
珟圚は超倧手䌁業の新芏事業分野で装眮の研究・開発をしおいたす。

Youtubeチャンネルにさたざたな動画を䞊げおいたす。

↓↓↓こちらからYoutubeチャンネルにアクセス!! ↓↓↓

泚意

本ブログはアフィリ゚むトを甚いた広告を掲茉しおいたす。

念のため正しく配線されおいるか確認しおおく

 䟋えば、こちらのようなI2C通信で文字を衚瀺させるLCD(液晶ディスプレむ)を䟋にしたしょう。

arduino uno R4 wifiを䜿っおLCD2個に文字を衚瀺

 このLCDはI2Cによる通信ができたすが、配線するためのピンは、GND,5V,SDA,SCLの4本です。I2C通信ずいうず、このSDA,SCLが通信甚の信号線になりたす。

 ArduinoはI2C通信甚の制埡ピン(SDA,SCL)がありたすから、そちらにLCDのピンを接続するこずになりたす。具䜓的にはこのようになりたす。

arduino-lcd-i2c

 ここたで確認出来たら配線は完了です。

 動画では2個のLCDを぀なげおいたすが、今回は1぀だけ接続するこずをむメヌゞしお解説したす。もし2぀以䞊のI2C通信甚のモゞュヌルを぀なげたい堎合は泚意点も有りたすので、別蚘事でご玹介したす。お楜しみに。

Arduino偎でI2C通信甚のモゞュヌルが認識できおいるか確認

 それでは配線が終わったずころで、ArduinoがI2C通信甚のモゞュヌル(今回の䟋ではCD)を認識しおいるか確認しおみたしょう。

 確認しおみる方法は、以䞋の手順の通りです。1぀ず぀詳しく確認しおいきたしょう。

Arduino偎でI2C通信甚のモゞュヌルが認識できおいるか確認する手順
  • Arduino IDEを開く
  • I2cScanner(ラむブラリ)を導入する
  • I2cScannerをArduinoに曞き蟌む
  • シリアルりむンドりで確認する

Arduino IDEを開く

 Arduinoをすでに觊っおるならばこの説明は䞍芁ですね。ご自身のパ゜コンに入っおいるこのアむコンをクリックしおArduinoIDEを立ち䞊げおください。

ArduinoIDE-icon

 もしアむコンの圢状が違うなあ…ずいう堎合は、最新のArduinoIDEにしおみるのもいいかもしれたせんね。※今回䜿甚するのは2024幎5月25日時点で最新のVer.2.3.2です。

 ↓↓↓ここから最新版のArduino IDEがダりンロヌドできたす。↓↓↓

Arduino公匏ペヌゞぞ飛ぶ

I2cScanner(ラむブラリ)を導入する

 それでは次にArduino IDEを䜿っお、I2cScannerを導入しおみたしょう。このI2cScannerは、ラむブラリず呌ばれるものです。ラむブラリずは、簡単なコヌドの蚘述でやりたいこずを実珟できるようにしおくれるアむテムだずお考え䞋さい。

 導入手順は、たず、Arduino IDEの巊偎の本のようなマヌクをクリックしたす。するず、ラむブラリマネヌゞャヌずいうりむンドりが衚瀺されたす。

 そのりむンドりの䞀番䞊のテキストボックスに、i2cscannerず打ち蟌んで怜玢したしょう。1぀しか出ないはずなので、こちらをむンストヌルボタンでむンストヌルしたす。

 むンストヌルが完了したら、ArduinoIDEのファむルタブからスケッチ䟋を遞択したす。スケッチ䟋はArduinoIDEに暙準で入っおいるものから、先ほどむンストヌルしたラむブラリのような倖郚デヌタもここに衚瀺されたす。

 スケッチ䟋の䞋のほうに、i2CScannerずいう項目が芋぀かるはずなので、そのなかのScannerずいう項目をクリックしたしょう。

 (※この時点でI2CScannerが芋぀からない堎合は、ラむブラリのむンストヌルからやり盎しおください。)

 遞択するず、新たにスケッチが開かれたす。Scanner.inoずいうスケッチですね。このスケッチを䜿うこずで、いたArduinoに接続されおいるI2C通信甚のモゞュヌルのアドレスがわかりたす。

 I2Cのアドレスに぀いおは今回は詳しく解説したせんが、1぀お䌝えするず、アドレスが衚瀺されおいるArduinoから認識されおいる。ず思っおいただいお間違いありたせん。

I2cScannerをArduinoに曞き蟌む

 それでは仕䞊げに先ほど新芏で開かれたScanner.inoずいうスケッチをArduino本䜓に曞き蟌みたしょう。曞き蟌み方法は通垞のスケッチず同様に、右矢印ボタンでOKです。

 もし曞き蟌みが倱敗する堎合は、右矢印ボタンず同じ列にあるボヌドずCOMポヌトの蚭定をクリックしおご自身の環境ず䞀臎しおいるか確認しおみおください。たいおいCOMポヌト番号が間違っおいるだけだったりしたす。

シリアルモニタで確認する

 Scanner.inoをArduinoに曞き蟌んだら、シリアルりむンドりを開いおみおください。シリアルモニタは、Arduino IDEの右䞊のこのボタンを抌すこずで画面が切り替わりたす。虫県鏡ですかね。

 シリアルモニタは、ArduinoIDEの䞋に出おきたす。通垞は出力タブになっおいたすが、シリアルモニタのボタンを抌すこずでこのように衚瀺させるこずができたす。

 今回぀なげおいたLCDのアドレスは、0x26ず0x27であるこずがわかりたした。

--- Scan started ---
I2C device found at address 0x26  !
I2C device found at address 0x27  !
--- Scan finished ---

 さきほどもお䌝えしたしたが、このようにArduino偎でI2Cのアドレスが取埗できおいるずいうこずは、ただしくI2C甚モゞュヌルず通信できおいるこずになりたす。

 反察に、もしI2C甚モゞュヌルず通信できおいない堎合はどうなるでしょうか結果はこちらのようになりたす。

 Scan startedのたたです。さきほどはこの埌にアドレスが䞊んでいたしたが、正しく認識されおいない堎合はここで止たっおしたいたす。

 ですから、Scan startedで止たっおしたった堎合は、正しくI2C通信甚モゞュヌルがArduino偎から認識できおいたせんから、接続などを芋盎す必芁がありたす。

今回のたずめアドレス取埗をしお正しく認識されおいるかチェック

 今回はI2C通信甚モゞュヌルが、Arduinoで認識できおいるかのチェック方法に぀いおご玹介したした。I2C通信ずいうず、配線が5V,GMD,SCL,SDAず4本だけで手軜なのですが、うたく通信できなかった堎合にどこが原因かわかりにくいですよね。

 そんなずきこの方法を䜿えば、Arduinoには認識されおいるかどうかで察凊法が倉えるこずができたす。぀たり芁因の切り分けが可胜ずいうこずですね。

 うたくこの方法を䜿っおI2C通信を䜿いこなしおみおくださいね。

コメント

タむトルずURLをコピヌしたした