uart.start(tx, rx, baud)
UARTによる非同期通信を開始します。
TX, RXに利用するIOの数字と、通信速度ボーレートを指定して開始します。
- tx: obnizデバイスからの送信に利用するIO数値
- rx: obnizデバイスへへの受信に利用するIO数値
- baud: 通信速度 (e.g., 9600, 115200).
uart.send(string)
開始したuartにデータを送信します。
送信が完了するまでは関数を抜けません。
uart.recv()
受信したデータはバッファに蓄積されますuart.recv()を呼ぶことで蓄積されたデータを受け取ることができます。
Example
以下の例はオフライン中のものも含め、オンラインになった段階でuartで受信したデータを随時クラウドへ送信する例となります。
os.log(" - Lua Start");
io.retain(1, true);
io.retain(2, true);
uart.start(1, 2, 115200); -- tx:io1 rx:io2 baud:115200
uart.send("Hello World");
function on_online_loop()
local ret = uart.recv();
-- local ret = uart.recv(1); // limit receive buffer. max to 1 byte
if #ret > 0 then
-- EchoBack and send to cloud
uart.send(ret);
cloud.pluginSend(ret);
end
end