avrdude:ser_open():无法打开设备"/ dev/ttyACM0":设备或资源繁忙

kaf*_*kas 12 linux arduino linux-mint

我是Linux Mint用户.我正在处理Arduino Yun.我正在编译Arduino程序.之后我上传到Arduino Yun.然后我收到这些错误.你能帮助我吗?

End*_*rju 21

我的莱昂纳多董事会和Ubuntu确实遇到了问题.添加规则告诉ModemManger忽略所提到的链接中的所有USB设备对我不起作用.但是,实际上删除modemmanager确实如此.

sudo apt-get purge modemmanager


hew*_*ewi 18

首先需要确保您有正确的读/写权限,如所描述这里,esentially输入以下命令:

$ sudo adduser <username> dialout
$ sudo chmod a+rw /dev/ttyACM0
Run Code Online (Sandbox Code Playgroud)

'/ dev/ttyACM0'是你的arduino连接的端口,它应该列在root的/ dev文件夹中.

第二:在确定了arduino所连接的端口并且您已为此端口设置了正确的权限之后,您需要运行以下命令.我不确定它是做什么的,我不确定它是否真的需要,但它使上传对我来说有好几次了

$ sudo udevadm trigger
Run Code Online (Sandbox Code Playgroud)

这里找到了这个命令:http://starter-kit.nettigo.eu/2015/serial-port-busy-for-avrdude-on-ubuntu-with-arduino-leonardo-eth/

第三,你会发现有时上传时间和运气的挑战.继续按下复位(有时连续两次),同时按下arduino草图的上传按钮.在某些时刻,它会起作用.当我不断更改代码中的小块时,我有更多的运气,所以当我按下'upload'时,它必须先编译代码.

https://www.arduino.cc/en/Guide/Troubleshooting#upload

在某些计算机上,您可能需要按下重置按钮

我从来没有搞过bootloader,也没有使用ICSP引脚等(幸运的是)

另请查看Arduino论坛自己提供的链接

  • http://www.arduino.org/learning/getting-started/arduino-ide-on-linux-based-os (2认同)

Non*_*ate 5

对我来说一直有效的解决方案是转到Tools -> Port -> /dev/ttyACMx并再次单击选定的端口。

之后,IDE会毫无问题地上传代码。