~.Android GPS中间层驱动开发调试小结 // rkeclair_v1.02_sdkdemo , ublox芯片
调通GPS功能,用串口可打印出位置数据,并可在gpslogger应用界面上显示出来,现借此文档简要总结如下。
本文述及的GPS功能实现基于Android 2.1平台,发行版为瑞星微rkeclair_v1.02_sdkdemo及其内核工程kernel25_A7_281x,硬件开发板为瑞星微RK2818_SDK_Main_V1.0,GPS芯片为ublox 。
1、主要涉及源模块
gps_qemu.c/gps.h , android_locationProvider.cpp.
gpstest.c (新增)
2、开发思路
(1)命令行驱动,简便的调试方法。
直接利用现有的gps_qemu.c来修改部分代码,另ToolBox中增加一个Linux外部命令,作为测试桩,在测试程序里调用GPS接口,打印出GPS经纬度、方位、状态等目标数值。
(2)init进程,程序的必经之路。
同样在改完gps_qemu模块的相关代码,让它对实际终端设备进行控制后,不是手工加一个命令,而是在必经的路径上自动调用GPS上行接口gps_get_interface()以进入GPS功能程序流程来调试,一个尝试是在init 1号进程中调用gps功能,init是系统启动后第一个加载的用户空间进程。
3、开发过程及问题解决过程
(1)程序开发。
1)改造gps_qemu模块
(1)主要函数。
gps_state_thread