ホストがubuntuのvirtualbox内でwinxpを使用しています。ホストに接続された USB プログラマーはゲストにルーティングされます。avrdude を使用する WinAVR を使用します。makefile の関連フィールドは、プロセッサは Atmega32、ポートは usb、プログラマは stk200 として指定されています。それでも、デバイス「usb」が見つかりませんと表示されます。助けてください。
1 に答える
エラー-P usb
は、コマンドの誤りが原因です。
avrdude -p atmega32 -P usb -c stk500v2 -U flash:w:main.hex
USB シリアル接続のプログラマーまたはブートローダーを使用する場合は、「usb」をポートとして指定しないでください。オペレーティング システム ドライバーのダウンストリームでは、これらは USB デバイスではなくシリアル ポートとして扱われるためです。
このようなデバイスを使用するときは、接続されている com ポートまたはデバイス ノードを特定し (おそらく、接続および切断したときにどちらが表示/非表示になるかを確認することによって)、プログラマーが必要とするボー レートを見つけて、次のようなコマンドを発行します。なので
COM1またはWindowsの何でも
avrdude -p atmega32 -P COM1 -b115200 -c stk500v2 -U flash:w:main.hex
Linux または OSX
avrdude -p atmega32 -P /dev/whatever -b115200 -c stk500v2 -U flash:w:main.hex
Linux のデバイス ファイルは /dev/ttyUSB0 または /dev/ttyACM0 のようなものですが、OSX では /dev/tty.usbmodem などになる傾向があります。
コメントで提案する代替ソリューションは、特定のプログラマーが、ホストオペレーティングシステムの目には USB シリアルデバイスではなく、少なくともいくつかのバージョンのカスタム USB プロトコルで-P avrdoper
ある代替インターフェイスを提供するという事実を活用します。avrdude は話す方法を知っています。