質問

 問合せの多い質問への回答です。
 配線間違い、自己流にアレンジしての動作不良が多いようです。

デバイス認識

(PC 接続しても USB デバイスとして認識されない)
● USBコネクタのピン接続を誤った
● D- 側をプルアップするところを反対側にした、プルダウンした
● セラミック発振子を使った
 9割方は動作しますが、偏差の大きい素子だと動作しなかったり不安定になります。選別して使うのでなければ、水晶発振子を使ってください。
● ツェナー方式にした
 まずは 3.3 Vで動かしてください。ツェナーや青LED を USB ラインに接続すると、重い負荷により AVR ドライブ時の立ち上がりが緩やかになり、クロスオーバ電圧を規定内に下げる効果があるようです。この方式は簡単ですが、ツェナー特性のばらつきなどにより動かない場合があります。
● Windows 7 RC でドライバがインストールされない
 手動でインストールしてください。デバイスマネージャで "USB-232" または "USB-PIO" を右クリックし、インストールを選びます。
● ヒューズビット設定がわからない、間違えた
 Readme.txt をよく確認し、内容を理解して設定してください。書き込みソフトにより表記が異なる場合があります。
            Engbedded AVR Fuse Calculator

(ドライバはインストールされるが正常に機能しない)
● 接続するとハングアップする、ブルースクリーンになる
 ドライバが正しくインストールされていません。現在のドライバを削除してインストールをやり直してください。USBDeview を使えば簡単に削除できます(USB-232, USB-PIO のデバイスを選択し、右クリック→アンインストール)。また、Windows に最新の ServicePack が適用(XP なら SP3)されているか確認してください。
● PC や USB コントローラのチップ、ハブの組み合わせによっては通信が停止することがあります。組み合わせを変えて試してください。
● まれに他の USB 機器のドライバと競合する場合がありました。他のPCで試してみてください。

通信

● ハブ経由で通信できない
 USB 2.0 高速ハブを PC の USB 2.0 高速ポートに接続すると、低速バルク転送に失敗します(ハブのトランザクション・トランスレータによるバッファリング送出に V-USB が追従できない模様)。
  ・ lowcdc.vbs で "Stable"(インタラプト転送)モードに切り替える。
 もしくは
  ・ USB 1.1 ハブを使うか、USB 1.1 ハブを USB 2.0 ハブと PC の間に入れる。
● ターミナルソフトが反応しない
 ターミナルソフトの設定を再確認してください。(ボーレート、フロー制御、特殊キーの設定など)
● 通信速度が遅い
 9600bps より速いデータ通信は、lowcdc.vbs で高速モードに切り替えてください。
 ターミナルソフトで文字送出時にウェイトが入ると遅くなります。
  ATmega では割込みオプション(-DINTERRUPT)でビルドすると、若干速くなります。
● 他のマイコンとの通信でデータが壊れる
 電圧が異なるときは、逆流防止の抵抗やダイオード(+プルアップ抵抗)を入れてください。
● COM ポートをオープンしたままデバイスを抜くと、再接続できない
 デバイスのはずれたファイルハンドルが残るためです。ポートをクローズしてからデバイスを抜いてください。

その他

● ソースコードをコンパイルできない
 AVR Studio でソースコードをビルドするときは、ソースコードを日本語("マイ ドキュメント", "デスクトップ" など)を含まないパスに置いてください。Makefile の処理に不具合があるようです。
● デバイスドライバを更新できない
 XP では旧いドライバを完全消去するにはこつがいります。ドライバの説明に沿って消去してください。
● 制御線が欲しい
 ホスト PC からの制御が必要: CDC プロトコル仕様を調べて拡張してください。
 他のマイコンとのデータフロー制御のみ必要: AVR の文字バッファ残量をみて制御してください。
● ハード、ソフトを個々の目的にアレンジした
 ご自分で工夫してください。
● 商業利用は可能か
 V-USB も含めてライセンス条件を確認のうえ、判断してください。当方では一切のサポートはできません。次期 OS への対応などに自力で対処できないのであれば難しいと思います。
 

?e???v???[?g??ondt