可以用如下命令查看串口信息:
ls -l /dev/ttyUSB*来查看相关的信息。
但是普通用户没有usb操作权限(函数open()打不开串口:refused),如果我们想在ROS程序里面打开串口,就得首先放开串口权限。
法一:
为了使普通用户也能正常使用USB转串口设备,可以通过增加udev规则来实现:
创建文件/etc/udev/rules.d/70-ttyusb.rules
1
|
sudo
gedit
/etc/udev/rules
.d
/70-ttyusb
.rules
|
KERNEL=="ttyUSB[0-9]*",MODE="0666"
增加访问权限:
1
|
sudo
chmod
666
/dev/ttyUSB0
|
重新插入USB转串口设备,普通用户就有权限访问了。
串口编程中使用open()函数就能打开串口了.
法二:
1
|
sudo
chmod
a+rw
/dev/ttyUSB0
|
即可。(该方法不能给用户永久访问权限,一次性的,下次拔插串口线或者开关机就无效了)
法三:
1
2
|
$
ls
-l
/dev/ttyACM0
crw-rw---- 1 root dialout 166,0 5月 24 17:17
/dev/ttyACM0
|
可以看到用户 (owner 是 root)而所属用户组为 dialout,因此一种方法是把我们的登陆账号加入到这个用户组。
1
2
|
$
whoami
savvy
|
1
|
$
sudo
usermod
-aG dialout savvy
|
最后,登出再登入系统,登陆名savvy就可以使用该串口了 。