linux 串口连接权限

今天连接先锋机器人,用的是串口转USB连接到客户端的,之前在Ubuntu,Windodws下面都没有问题,转到自己本本上用Fedora的时候,给出提示:
Could not open serial port '/dev/ttyUSB0'

而/dev/ttyUSB0 是可以ls出来的,捣鼓了半天,发现是权限问题,使用如下命令:
$ ls /dev/ttyUSB0 -l
crw-rw---- 1 root dialout 188, 0 Sep 21 20:12 /dev/ttyUSB0

如果进入超级模式,上面那个问题就没有了,解决的话,有个笨方法,手动修改权限即可
$ sudo chmod 666 /dev/ttyUSB0

但是这样有一个问题,就是每次重新连接之后,都需要输入这个命令,麻烦很。百度了下,找到如下解决方案:
http://www.cnzzad.com/tut/68008.html
就是修改配置文件,具体操作我在重复一遍,方便自己以后啦,感谢上述文章的作者。

在 /etc/udev/rules.d 目录下面添加一个 20-usb-serial.rules, 内容如下:
KERNEL=="ttyUSB*"  MODE="0666"

然后,拔掉由串口过来的USB线,重新连接,运行程序,OK, 一路通过……

在windows下面不太清楚,那边直接使用的com口,先锋是默认是用com1。 而在Ubuntu下面,安装的时候并不像Fedora那般要你创建一个root,然后需要再另开一个用户使用,而是直接创建一个root,并不会提示你新建普通用户,反正我一直用root的,所以也没有这个问题。

你可能感兴趣的:(robot)