Arduino Microシリアルポートが数秒後に切断されます。

Arduino Microシリアルポートが数秒後に切断されます。

最近Arduino Micro ATMega32u4を購入しました。最初は「Mac OSX El Capitan」でテストし、誰かのコードをテストするか、El Capitanのセキュリティ設定を更新するまでうまくいきました。処理できるよりも多くの機能を備えたmain()関数をアップロードすると、main()がリセットされるまでボードの動作が停止することを読んでいました。そのため、LinuxコンピュータでArduinoを試してみることにしましたが、約7秒で接続が失われました。これはMicrosの一般的な問題であり、リセットボタンを押して点滅する例をすばやくアップロードする必要があるという古い記事を読んでいます。その時、ポートが動作するからです。しかし、アップロードをクリックするとすぐに、このエラーメッセージが表示されます。

Sketch uses 928 bytes (2%) of program storage space. Maximum is 32,256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes.
ioctl("TIOCMSET"): Broken pipe
ioctl("TIOCMSET"): Broken pipe
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x3f
An error occurred while uploading the sketch

最初の数秒間、arduinoでarduino接続が成功したことがわかりますが、lsusb7 dmesg | tail秒後にdmesg | tailはこのエラーメッセージを表示し、lsusbに表示されなくなりました。

[20720.796854] usb 3-1.3: device descriptor read/64, error -32
[20720.972844] usb 3-1.3: device descriptor read/64, error -32
[20721.148875] usb 3-1.3: new full-speed USB device number 21 using ehci-pci
[20721.220860] usb 3-1.3: device descriptor read/64, error -32
[20721.396880] usb 3-1.3: device descriptor read/64, error -32
[20721.572879] usb 3-1.3: new full-speed USB device number 22 using ehci-pci
[20721.980906] usb 3-1.3: device not accepting address 22, error -32
[20722.052911] usb 3-1.3: new full-speed USB device number 23 using ehci-pci
[20722.460927] usb 3-1.3: device not accepting address 23, error -32
[20722.461090] usb 3-1-port3: unable to enumerate USB device

Arduino IDEでは、最初の7秒間はシリアルポートが/ dev / ttyCOM0としてマークされ、7秒後に再び/ dev / ttyS0に戻って使用することはできません。

ボード上のリセットボタンを押すとtxとrxが同時に点滅し、他のLEDは緑色に点灯し、時々3〜4秒間点滅し、リセットボタンを2回押すと約7秒間点滅します。秒。ボード上でリセットをタップしてアップロードをクリックすると、緑色のLEDの点滅が消え、txとrxの点滅順に入ります。または、時々緑色に点滅し続け、次のエラーが発生します。 Arduino: 1.6.12 (Linux), Board: "Arduino/Genuino Uno"

Sketch uses 928 bytes (2%) of program storage space. Maximum is 32,256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2,039 bytes for local variables. Maximum is 2,048 bytes.
ioctl("TIOCMSET"): Broken pipe
ioctl("TIOCMSET"): Broken pipe
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x3f
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x3f
An error occurred while uploading the sketch

この問題を解決する方法に関するヒントや提案はありますか?ありがとう

答え1

この問題を解決するには、10.11.6 El Capitanを実行しているMac OSXはarduino microを認識しませんが、Linuxボックスは少なくとも7秒間信号を受信するため、Linuxボックスを使用する必要があります。したがって、マイクロをUSBポートに差し込む必要はありません。簡単な最小限のスケッチでArduino IDEを開き、Leonardoボードを選択します(はい、マイクロを使用しても)。マイクロのリセットボタンを押して押し続けます。ボードをUSBポートに差し込みます。 IDEウィンドウがスケッチコンパイルを終了してアップロードプロセスを開始したら、リセットボタンを押し続けます。

最終結果:スケッチがロードされ、ポート損失接続が修正され、IDEプログラムはEl Capitanでもマイマイクロを認識し続けます。私がアップロードしたスケッチがArduinoマイクロ処理には大きすぎるからです。

関連情報