平成27年 1月 16日
MPLAB Harmonyの使い方(13) USBライブラリの導入(6) 転送速度の実測
com1のみ限定ですがループバック動作が機能しているので、どの程度の転送速度が出るのかを実測してみました。
このプログラムは送信と受信を半二重で行っていますので、ループバック動作では実際の転送速度の半分になります。
転送に使用するのは、このプログラムのHEXファイルですが、少し古い時代のものを使用しました。ファイルサイズはおよそ57kBです。
転送速度の測り方はPC側で使用しているターミナルソフトTeraTermのファイル転送時に表示される転送レートを目視にて読み取ります。
結果、転送速度は1.7kB/sec程度でした。転送レートが遅いのでわずか60kB足らずのファイル転送に30秒以上掛かっています。
従って実際の転送レートは、この数字の2倍、およそ3.5kB/sec程度です。
正直なところ、もう少し速度が出るだろうと期待していたので、確認のためループバック処理を止めてPCからPICへの送信のみでの転送速度も測ってみました。仮にPC側で受信処理に時間が掛かって次の送信が遅れるなどの時間的なロスが原因なら、これで転送速度は改善されます。
これでも転送速度は3.5kB/sec程度で大きな変化はありませんでした。
本来なら遅くなる原因を突き止める所ですが、この数字でもシリアル通信としては実用的な速度です。ほぼ、38,400bps出ています。
また、シリアル通信のポート数を追加してもUSBの仕様から通信速度には大きな影響が出ないことから、取りあえずはこれで使うことを優先します。