zantetsu 2008/08/28(Thu) 17:43:31 No.23
CypressのFX2LP(Slave FIFOモード)を使用して デバイスを作成しています。 バルク転送で毎秒約13MB/s程度のデータを デバイスからパソコンに転送しています。 個々のデータは約300kBで 長さ0のパケットにより仕切られています。
ReadFileを非同期で複数回呼び出し、 1回の呼出し毎に 個々のデータ(300kB)を受け取り処理を行っています。
2台接続して同時にデータを取得していると 数時間に1度の割合で、 ReadFileが10回ほど連続して 0バイトのデータを受信した状態で完了してしまいます。
FX2LPから0バイトのパケットが送信されたのか、 または、 マイクロソフトのUSBドライバが ReadFileの呼び出しを何らかの理由で 完了させたのか????
FX2LPには アイソクロナスモード時に NAKの代わりに長さ0のパケットを返す機能があるので、 その機能が何らかの理由で 一時的に働いてしまっているのか???
このような問題に遭遇された方は いらっしゃらないでしょうか?
何か理由として考えられることはありませんでしょうか?
よろしくお願いします。 |