Lazurite920J 初期プログラム、インタフェース仕様



 

概要

Serial920Jは、UART経由で920MHzの無線通信が使用できるLazurite920J用プログラムです。
その他にも、Lazuriteに搭載されたI2C、SPI、GPIOなどもUART経由で使用することが出来ます。
出荷時のbaudrateは9600bpsに設定されています。

コマンド仕様

UART経由で次の書式でデータを入力してください。
コマンドはASCII文字列で送信してください
コマンド、およびデータはすべてカンマ区切りとし、最後に改行コードを送信してください。
無効コマンドは無視されて出力が返りません。有効コマンドは、入力されたコマンドを返し、最後にカンマ区切りで戻り値を返します。

<例> 26番ピンについている青色LEDをONする場合
pm,26,o(オー)
dw,26,1

シリアル通信関連

シリアル通信のボーレートの設定を行います。出荷時は9600bpsです。

出荷時のシリアル入出力のボーレートは9600に設定されています。

Lazurite 920Jは、電源投入後に115200bpsで設定されているボーレートを送信します。
続いて、設定されいる通信速度に変更して「welcome」というメッセージを送信します。

ボーレートは コマンドで設定することができます。また、その設定値はML620Q504HのデータFlash領域(セクター=0, アドレス=0x0000と0x0001)に格納されています。データFlashを消去すると、ボーレートの設定も消えるので注意してください。

設定されているボーレートが数値が設定可能な値ではなかった場合、115200になります。

設定可能なボーレート:
9600, 19200, 28800, 38400, 57600, 115200

<例>
ボーレートを115200bpsに設定する。
sb,115200
コマンド送信後にモジュールをリセットしてください。
コマンド体系 動作 パラメータ
sb,baud
戻り値:
コマンド,メッセージ
ボーレートの設定を行います。
本コマンドを送信した後は、必ずモジュールをリセットしてください。
baud = 転送速度
次の転送速度を設定することが出来ます。
9600, 19200, 28800, 38400, 57600, 115200,

GPIO関連

コマンド体系 動作 パラメータ
pm,pin,o(オー)/i/pd/pu/hz
戻り値:
コマンドと同じ
pinが示す端子を出力/入力/pulldown付入力/pullup付入力/Hi-Zに切り替えます。 pin=端子番号
o(オー)/i/pd/pu/hz:
o = 出力
i = 入力
pd = pulldown付入力
pu = pullup付入力
hz = Hi-Z
dw,pin,1/0
戻り値:
コマンドと同じ
pinからHighまたはLowを出力します pin=端子番号
1/0:
1 = HIGH出力
0 = LOW出力
dr,pin
戻り値:
コマンド,0/1
pinの端子レベルを返します pin=端子番号
0/1:
0=LOWレベル
1=HIGHレベル


920MHz関連

SubGHz関連の関数を実行します。各関数の詳細はLazuriteIDEの各関数の仕様を参照してください。

<例>
PANID=0xabcd,受信機=0x1234に”hello"の文字列を送信する

sgi
sgb,36,0xabcd,100,20
w,hello
sgs,0xabcd,0x1234


コマンド体系 動作 パラメータ
sgi
戻り値:
コマンドと同じ
SubGHz.init()と同じです。
プログラムが起動したら実行してください
sgb,ch,panid,rate,pwr
戻り値:
コマンドと同じ
SubGHz.begin(ch,panid,rate,pwr)を実行しています。 ch=無線周波数
panid=自機PANID
rate=ビットレート
 (50 or 100)
pwr = 送信パワー
 (1 or 20)
sbs,panid,addr
戻り値:
コマンド,0/1
SubGHz.send(panid,addr,payload,size)を実行しています。
payloadとサイズはw、またはwbで予め設定しておく必要があります。
panid=受信機のPANID
addr=受信機のアドレス
sgre
戻り値:
コマンド
SubGHz.rxEnable()を実行します  
sgra
戻り値:
コマンド
SubGHz.rxEnable()を実行します。本モードを設定すると、受信時に自動的にシリアル出力を行います。受信時の書式は次の通りです。
受信時のデータフォーマットは次の通りです。受信バイト数は無線で受信したバイト数であり、シリアル出力するバイト数ではありません。また、payloadの最後に改行コードが付与されます。
受信時にシリアル出力されるデータフォーマットは以下の通りです。
sgout,受信バイト数,
header,seq_num,rx_panid,rx_addr,tx_panid,tx_addr,payload
 
sgrd
戻り値:
コマンド
SubGHz.rxDisable()を実行します  
w,payload
戻り値:
コマンド
改行コードまでの任意文字列を送信します。最大で240文字程度を送信することが出来ます。 payload=任意の文字列
wb,size
改行の後、size分のバイナリデータ
戻り値:
コマンド
size分のバイナリデータを送信します size=バイナリデータのバイト数
sgr
戻り値:
sgr,受信データ
受信したASCIIデータを取得します。受信データの書式は次のようになっています。payloadの最後に、改行コードが付与されます。
sgr,header,seq_num,rx_panid,rx_addr,tx_panid,tx_addr,payload
header=MACヘッダ
seq_num=シーケンス番号
rx_panid=受信機のPANID
rx_addr=受信機のアドレス
tx_panid=送信機のPANID
tx_addr=送信機のアドレス
payload=受信したデータ
sgrb
戻り値:
sgrb,size
以降、受信したバイナリデータ
受信したバイナリデータを取得します。sgrb,sizeに続き、バイナリデータを受信します。バイナリデータはMACヘッダを含むIEEE802.15.4eのフォーマットで出力されます。 size=受信したデータのサイズ
sgc
戻り値:
コマンドと同じ
SubGHz.close()を実行します。   
sggs
戻り値:
sggs,tx_status,tx_rssi,rx_status,rx_rssi
SubGHz.getStatus()を実行し、エラーステータスや受信感度(RSSI)の値を取得します tx_status=送信ステータス
tx_rssi=送信後のACKの電波強度
rx_status=受信ステータス
rx_rssi=受信データの電波強度
sggsm
戻り値:
sggsm,addrType,senseTime,txRetry,txInterval,myAddress,ccaWait
SubGHz.getSendMode()を実行し、送信モードの取得を行います。   
sgssm,at/tr,val
戻り値:
コマンドと同じ
SubGHz.setSendMode()で送信モードを設定します。SubGHz.setSendMode()と異なり、1回のコマンドで一つのパラメタしか更新することが出来ません。。 at/tr:
設定するパラメータを指定してください。valの値が反映されます。
at=AddressType
tr=Tx Retry



Arduino用サンプルソースコード

arduinoから送信するプログラムのサンプル     ダウンロードはこちら

 

Lazurite 920J 初期プログラムのソースコード

後から書きこみたい場合はLazurite mini writerを使用して書き込みを行ってください。    ダウンロードはこちら