K162

Starwalker, Stardust.

0%

连接 Arduino 的 USB 串行设备设置

最近购买了一块 Arduino UNO 开发板,今天到手后便立马开始尝鲜。但很快就遇到了问题。在 Windows 下,使用 Arduino IDE 编写好代码并准备上传至 Arduino 中时,IDE 报错并提示说:

1
2
3
4
5
6
上传项目出错
开发版在 COM1 不可用
Using Port : COM1
Using Programmer : arduino
Overriding Baud Rate : 115200
avrdude: ser_open(): can't open device "\\.\COM1": 系统找不到指定文件

在经过 面向 Stack Overflow 编程 搜索 Stack Overflow 的问答之后,发现是 USB 转串行通讯接口后的 COM 端口号不一致引起的。1

随后,我找到了两种解决方案。

第一种办法是打开 Windows 的设备管理器,找到 端口(COM 和 LPT),选择 Arduino 相对应的 USB 串行设备,如 “USB 串行设备(COM2)”。打开其属性面板,切换至 端口设置 的标签页,有一个 高级(A)... 按钮,点击后出现高级设置页面,将底部的 COM 端口号(P) 设置为 COM1 即可。设置完毕后,需要断开 Arduino 的 USB 线缆,并重新连接。

第二种办法则是在 Arduino IDE 中,选择顶部标签栏中的 工具,找到端口的设置选项。选择已连接的相应 COM 端口号即可。然后可直接编译并上传 IDE 中的程序。

虽然仍未在 macOS 中尝试 Arduino IDE,但我猜测,在 macOS 中遇到类似问题时,第二种办法或许是较为有效便捷的解决途径。

参考链接

[1] user65439, Answer for arduino nano-avrdude: ser_open(): system…