Ubuntu连接了串口设备但终端显示没有
- 1、前言
- 2、问题
- 2.1 查看虚拟机是否连接了设备
- 2.2 查看终端是否显示USB设备
- 2.3 查找不到文件或目录
- 3、解决方法
- 3.1 查看环形缓冲区信息
- 3.2 关闭BRLTTY服务
- 3.3 查看关闭服务后文件或目录是否存在
- 3.4 把当前用户添加进dialout 组
- 查看当前用户所属组
- 4、总结
1、前言
| 记录一下(Ubuntu连接了串口设备但终端显示没有的解决方法,方便自己回顾,也可以给有需要的人提供帮助。 |
2、问题
| 出现这个问题的主要原因是brltty抢占了串口设备 |
2.1 查看虚拟机是否连接了设备
| 如上图所示,虚拟机已经连接了串口设备 |
2.2 查看终端是否显示USB设备
| lsusb也有输出 |
2.3 查找不到文件或目录
ls-l /dev/ttyUSB*| 但ls -l /dev/ttyUSB*显示没有那个文件或目录 |
3、解决方法
| 解决方法主要是关闭brltty服务 |
3.1 查看环形缓冲区信息
sudodmesg|tail-n50| 查看Linux内核环形缓冲区中最近的50条系统消息 |
| brltty 是盲文显示器支持服务,会扫描所有 USB-Serial 设备,尤其喜欢 CH340 / FTDI,一旦识别“像盲文设备”,就会强行 claim 接口,结果就是串口设备反复消失 |
3.2 关闭BRLTTY服务
sudosystemctl stop brltty| 功能:立即停止正在运行的BRLTTY服务 |
sudosystemctl disable brltty| 功能:阻止BRLTTY服务自动启动 |
sudosystemctl mask brltty| 功能:使brltty服务完全不可用 |
sudoaptpurge brltty| 完全移除BRLTTY软件包及其所有相关文件 |
3.3 查看关闭服务后文件或目录是否存在
重启系统,然后输入下面的指令 |
ls-l /dev/ttyUSB*| 可以看到能正确显示串口设备了 |
3.4 把当前用户添加进dialout 组
| 为了后面程序能够正确识别到串口设备并正常运行,需要把当前用户添加进dialout 组 |
sudousermod-aG dialout h| 重启系统 |
查看当前用户所属组
groups| 成功把当前用户添加进了dialout组 |
4、总结
| 以上就是解决虚拟机Ubuntu22.04连接了串口设备但终端没有显示的整个过程了,浏览过程中,如若发现错误,欢迎大家指正,有问题的可以评论区留言或者私信。最后,如果大家觉得有所帮助的话,可以点个赞,谢谢大家!祉猷并茂,顺遂无虞! |