遠隔制御 - I2C出力

MONOSTICK(モノスティック)をパソコンやスマートフォン、タブレット端末のUSBポートに接続することで複数のTWE-LITE(トワイライト)端末を遠隔制御することができます。

TWE-LITE(トワイライト)に様々なデバイスを接続してパソコンやスマートフォン、タブレット端末で、 制御できます。

ここではTWE-LITE(トワイライト)にI2Cで接続されたデバイスを制御する方法を説明します。I2Cとは2線式のシリアル通信バスの規格でアイ・スクエアード・シーまたはアイ・ツー・シーと読みます。I2C規格に対応した数々のデバイスを使用することができます。

無線モジュール

LCD(I2C接続)を制御する

相手側の端末にI2Cで接続されたLCDに任意の文字を表示します。LCDにより制御コマンドが異なりますので、詳細は使用するLCDの仕様書を確認して下さい。ここではいくつかのデバイスの使用例を紹介します。

入力データフォーマット
  1: 1バイト: 無線デバイスのアドレス (0xDB: 自分自身, 0x00 ~ 0x7F, 0x00:親機, 0x78: 全子機)
  2: 1バイト: 0x88
  3: 1バイト: 要求番号(応答メッセージにそのまま出力される識別子)
  4: 1バイト: コマンド
  5: 1バイト: I2Cアドレス
  6: 1バイト: I2Cコマンド
  7: 1バイト: データサイズ
  8: Nバイト: データ
  9: 1バイト: チェックサム

チェックサムを省略し替わりに X を入力できます。(超簡単!TWEアプリ ver1.6.5 以降)

例 :780100112233X

コマンドデータフォーマットの詳細はI2Cのアクセス方法:コマンド0x88をご参照下さい。

※ 以下 LCD に出力する場合は、App_Twelite バージョン 1.3.10 以降を書き込んでください。

AQM0802A 8文字x2行

小型のLCDモジュール(AQM0802A)に無線で文字メッセージを送り表示させる例です。

無線モジュール

無線モジュール

4: 0x22 (AQM0802A)
5: 0x00
6: 0x00
7: 16 (AQM0802A)
8: 液晶に表示するデータ
    AQM0802A: 0-7バイト -> 1行目  8-16バイト -> 2行目
"012345  ABCDEFGH" 0x30(0) 0x31(1) 0x32(2) 0x33(3) 0x34(4) 0x35(5) 0x20( ) 0x20( )
                     0x41(A) ...                                             0x48(H)

のように指定すると、液晶には以下のように表示されます。
 1行目: 012345  
 2行目: ABCDEFGH

表示例:

"Wireless"を表示させてみましょう。


W 0x57
i 0x69
r 0x72
e 0x65
l 0x6C
e 0x65
s 0x73
s 0x73

以下の文字列を送信すると、LCDに表示されます。
:78880122000016576972656C657373X

ACM1602 16文字x2行

小型のLCDモジュール(ACM1602)に無線で文字メッセージを送り表示させる例です。

無線モジュール

無線モジュール

4: 0x21 (ACM1602)
5: 0x00
6: 0x00
7: 32 (ACM1602)
8: 液晶に表示するデータ
    ACM1602: 0-15バイト -> 1行目 16-31バイト -> 2行目
"012345  ABCDEFGH" 0x30(0) 0x31(1) 0x32(2) 0x33(3) 0x34(4) 0x35(5) 0x20( ) 0x20( )
                     0x41(A) ...                                             0x48(H)

のように指定すると、液晶には以下のように表示されます。
 1行目: 012345  
 2行目: ABCDEFGH

表示例:

"Wireless Engine"を表示させてみましょう。

W 0x57
i 0x69
r 0x72
e 0x65
l 0x6C
e 0x65
s 0x73
s 0x73
0x20
E 0x45
n 0x6E
g 0x67
i 0x69
n 0x6E
e 0x65
0x20

以下の文字列を送信すると、LCDに表示されます。

:78880121000032576972656C65737320456E67696E6520X

チェックサムの計算

チェックサムとは受け取ったデータが正しいかどうかを確認するための付加データです。

データ部の各バイトの和を8ビット幅で計算し2の補数をとります。つまりデータ部の各バイトの総和+チェックサムバイトを8ビット幅で計算すると0になります。
チェックサムバイトをアスキー文字列2文字で表現します。
例えば 00A01301FF123456 では 0x00 + 0xA0 + ... + 0x56 = 0x4F となり、この二の補数は0xB1 です。(つまり 0x4F + 0xB1 = 0)

チェックサムの省略

チェックサムを省略し替わりに X を入力できます。(超簡単!TWEアプリ ver1.6.5 以降)

例 :780100112233X