Sipeed MAix Bit with MIC MaixPy で マイクのお試し #3 です。
前回、Sipeed MAix Bit with MIC MaixPy #2 で
バイナリーのまま、音データを送信してみましたが、Serial通信でのデータ抜けが結構ありました。
そこで、今回は、 #2 のプログラムにハンド・シェイクを組み込んでみました。
プロトコル
PC側 | Bit側
1) b's' 送信 ------> b's' が来たら、音データ(1 CHUNK*2 バイト)をバイナリ送信
<------ 音データ(バイナリ) + '\r\n' 送信
2) 最後が、'\r\n'
で無ければ、 b'r' ----> b'r' であれば、先に送ったデータを再送
<------ 前の音データ(バイナリ) + '\r\n' を再送
3) 最後が、'\r\n'
であれば、 b's' ----> b's' であれば、次のデータを送信
<------ 音データ(バイナリ) + '\r\n' 送信
この様な簡単なプロトコルです。
Serial 通信は、多分、全2重なので、送信と受信が同時に行えます。