なお、関係ないですがprint文が1回あたり300msほど掛かるようになっています。
リアルタイムに出力が見える反面、かなり遅いです。
初期化
fa.serial("init")
戻り値は常にnil
115200bpsに初期化される。
2018/06/30追記
ファームウェアバージョンW4.00.03においては、ボーレートの変更ができるようになっている
fa.serial("init",9600)
300bps〜921600bpsまで確認した。1bps単位で通信できる模様?
9600bpsや31250bpsでも動作する模様。
開放?
fa.serial("deinit")
未初期化状態に戻る?
戻り値は常にnil
送信
fa.serial("write","Hello World")
fa.serial("write","Hello World",11) --送信バイト数指定?
fa.serial("write",0xAA)
--2018/06/30追記。テーブルも行ける
dat = {0x0D,0x0A}
fa.serial("write",dat)
戻り値は常にnil
受信
x = fa.serial("read")
バッファにデータが有ると、1Byteを数値として返す
データがない時はnil
端子が開放されていると255を返すことがある
バッファの長さは14Byte
速度: 115200bps (W4.00.03では変更可)
8bit 1stop
Tx: D0
Rx: CMD
サンプル
fa.serial("init")
print(fa.serial("write","Hello World"))
s=""
for i=0,16 do
x = fa.serial("read")
if(x ~= nil)then
s = s .. string.format("%c",x)
end
end
print(s)
print("OK")