AVRライタ高速化(2)

.03 2010 AVR-USB comment(0) trackback(0)
さて、高速化するためにEndpoint Descriptorの設定をINTERRUPTからBULKに変えるだけの簡単なお仕事をしてみたわけですが、VistaPCに接続するとなんか怒られます…
なんでだろーと思いつつ、よ~く仕様書を見直してみると、どうもLow SpeedではBulk転送ができないようです。
USB Specificationのp53 L3に次のようにあります。
A low-speed device must not have bulk endpoints.
はー…

なぜかXPではこの「Low SpeedのBulk転送」が使えていたらしいんですけどねぇww

LowSpeedではInterrupt転送とControl転送しかできないので残るはControl転送での実験です。

普通にWrite/ReadFile関数ではコントロール転送にならない気がしたのでいろいろ見てみると、VendorRequest関数ってのが汎用ドライバに用意されているようです。
たぶんこれを使えばコントロール転送ができるんでしょうね。

これで高速化できるかどうか分かりませんが明日あたりやってみようと思います。
関連記事

  • comment
  • secret
  • 管理者にだけ表示を許可する

trackbackURL:http://yuranos.blog11.fc2.com/tb.php/72-06a48aed