【Android驱动11】GPS晶体配置和基础知识讲解

一,GPS 配置改成不省晶体方式

1.1 查看原理图:
GPS xLNA
–GPIO_GPS_LNA_EN // 据此查到对应GPIO79(AL27)

1.2 修改dws配置gpio模式
1.3. 修改dts:


/* CONSYS GPIO standardization */
&pio {
	consys_pins_default: default {
};
gpslna_pins_init: gpslna@0 {
	pins_cmd_dat {
		pins = <PINMUX_GPIO79__FUNC_GPIO79>;
		slew-rate = <0>;
		bias-disable;
		output-low;
	};
};
gpslna_pins_oh: gpslna@1 {
	pins_cmd_dat {
		pins = <PINMUX_GPIO79__FUNC_GPIO79>;
		slew-rate = <1>;
		output-high;
	};
};
gpslna_pins_ol: gpslna@2 {
	pins_cmd_dat {
		pins = <PINMUX_GPIO79__FUNC_GPIO79>;
		slew-rate = <1>;
		output-low;
	};
};

&consys {
	pinctrl-names = "default", "gps_lna_state_init", "gps_lna_state_oh", "gps_lna_state_ol";
	pinctrl-0 = <&consys_pins_default>;
	pinctrl-1 = <&gpslna_pins_init>;
	pinctrl-2 = <&gpslna_pins_oh>;
	pinctrl-3 = <&gpslna_pins_ol>;
	status = "okay";
};

1.4 由省gps晶体,改为不省gps晶体
修改alps\device\mediatek\mt6580\WMT_SOC.cfg

- co_clock_flag=1 // 默认为省晶体
+ co_clock_flag=0

1.5 修改alps\vendor\mediatek\proprietary\custom\k80hd_bsp_fwv_512m\cgen\cfgdefault\CFG_GPS_Default.h


ap_nvram_gps_config_struct stGPSConfigDefault =
{
	/* if chip detector say it's not 3332 use /dev/stpgps,else use /ttyMT1 */
	{'/','d','e','v','/','s','t','p','g','p','s',0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},
	/* 0:s/w, 1:none, 2:h/w */
	1,
	/* 26MHz */
	26000000,
	/* default is 0ppm, by chip definetion. 6620 is 500, else 2000 */
	0,
	/* 0:16.368MHz TCXO */
	- 0xFE, // 默认为0xFF,省晶体要配为0xFE
	+ 0xFF, // 默认为0xFF,不省晶体要配为0xFF

1.6 更改modem配置-重新配modem

二,GPS的特殊知识

1, FULL start、COLD start、WARM start、HOT start这些启动方式是什么意思?

定位过程中最重要的辅助资讯包括时间、位置、星历。

FULL start:没有任何的辅助资讯。相当于end user第一次买到手机后使用定位应用的场景。

COLD start:有时间辅助资讯,end user不会遇到该场景。

WARM start:有时间、位置辅助资讯,end user此次定位距离上次定位超过2~4个小时。

HOT start:有所有的辅助资讯,end user此次定位距离上次定位小于2~4小时。

所以对于end user经常会遇到的场景是WARM/HOT start。

2, 各种启动方式的TTFF是多少?

TTFF的结果和测试环境、测试的手法、硬件的GPS 性能强相关。

MTK给出的数据是基于在open sky的环境下,有6颗卫星SNR》40db。

FULL start TTFF:小于50s。

COLD start TTFF:小于40s。

WARM start TTFF:小于35s。

HOT start TTFF:小于5s。

3, 辅助定位技术有哪些?
在这里插入图片描述
这三种技术可以同时打开,同时提供辅助资讯的时候,MTK 的GPS 演算法会都接受,不会冲突。

4, 如何快速获取MNL Version?

MNL 是Mediatek Navigation Library的缩写,版本号是以日期标注的,例如MNL_VER_14051401ALPS05_3.60_09。

将设置中的位置服务打开,请进入工程模式下YGPS-----》INFORMATION--MNL version就可以看到该版本号。

5, Galieo是否支持?

软件不支持。

6, Gps在工作期间,上报数据的频率是多少?

1HZ。

最高可以调整到5HZ,但不建议修改到5HZ,因为会带来高功耗。

请在linux_gps_init接口中,将g_is_1Hz=5即可。

7, 是否支持SBAS?

QZSS/WASS/EGNOS/MSAS/GAGAN。

8, 对GNSS的支持是如何的?

GNSS即指多卫星系统,例如GPS、GLONASS、BEIDOU。

在这里插入图片描述
9, GPS在工作期间,是否有休眠的机制?

没有。

10, GPS 芯片使用的TCXO物料的频偏不同,软件是否需要配置?

只要GPS chip不是6620,软件就不需要配置。

11, 软件如何配置使用什么卫星系统?

方法一:
找到mnl.prop file(path: /data/misc/,如果不存在,请创建该文件)
打开该文件,添加GNSS_MODE=value 保存后在push to /data/misc/即可。

方法二
修改mnl_config变量中的的GNSSOPMode的值。

对于非3332的取值范围:
对于6625L,默认是GPS+GLONASS;
对于MT3332,默认是GPS+GLONASS;
对于MT6630,默认是GPS+GLONASS+BEIDOU;

特别注意:
如果是在系统运行过程中修改GNSS的配置,为了是修改配置能够生效,请delete /data/misc/mtkgps.dat。
如果gps正在运行中,记得在修改配置后,关闭GPS,然后删除/data/misc/mtkgps.dat。
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孤舟簔笠翁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值