linux串口读取问题

linux串口读取问题,第1张

首先你确定你那串口是否有东西可读? 就是你上面说的“一个文件不停的写数据到串口”!你可以先不这样读取,你可以在终端上用cat试试是否有数据可读:cat /dev/ttyS0

如果有的话,那你就检查串口设置是否正确,如波特率,数据位,停止位,校验位等!

最后就是你读取的函数了,看看先不要用printf打印字符串了,先看看十六进制是否有,然后再看字符等!

就是以上一些,你还可以参考Linux下串口文档,百度上很多的……

调试方法如下:

1、排除驱动程序问题:找到串口芯片的驱动程序,在其中加入往寄存器写数据的函数,加入printk打印接收数据。若正常,则排除驱动程序;

2、排除芯片问题:将串口的RX和TX短接,运行minicom发数据,用示波器抓波形分析是否有数据传输。若正常,则排除芯片问题。

3、排除cat/echo的问题:若串口是同步模式打开,且数据未发送完则导致死等。此可能非常低。

最好研究下系统架构再分析。


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

原文地址: http://outofmemory.cn/sjk/10009092.html

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

发表评论

登录后才能评论

评论列表(0条)

保存