AQMシリーズのI2C接続LCDキャラクタ・ディスプレイを使う(4)モデルの違い
■ArduinoのI2Cバスの端子
前回、使用したArduino Uno R3はI2CバスのSCL、SDAの専用端子が用意されています。この専用端子は、ほかの端子と独立したものでなくアナログ入力端子A5(SCL)、A4(SDA)と接続されています。
Arduino Leonardの場合、SCL、SDA端子はディジタル・ポートのD3(SCL)、D2(SDA)に接続されています。このLeonardをベースに、Wi-Fiなどのイーサネットの機能を搭載したArduino Yunも同様です。
Arduino ZeroはSCL、SDAバスは専用のもので、ほかのI/Oとは接続されていませんでした。
このように、ArduinoのバージョンによってI2Cバスの接続状態に違いがあるので、次の表にまとめました。
Board | I2C端子 | 接続ポート | 備考 |
---|---|---|---|
Arduino Uno R3 Arduino Ethernet R3 |
SCL SDA |
A5(SCL) A4(SDA) |
A5とSCL、A4とSDAはボード内で接続されている |
Arduino Leonard Arduino Yun |
SCL SDA |
D3(SCL) D2(SDA) |
D3とSCL、D2とSDAはボード内で接続されている |
Arduino Zero Arduino101 |
SCL(専用) SDA(専用) |
-- -- |
32ビットCPUではディジタル、アナログ・ポートには割り当てなし |
●Arduino Yunに置き換える
前回のArduino Uno R3のボードを、Arduino Yunに置き換えテストしました。同一のプログラムで次に示すように同様な動作を確認しました。
I2Cバスの配線をD3(SCL)、D2(SDA)に変更してテストました。ボード内で接続されているので、当然同じ結果になります。
●Arduino 1.6.13のリリース
2016/11/22にArduno1.6.13がリリースされていました。ダウンロードしてインストールし、Arduino Yunにテスト・プログラムを書き込みました。旧バージョンと同様に書き込まれ、温度の表示を開始しました。
Arduino.orgのArduino IDEは、2016年12月19日現在Arduino1.7.11となっています。Arduino1.7.11は、Arduino M0でコンパイル時にコピーのエラーが出てコンパイルできなくなって以来利用していません。Arduino.orgのページはArduino.ccに比べ充実度で見劣りするので、現在はArduino.ccにあるボード、Arduino IDEを利用して検討を行っています。
I2Cバス接続LCDキャラクタ・ディスプレイの一通りの確認はできました。次はArduino Yunなどを題材にArduinoでWi-Fiを利用することを検討します。
(2016/12/19 V1.0)
<神崎康宏>