私はバイナリファイルを組み込みデバイスに転送するためにカスタムATコマンドセットを使用しています。
仮想マシン(Windows 7ホスト)でLubuntu Linuxを実行しており、仮想Linuxゲストが物理シリアルポートを制御します。
Windowsではこれを行う独自のソフトウェアがあり、Linuxではbashコンソールを使用します。
速度を115200ボードに設定しました。
stty -F /dev/ttyS0 115200
前後を確認してみると速度が9600から115200に出ましたね。
私は命令を送る
echo -ne "AT\r" > /dev/ttyS0
私が実行した他の端末から返信を読みました。
cat /dev/ttyS0
問題は、デバイスがバイナリをフラッシュする必要があるときに特定のATコマンドを送信し、デバイスがストリームを待つことです。次に入力します。
cat $myFile > /dev/ttyS0
すべてが機能しますが、必要以上に時間がかかります。 600kファイルは約10分かかり、115200ボードでは約1分かかります。
ボトルネックは何ですか? VirtualBoxですか、それとも「cat」コマンドですか?何らかの理由で認知速度がデフォルト9600で停止していますか?
ありがとう