転送速度に関する注意
------------------------------

EyeBotでHEX形式ファイルの転送時に"receive status error"が生じるという
報告を受けています。特に新しいバイナリー形式(srec2binによって生成)を
使うときに発生しています。そのときに2.5という係数で転送に必要な時間が
割られます（RoBiosバージョン4.0以上）。

その問題は、EyeBotと転送用のパソコンの両方で転送速度が奇数になるときに
起こります。EyeBotではシリアルポート１の転送速度はCPUクロックから作成さ
れます。このクロック周波数によって、115kbpsが多少上下します。下記の表に
転送速度誤差をパーセント表示してありますので、参考にしてください。：

CPU　　分割　　実転送　エラー
周波数 数  　　速度 
----------------------------------
16777   5       104856  9,9%    -
17826   5       111413  3,4%    ok
18874   5       117963  2,3%    ok
19923   5       124519  7,5%    -
20972   6       109229  5,5%    -
21469   6       111818  3,0%    ok
22020   6       114688  0,4%    ok
23069   6       120151  4,1%    ok
24117   7       107665  7,0%    -
25166   7       112348  2,5%    ok
26214   7       117027  1,6%    ok
27263   7       121710  5,3%    -
28312   8       110594  4,2%    ok
29360   8       114688  0,4%    ok
30409   8       118785  3,0%    ok
31457   9       109226  5,5%    -
32506   9       112868  2,1%    ok
33554   9       116507  1,1%    ok
34603   9       120149  4,1%    ok
35652   10      111413  3,4%    ok
36700   10      114688  0,4%    ok
37749   10      117966  2,3%    ok
38797   11      110219  4,5%    ok
39846   11      113199  1,8%    ok
40894   11      116176  0,8%    ok
41943   11      119156  3,3%    ok

パソコンが正確に115200bpsでデータを送っていると仮定すると、5%以下の
ばらつきは容認されます。EyeBotの水晶発振子とパソコンの通信速度の精度
に依存する小さな誤差によってこの問題が生じます。ある場合には、誤差が
大きい場合でもアスキーHEX形式ファイルを転送することができます。それは
7ビットの文字コードのみを転送しているときです。しかし、バイナリー形式
ファイルは8ビットデータを含むので転送できないかもしれません。


この問題を解決するためには、"より良い"CPU周波数を選択するだけです。
ロボットのHDTのinfo_type設定で入力することができます。（望ましい周波数
例えば33554 kHzのときにはその最初の２桁の33を使います。）
________________________________________________________________________
 Michael Kasper, Universitaet Kaiserslautern, 2002
