高通7227平台外接UBLOX的GPS模块数据接收不稳定问题

在高通7227平台上使用ublox的q5模块时遇到GPS信号跳变问题。通过对比PC与手机的数据发现,问题可能出现在数据解析程序中。最终通过修改串口驱动设置解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        最近遇到一个很奇特的问题。我们在高通7227平台下使用ublox的q5模块。结果发现接收数据解析后在测试软件上显示的时候,不停的跳变。为了排除问题,我们从串口焊了两根引线,接到串口转usb上联到PC上。在PC上安装ublox的测试工具uSetupCenter后,两相对比来排查问题。刚开始,手机上的应用与PC上的信号及强度完全一致。运行一段时间后就发现,手机上的信号出现丢失和跳变。而PC上显示的则非常稳定和良好。初步分析是我们的数据解析程序不够完善,只好按照官方手册一条条数据格式进行处理。工作完成后测试,发现另外一个奇怪现象。当插上USB线,不论是充电线还是数据线,GPS信号强度都很稳定并且变化及时的。或者如果用手指一直按着按键也是如此。但只要这两个条件都不满足,信号刷新似乎产生了延迟和丢失。从日志上来看某些串口数据没有读取到。

        还是先从底层排查,首先上示波器观察波形。结果波形十分正常,基本是标准的方波。硬件的问题排除。难道与中断有关?因为按键按下和USB线插入都会有中断产生,不过这个思路不具有可操作性。后来在代码回溯过程中发现,如果按键驱动只要不对,GPS信号就正常了。这下真是走入了歧途,没招。我那个鬼才同事,竟然想到与串口驱动有关。将ttyHSL修改为ttyHS,测试OK了。我问他怎么灵机一动的,他回答是运气。我真无语。后来他解释按键与GPS信号的奇怪现象是ARM9这边如果键值映射出错,导致ARM11重新做了一些硬件上的更新,所以GPS信号能正常。当按键正常时,则ARM11没有做对应的刷新,所以就出错了。这个解释让我丈二和尚摸不着头脑,似懂非懂。不过目前测试暂未发现其他问题。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值