在Device Manager中检测到Arduino Leonardo,但随后断开连接。
所以,这就是我正在做的事情。将 Arduino Leonardo 连接到我的笔记本电脑。它在设备管理器中被检测到(我也更新了驱动程序)。然而,我很快听到哔哔声,Leonardo 被卸载。如果我按下“重置”按钮,它会再次被检测到。但是,几秒钟后,它再次断开连接。设备管理器显示消息
目前,此硬件设备未连接到计算机。(代码 45)
注意:几周前它运行良好。我正在使用 Windows 7。
在Device Manager中检测到Arduino Leonardo,但随后断开连接。
所以,这就是我正在做的事情。将 Arduino Leonardo 连接到我的笔记本电脑。它在设备管理器中被检测到(我也更新了驱动程序)。然而,我很快听到哔哔声,Leonardo 被卸载。如果我按下“重置”按钮,它会再次被检测到。但是,几秒钟后,它再次断开连接。设备管理器显示消息
目前,此硬件设备未连接到计算机。(代码 45)
注意:几周前它运行良好。我正在使用 Windows 7。
我有完全相同的问题。按下重置后,我的 Arduino Micro 第一次被正常检测到。这是我的相应摘录/var/log/syslog
(没有时间戳等):
usb 6-1: new full-speed USB device number 56 using uhci_hcd
usb 6-1: New USB device found, idVendor=2341, idProduct=0037
usb 6-1: New USB device strings: Mfr=2, Product=1, SerialNumber=0
usb 6-1: Product: Arduino Micro
usb 6-1: Manufacturer: Arduino LLC
cdc_acm 6-1:1.0: ttyACM3: USB ACM device
但仅仅几秒钟后它就断开了:
usb 6-1: USB disconnect, device number 56
经过长时间的搜索,我发现了如何从这种致命情况中恢复过来:
tail -f /var/log/syslog
。这是为了观察/dev/tty
Arduino 与哪个端口相关联。/dev/tty
它获得的端口,然后在 IDE 中的菜单Tools → Serial Port下选择该端口。您必须在 Arduino 再次断开连接之前执行此操作,否则将无法访问正确的菜单点。在获得它之前,您可能需要一两次尝试。那是困难的部分。经过一番调查,我找到了整个痛苦的原因:在一些被遗忘的文件的一些被遗忘的源代码中,有一个 main() 函数(几周前我为 Linux/g++ 下的一些测试编写了那个函数)。编译器现在更喜欢使用该 main() 而不是 IDE 环境中的标准 main()。
结果是 USB 断开连接,可能是因为原来的 main() 进行了一些现在丢失的初始化。
它看起来像 Arduino Leonardo 的软重置问题,通常当您连接 Arduino Leonardo 时,它会出现在设备管理器中,如 Ard...bootloader (COMX),几秒钟后 Arduino Leonardo 出现在不同的 COM 端口。
我知道,在你的情况下,之后它就会消失。尝试在 Arduino IDE 中选择该端口,然后您必须尝试加载一些草图,例如blink.ino。同时按下重置按钮,然后在开始上传草图时,松开重置按钮。这对我行得通。
确保没有任何东西,而不是USB电缆,连接到 Arduino,然后重试。如果问题仍然存在,请尝试更换电缆并在不同的 USB 端口上进行测试。
还可以尝试阅读Windows 无法识别 Uno的帖子。如果您可以在设备管理器中看到 Arduino 几秒钟,请尝试重新安装驱动程序。驱动程序位于 Arduino IDE文件夹中。
您可能知道那些ICSP “神秘”引脚。
拿一个 Arduino Uno 并添加所需的“Arduino as Programmer”代码,将 Leonardo 连接到 Arduino Uno,现在您可以对 Leonardo 进行编程 - 但您会破坏 Leonardo 的引导加载程序。
在 IDE 中,转到“文件”并将鼠标移动到“使用 Arduino 作为程序员上传”,尽情享受吧。如果您采用这种方法,请不要购买LilyPad USB,因为它具有与 Leonardo 完全相同的 32U4 芯片,并且没有 ICSP 引脚。也就是说,除非您可以将引脚焊接到六个孔中!