免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: ljwilliam

[驱动] 串口接收GPS模块发送的信息,接收上丢失数据 [复制链接]

论坛徽章:
0
发表于 2010-11-12 16:30 |显示全部楼层
本帖最后由 EZWORD 于 2010-11-12 16:31 编辑

那现在就要检查是不是驱动的问题了,内核层(《hardware》->tty_driver层->ldisc层->tty核心层->)到应用层,基本都能打印出来看看。

论坛徽章:
0
发表于 2010-11-12 16:45 |显示全部楼层
回复 11# EZWORD


也就是说在驱动的相应位置添加代码打印出实际接收到的信息
但是我仅仅只是在uart的8250.c里面添加代码,发现这里不停的有overrun计数器的增加。。。重要的是这里打印之后,和外部的cat命令得到的数据一起输出,不好辨识。而且发现这样改了之后貌似cat的输出也有了问题,变得更乱了

论坛徽章:
0
发表于 2010-11-12 16:49 |显示全部楼层
在8250.c中有个函数叫receive_chars,把ch接收到的内容有条件的打印出来看看。
只打印接收gps数据的那个串口的数据

论坛徽章:
0
发表于 2010-11-12 16:52 |显示全部楼层
回复 13# EZWORD


cat某一个口的话,打印的信息就是某一个口的。因为receive_char这个函数里面会计数接收字符和一些标志位的么,我也试着打印了一些这些数据,确定一直打印的都是这个口,只是这个ch的信息会变得很乱。
话说,那么该是什么条件呢。。。GPS一直都在发信息给串口。。。。

论坛徽章:
0
发表于 2010-11-12 16:57 |显示全部楼层
ch = serial_inp(up, UART_RX);
#if 1
                {
                        if(up->port.membase==(unsigned char*)IO_ADDRESS(TEST_SERIAL))                               
                                printk("\t%02x",ch);//hk
                }
#endif
                flag = TTY_NORMAL;
类似上面,那个TEST_SERIAL为gps对应串口所在的物理地址。

论坛徽章:
0
发表于 2010-11-12 20:17 |显示全部楼层
回复 15# EZWORD


之前我打的很乱的那些,稍微看出字段就有丢失
这次在兄台的指点下,打出了字段,发现这里的确就开始丢失数据了
那么这个8250是在之前所说的哪里一层。或者说,这里出现问题的话,该到哪里去解决呢?还望赐教。

论坛徽章:
0
发表于 2010-11-12 20:23 |显示全部楼层
晕,这里就丢数据,这是直接从硬件中读出来的东西。
是不是模式设置的问题,或者中断共享出现问题,最坏可能是硬件的问题。

论坛徽章:
0
发表于 2010-11-12 20:52 |显示全部楼层
回复 17# EZWORD


    串口都是各自有irq的,没有设置共享。
   工作方式的话,试过raw模式,也用过默认的,就是内核自带配置的工作方式,具体是什么,我也没往里面找。应该是没有问题。毕竟这里的配置项目真的很多ioflag,cflag等等。
小弟这下是真的迷糊了额。。。。

论坛徽章:
0
发表于 2010-11-15 11:27 |显示全部楼层
波特率,要确认,而且,要看看你的串口buf和流程处理上有没有丢数据。

论坛徽章:
0
发表于 2010-11-15 13:39 |显示全部楼层
回复 19# fazi_cu


波特率不对,打印的数据都显示不正常的吧?
buf里面的怎么看?还望提点
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,8.5折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时8.5折扣期:2019年9月30日前


----------------------------------------

大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP