TX2的Python串口调用问题

TX2的Python串口调用问题,第1张

在新的TX2模组装完环境之后测试了一下之前用的程序,发现调用的串口部分有报错。

Python AttributeError: ‘module‘ object has no attribute ‘Serial‘

 翻了一下参看之后看到Stackoverflow里面这一篇,看高赞回答发现自己就是单纯的装错库了。需要调用的库是PySerial,自己装的是Serial。卸掉换成对的就性了。

Python AttributeError: 'module' object has no attribute 'Serial' - Stack Overflowhttps://stackoverflow.com/questions/11403932/python-attributeerror-module-object-has-no-attribute-serial当然也有人是因为自己的程序名(XXX.py)与库名Serial.py冲突了,大家对号入座。

紧接着就是第二个问题,调用串口时被拒绝了。其实就是用户权限不够。

Stack Overflow这一遍说是把自己的用户名添加到tty这的群组里就行了。

linux - python serial [Errno 13] Permission denied: /dev/tty* - Stack Overflow

may be 2 years late but, you simply add your user to the tty group eg:

sudo usermod -a -G tty $USER

但是我的系统是18.04,这个 *** 作指令不太对,所以我又翻了一下答主参考的连接,试了一下直接修改这个串口的访问权限就可以了。666是权限分类表示,其他人文章里有写,感兴趣自己查一下把。注意串口记得改成自己要用的那一个。

Cannot open /dev/ttyS0: Permission denied - Ask Ubuntu">Serial port terminal > Cannot open /dev/ttyS0: Permission denied - Ask Ubuntu

sudo chmod 666 /dev/ttys0

 又试了一下,好像用这个指令修改被访问对象的权限每次重启后会重置。最后用了Ask Ubuntu论坛里的高赞回复。

sudo gpasswd --add ${USER} dialout

需要注意的是,在执行上述 *** 作时的用户即是要添加进dialout的用户。例如我在用root用户执行该命令时被添加的用户就是root。

root@ubuntu:/home/nvidia# sudo gpasswd --add ${USER} dialout
Adding user root to group dialout

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/873664.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存