Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1748518
  • 博文数量: 199
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 6186
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-30 11:01
个人简介

Linuxer.

文章存档

2015年(4)

2014年(28)

2013年(167)

分类: LINUX

2013-09-12 17:44:49

一、串口通讯
我用串口调试助手(windows下)向linux下的串口1 发送数据(串口线我跟其他机器互测过,没问题),
在linux 下 cat /dev/ttyS0 接收.
但奇怪的是 cat /dev/ttyS0没有显示受到认识数据,反而是我的串口调试助手收到了返回!!
linux端不用 cat /dev/ttyS0读的时候没有返回!

原因:
1.windows要发送可显示字符,cat才能显示出来。
2.串口调试助手设置了回显功能。
3.windows的串口调试软件发送时多发一个回车键就行了,而且之前发过去没显示的都会显示出来。这跟linux下printf不加"\n"就没显示是一个道理的。

二、环境串口无权限:
lenky@lenky-VirtualBox:~/桌面$ echo a > /dev/ttyS0
bash: /dev/ttyS0: 权限不够

解决方案:
1,查看串口对应的属性:
lenky@lenky-VirtualBox:~/桌面$ ls /dev/ttyS0 -l
crw-rw—- 1 root dialout 4, 64 9月 24 14:48 /dev/ttyS0

2,把当前帐号加入到串口所属组:
lenky@lenky-VirtualBox:~/桌面$ groups lenky
lenky : lenky adm cdrom sudo dip plugdev lpadmin sambashare
lenky@lenky-VirtualBox:~/桌面$ sudo gpasswd –add lenky dialout
[sudo] password for lenky:
正在将用户“lenky”加入到“dialout”组中
lenky@lenky-VirtualBox:~/桌面$ groups lenky
lenky : lenky adm dialout cdrom sudo dip plugdev lpadmin sambashare

3,注销后重新登录,再试,OK:
lenky@lenky-VirtualBox:~/桌面$ echo a > /dev/ttyS0
lenky@lenky-VirtualBox:~/桌面$


阅读(4065) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~