当前位置:文档之家› S5P4418 GPS移植

S5P4418 GPS移植

S5P4418 GPS移植
S5P4418 GPS移植

S5P4418 GPS移植

硬件平台:九鼎创展X4418开发板+北斗+GPS

操作系统系统:android4.4

GPS在现在的产品中已经成为了一个必不可少的一种应用,这主要是在我们生活中GPS给我们带了种种便利,在现在城市道路飞速发展的情况下,GPS更显的由为重要,开车到了一个相对陌生的区域可能都要借助于GPS来指路。

我们来介绍一下在android系统下怎么移一个GPS功能。在android系统google已经做好了GPS功能,APK只要调用GPS的API就可以实现,google的代码中仅仅是针对普通GPS,但是针对中国北斗GPS还是没有完全集成,如果要针对中国北斗的话我们还是要修改JNI层代码。我们这里就简单讲一下GPS移植的一个过程。

GPS模块接口一般常见是采用串口来通讯(有的是USB接口),我这里用的是串口,GPS模块连接方式很简单,只要4根线就可以,VCC,TX,RX,GND.虽然在硬件连接是简单,但是要把GPS做好切是另外一回事,加为这里会有RF外理问题。这在硬件设计上有一些要求:

1. RF天线PCB走线要尽量短,并严格要求50欧的走线。

2. 天线走线用地包裹,并打对地孔。尽量屏蔽干扰信号。

影响GPS性能有很多种原因,当使用芯片来设计要考虑的东西就会更多。因为模块已经把很多东西都包含在里面,如LNA.SAW,晶振,等等。有很多人会碰到定位时间长,位置偏离大。这都是一些常见的问题。如定位时间长,这有可能是RF处理的不是很好,由于RF处理的不是很好导致信号不稳定,当环境条件不是很好时GPS打开时无法完整下载星历,或者模块本身使用的TCXO精度不高。等都会影响定位时间。偏移问题,有可能本身环境就不是很好,如城市峡谷,反射信号太多,这都是导致偏移的原因。

而在android移植要我们做的只有加入GPS HAL层代码。最常见的有两种,一种是厂商提供.SO文件,别一种是提供源码自己编译出.SO文件。我们这里介绍一下提供源码方法。另一种也一样。

厂商一般会提供一个代码包,主要包含下面几个文件。

第一步:把上面三个文件复制到android/hardware/libhardware/modules/gps文件夹内如果没有GPS这个文件夹可以建一个。GPS.H文件放到

android/hardware/libhardware/include中。

第二步:编译GPS代码:

$ source android/build/envsetup.sh

$ export TARGET_PRODUCT=X4418

$mmm ./gps

你可以查看在android/out/target/product/x4418/system/lib/hw目录中生成gps.x4418.so

第三步:修改framework代码。加为这部分代码只是做了GPS,但是北斗部分还没有加入,修改这部分主要是加入北斗部分内容。主要是修改下面的几个文件。

第四步:执行 #make update-api

#mk ./s

执行完前面的四步后把镜像烧写到开发板中,GPS就可以用了。

我们首先可以看一下GPS模块是否已经正常工具,可以执行一下下面命令:

#cat /dev/ttySCA1 (ttySCA1是指GPS所连接的串口号)

如果GPS正常的话就可以看到接收NEMA数据。如果没有查看硬件连接和串口驱动

GPS+北斗模块(um220-III N)

相关主题
文本预览
相关文档 最新文档