今回はTWI-Liteの動作確認をします。
今回の説明内容
今回は動作確認まで行ってみますが、その前にピンの役割の説明など、自分のメモも兼ねてまとめてみます。以下の順序で説明します。
- 全ピンの役割説明
- 動作確認用回路
- ブレッドボード組み立て
- 動作確認
全ピンの役割説明
TWI-Liteのピンは全部で28ありますが、全ピンの役割を説明します。ピンの番号、並びは無視して機能毎にまとめて図にしてみました。
[入出力系]
入出力系のピンは全部で16本あります。上の図で左側の16本になります。この16本はデジタル入出力系とアナログ入出力系に分かれています。まずデジタル入出力系は、デジタル入力4本とそれらに対応するデジタル出力4本があります。またアナログ入出力系は、アナログ入力4本とアナログ出力4本があります。
デジタル入出力系は、入力ピンに0あるいは1、つまり0Vあるいは電源電圧を加えると、出力ピンにその入力ピンの状態が伝わります。(伝わり方は前回のエントリを確認してみてください)。
亜炉ログ入出力系は、入力ピンに0〜電源電圧の連続値入力が可能で、出力ピンには入力ピンの電圧値に応じたPWM信号が出力されます。(アナログ入力ピンに加えた電圧がアナログ出力ピンに出力されるわけではないことに注意してください)
[モード設定]
モード設定は3ピンありますが、これらをグランド接続(電源のマイナスに接続)するかオープンにするかでTWI-Lite自身のモードを設定することができます。M1、M2、M3ピンの設定に応じたモードを以下にまとめます。表中”Open”はピンオープン、”GND”はグランド接続を示しています。
M3 | M2 | M1 | TWI-Liteのモード |
---|---|---|---|
Open | Open | Open | 子機として動作。親機からの信号を常に受信する。入力の変化があったらすぐに信号を送信する。また、常に信号をチェックするため電池の寿命は短くなる。 |
Open | Open | GND | 親機として動作。子機からの信号は常に受信する。また入力の変化があったらすぐに信号を送信する。 |
Open | GND | Open | 中継機として動作。他機からの信号を常に受信、そのまま中継する。 |
Open | GND | GND | 子機として動作。親機からの信号は0.03秒ごとに受信する。また入力ピン値は0.03秒毎に繰り返し送信する。 |
GND | Open | Open | 子機として動作。親機からの信号は1秒ごとに受信し、入力ピンの値を送信する。1秒毎に動作するため節電できる。 |
GND | Open | GND | 未使用 |
GND | GND | Open | 未使用 |
GND | GND | GND | 子機として動作。親機からの信号は10秒ごとに受信し、入力ピンの値を送信する。10秒毎に動作するためかなり節電できる。 |
[I2C通信]
I2C通信の詳細は説明しませんが、このプロトコルはIC間のシリアル通信用に定義されたプロトコルです。I2Cはクロック信号(SCL)とデータ信号(SDA)の2ピンでデータ通信を行います。
[UART通信]
UART通信もシリアル通信に使用されます。送信データ信号(TX)と受信データ信号(RX)の2ピンで通信を行います。なお、UART通信は通信速度の設定ができます。通信速度の設定はBPSピンで行います。BPSピンがオープンのときは115200bps、グランド接続のときは38400bpsの設定となります。
[リセットピン]
TWI-Liteをハードリセットします。通常はオーブンにしておき、リセットするときはグラント接続します。
[電源]
VCCはプラス電源で、2.3〜3.6Vを加えます。普通の使い捨て電池(充電できないもので1次電池と呼びます)の場合、1本の電圧は1.5Vですので、2本使えば動作可能です。また充電電池(2次電池と呼びます)の場合、1本の電圧は1.2Vですので、2〜3本使えば動作可能です。またグランドピンは2本あります。
動作確認用回路
それではデジタル信号の送信をしてみます。TWI-Lite親機のデジタル入力1にスイッチ、TWI-Lite子機のデジタル出力にLEDをつければ動作確認できます。もちろん、親機、子機ともに電源接続する必要もあります。ただ、一点注意があります。アナログ入力ピンはオープン状態にすると電圧が不安定となりその電圧値は常に変動します。そのためTWI-Liteはアナログ入力の電圧値を常に変換して子機に送信してしまいます。こうなると電池をすぐに消費量が多くなりますのでこれを避けるためにアナログ入力ピンは4ピンともOFFにしておく必要があります。TWI-LiteではOFFは電源電圧(ONは0V)となりますので、アナログ入力ピンは4ピンとも電源に接続しておきます。
ということで、回路図を描く前に、親機と子機の接続を言葉で説明すると以下のようになります。
[親機]
電源、グランドを接続する。またM1〜M3で親機モードにする。デジタル入力1のピンにスイッチをつける。またアナログ入力ピンは4本とも電源に接続する。
[子機]
電源、グランドを接続する。またM1〜M3で子機モードにする。動作確認しますので反応をよくするため一番反応のよいモードにします。デジタル出力1のピンにはLEDをつける。またアナログ入力ピンは4本とも電源に接続する。
この接続を行ったのが以下の回路図になります。
親機の15番ピン(デジタル入力1)に接続されているスイッチの状態が無線で子機の5番ピン(デジタル出力1)に伝えらることになります。
ブレッドボード組み立て
せっかくTWI-Liteにピンが付いていますので、上の回路をブレッドボードで組み立てます。まず親機の接続例を示します。
う〜ん、ちょっと無駄な配線をしているような気がしますね。もうちょっといい配線もありそうです。
次に子機の接続例を示します。
動作確認
ようやく動作確認です。まずは接続を確認したら親機、子機の電源を入れます。もちろんLEDは点灯しません。
次に親機のスイッチを押すと、、、ドキドキ
うまくLEDが点灯しました!
なお、カタログによると見通しのよいところでは1kmぐらいまで通信ができることがあるみたいです。外に設置するデバイスを太陽電池で動作させるようにしておけば、離れた場所の制御ができるようになりますね。例えば、天候データの取得とか庭の草花の水やりとか。でも草花は話しかけたり触ったりすると元気になるみたいなので、あまり遠隔で水やりするのもちょっと考えた方がよさそうですね。