GPS打开失败

1,  在硬件上检查GPS chip的外围连接电路,例如是否导通、有没有虚焊的地方、物料有没有贴错。
2,  在硬件连接检查没有问题之后,首先要使得GPS底层的驱动正常工作。
l  检查项目makefile中,GPS_SUPPORT设置是否正确。
l  检查dws文件中GPS相关的GPIO的配置是否正确,参考FAQ上的GPS CHIP管脚设置。
l  GPS_AssignGpioPins函数是用来选择GPS相关的GPIO的模式,例如power_enable_pin、32K时钟pin(仅对MT3336)、uart中tx和rx。这一步很重要,一定要确保正确。
在选择好模式之后,GPS_GetUartMode函数会选择uart的rx和tx的模式值,以及uart的端口号,要确保这里选择的uart端口和硬件上使用的uart口一致。
l  GPS_AssignEintPins函数是用来配置GPS EINT中断管脚的模式,要确保正确。
l  GPS_MNL_Init函数中,会调用mtk_gps_init函数(在该函数中,cpu和GPS chip之前会通过uart通信,可以量测uart的rx和tx管脚会有数据波形)。
Mtk_gps_init函数返回成功,表示这GPS chip已经可以正常的工作了。如果上面的设置都没有问题,该函数返回了失败,极有可能是硬件的原因。例如复位管脚(GPS chip内已经集成了复位功能,如果接到cpu的GPIO来控制,一定要注意引脚电平状态)连接不正确,或者是GPS chip上的某些电源管脚电压不对等等。
3,  因为有很多项目是没有键盘和LCD的,这里选择一种实用的调试方法,即利用catcher工具发送命令给目标机。
打开GPS命令如下,然后发送,底层会调用GPS_MNL_Init函数。
关闭GPS命令如下,然后发送,底层会调用GPS_MNL_Shutdown函数。
4,  当成功打开GPS之后,底层的驱动正常工作,会定时的出发GPS的EINT中断,从而将定位相关的信息上报,从catcher工具里你可以看到以$开始的nmea语句,如下图。
5,  在很多工程中(52平台)的makefile中,
KAL_DEBUG_LEVEL=REALEASE_KAL,
KAL_TRACE_OUTPUT=NONE,
PARTIAL_TRACE_LIB=NONE.
上面的那些nmea语句的信息就不会再显示出来了。
按照下面步骤修改即可以在catcher中看到nmea语句。
a)         PARTIAL_TRACE_LIB=gps mnl.
b)         在mtk_sys_nmea_output函数中,调用打印函数kal_promt_trace(MOD_MNL,”%s”,buffer)。
c)         重新编译。
6,  通过上述调通了GPS的底层驱动,这表明GPS的软体是没有问题了。接下的就是硬件部分,例如GPS天线的接受性能等等,这些需要进一步的调试。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值