AVR-USB, hid-data
AVR-USB のサンプルの examples/hid-data のデータ転送速度を測ってみた。
サンプルのままだと、EEPROM の読み書きで遅すぎるので、単純に RAM 上の配列に読み書きするようにして測定してみた。
(ATTiny45 で内蔵OSC使って 16.5MHz 動作のもの。)
結果は、
128Byte * 1000回 の書き込みが 2652ms で 47.13KB/s
128Byte * 1000回 の読み込みが 5663ms で 22.07KB/s
8Byte * 1000回 の書き込みが 499ms で 15.66KB/s
8Byte * 1000回 の読み込みが 671ms で 11.64KB/s
でした。
理論的には、1.5Mbps / 8 = 187.5KB/s なので、実効で 100KB/s ぐらい出て欲しいと思っていたけど、ソフトだけでエミュレートしてるせいか、ちょっと遅かった。
コントロール転送で Feature Report を使ってデータ転送するという、ある意味裏技っぽい使い方してるのも遅い原因かな? 普通に、インタラプト転送すれば、もっと速いのかも???
まぁ、ちょっとしたパラメータを設定するだけなら、数バイト/s で転送できれば十分なので1000倍以上速いんだけどさ。
それにしても、書き込みの方が速いのが意外だったな。
読み出しは、「読み出すよ命令」を書き込んでから読み出してるってことなのかな?
| 固定リンク
「プログラミング」カテゴリの記事
- ListView の Height は WRAP_CONTENT を避けるべき(2015.12.23)
- プログラミングコンテストチャレンジブック(2010.09.27)
- 久しぶりに(2009.03.18)
- AVR-USB, hid-data(2008.11.24)
- AVR-USB、Tiny45 の internal RC oscillator で動作!(2008.11.08)
「H/W」カテゴリの記事
- sysbench をとってみた(2016.07.02)
- M4 から 850 PRO に変えた(2014.12.28)
- モバイルバッテリー(2014.05.14)
- LPCXpresso LPC11U68 が当たった(2014.02.11)
- Beaglebone Black に LCD を付けた(その3)(2014.01.26)
「AVR」カテゴリの記事
- V-USB を AtmelStudio 6 でビルドする(2013.06.19)
- AVR-USB is now V-USB(2009.04.22)
- AVR-USB, hid-data(2008.11.24)
- AVR-USB、Tiny45 の internal RC oscillator で動作!(2008.11.08)
- 78K0 AVR Writer(2008.10.26)
コメント