I.MX6 GPS Android HAL Framework 调试
I.MX6 GPS Android HAL Framework 调试 一、参考文章:
android4. GPS定位问题
http://blog.csdn.net/bzw073/article/details/44341943 二、修改GPS配置文件:
. myzr@myzr:~/myandroid/device$ grep ttymxc2 * -R
......
fsl/imx6/etc/ueventd.freescale.rc:/dev/ttymxc2 system gps
fsl/sabresd_6dq/init.rc: symlink /dev/ttymxc2 /dev/gpsdevice
fsl/imx5x/ueventd.freescale.rc:/dev/ttymxc2 bluetooth bluetooth
fsl/imx53_smd/init.freescale.rc:#service hciattach /system/bin/logwrapper /system/bin/hciattach -n -s /dev/ttymxc2 ath3k flow sleep
fsl-proprietary/gps/Orion.ini:;ReceiverComPortName=/dev/ttymxc2
...... . cat fsl/imx6/etc/ueventd.freescale.rc
......
/dev/ttymxc1 system gps <----- zengjf modified
/dev/ttya0 system gps
/dev/ptya0 system gps
/dev/ttya1 system gps
/dev/ptya1 system gps
...... . cat fsl/sabresd_6dq/init.rc
......
# Set GPS serial and reset GPIO pin
setprop ro.kernel.android.gps /dev/ttymxc1 <----- zengjf modified
setprop persist.gps.oacmode @f
symlink /dev/ttymxc1 /dev/gpsdevice <----- zengjf modified
write /sys/class/gpio/export
write /sys/class/gpio/gpio60/direction "out"
write /sys/class/gpio/gpio60/value
...... . cat fsl-proprietary/gps/Orion.ini
......
; GPS Receiver COM Port Baud Rate for boot, , , , , or custom
ReceiverComPortBootSpeed= <----- zengjf modified
ReceiverComPortName=/dev/ttymxc1 <----- zengjf modified
...... 三、修改Atheros GPS HAL代码:
. 代码位置:/home/myzr/myandroid/hardware/imx/libgps/athr_gps.c
. GPS调试,当然要打开调试功能了:
......
#define GPS_DEBUG
/* #undef GPS_DEBUG_TOKEN */ /* print out NMEA tokens */
#define GPS_DEBUG_TOKEN /* print out NMEA tokens */
......
. 修改tty 串口默认通信波特率:
int gps_opentty(GpsState *state)
{
......
// disable echo on serial lines
if ( isatty( state->fd ) ) {
struct termios ios;
tcgetattr( state->fd, &ios );
bzero(&ios, sizeof(ios));
//ios.c_cflag = B115200 | CS8 | CLOCAL | CREAD;
ios.c_cflag = B9600 | CS8 | CLOCAL | CREAD; <----- zengjf modified
ios.c_iflag = IGNPAR;
ios.c_oflag = ;
ios.c_lflag = ; /* disable ECHO, ICANON, etc... */
tcsetattr( state->fd, TCSANOW, &ios );
tcflush(state->fd,TCIOFLUSH);
}
......
} 四、修改GPS LocationManagerService代码:
. 代码位置:/home/myzr/myandroid/frameworks/base/services/java/com/android/server/LocationManagerService.java
. 具体原因请参考《参考文章》
@Override
public void reportLocation(Location location, boolean passive) {
checkCallerIsProvider(); // 2015-11-2 zengjf modify for GPS module
/*
if (!location.isComplete()) {
Log.w(TAG, "Dropping incomplete location: " + location);
return;
}
*/
......
} 五、打开开发板GPS编译:
. 代码位置:/home/myzr/myandroid/device/fsl/sabresd_6dq/BoardConfig.mk
. 参考代码如下,没有任何修改:
BOARD_HAVE_HARDWARE_GPS := true
USE_ATHR_GPS_HARDWARE := true
USE_QEMU_GPS_HARDWARE := false
I.MX6 GPS Android HAL Framework 调试的更多相关文章
- 王家林的81门一站式云计算分布式大数据&移动互联网解决方案课程第14门课程:Android软硬整合设计与框架揭秘: HAL&Framework &Native Service &App&HTML5架构设计与实战开发
掌握Android从底层开发到框架整合技术到上层App开发及HTML5的全部技术: 一次彻底的Android架构.思想和实战技术的洗礼: 彻底掌握Andorid HAL.Android Runtime ...
- I.MX6 AW-NB177NF wifi HAL 调试修改
/************************************************************************* * I.MX6 AW-NB177NF wifi H ...
- Android如何完全调试framework层代码
1 之前写过一篇文章:<Android实现开机调试system_process> 2 google的eclipse插件ADT的已经能够很方便的调试Android的apk了,但是调试的时候应 ...
- 【转】Android HAL实例解析
原文网址:http://www.embedu.org/Column/Column339.htm 作者:刘老师,华清远见嵌入式学院讲师. 一.概述 本文希望通过分析台湾的Jollen的mokoid 工程 ...
- Android HAL实例解析
一.概述 本文希望通过分析台湾的Jollen的mokoid 工程代码,和在s5pc100平台上实现过程种遇到的问题,解析Andorid HAL的开发方法. 二.HAL介绍 现有HAL架构由Patric ...
- Android HAL模块实现
1. HAL介绍 Android的HAL(Hardware Abstract Layer硬件抽象层)是为了保护一些硬件提供商的知识产权而提出的.是为了避开linux的GPL束缚. 思路是把控制硬件的动 ...
- 整理: Android HAL
这篇文章整理来自http://bbs.chinaunix.net/thread-3675980-1-1.html 在论坛中看到的Android HAL讨论,有个ID描述的比较清楚,摘录如下: temp ...
- 在Mac系统上配置Android真机调试环境
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...
- android HAL 教程(含实例)
http://www.cnblogs.com/armlinux/archive/2012/01/14/2396768.html Android Hal 分析 ...
随机推荐
- C# 多线程编程第二步——线程同步与线程安全
上一篇博客学习了如何简单的使用多线程.其实普通的多线程确实很简单,但是一个安全的高效的多线程却不那么简单.所以很多时候不正确的使用多线程反倒会影响程序的性能. 下面先看一个例子 : class Pro ...
- VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)
前面两节讲了比较常用的按钮控件,并通过按钮控件实例说明了具体用法.本文要讲的是列表框控件(ListBox)及其使用实例. 列表框控件简介 列表框给出了一个选项清单,允许用户从中进行单项或多项选择,被选 ...
- hdu6158 The Designer
地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=6158 题目: The Designer Time Limit: 8000/4000 MS (J ...
- 20155316 2016-2017-2 《Java程序设计》第8周学习总结
教材学习内容总结 课堂部分要点 数据结构与算法 与 Java相结合 collection API:数据结构 crypt:密码学 操作系统 考试部分重点 实验楼:Linux第四节 教材:第6章.第14章 ...
- ng-深度学习-课程笔记-17: 序列模型和注意力机制(Week3)
1 基础模型(Basic models) 一个机器翻译的例子,比如把法语翻译成英语,如何构建一个神经网络来解决这个问题呢? 首先用RNN构建一个encoder,对法语进行编码,得到一系列特征 然后用R ...
- OpenResty api 网关
1,Orange网关 Orange是一个基于OpenResty的API网关.除Nginx的基本功能外,它还可用于API监控.访问控制(鉴权.WAF).流量筛选.访问限速.AB测试.动态分流等.它有以下 ...
- js正则表达式的使用详解
本文转自:http://www.jb51.net/article/39623.htm 1定义正则表达式2关于验证的三个这则表达式方法3正则表达式式的转义字符 1定义正则表达式在js中定义正则表达式很简 ...
- router基本使用
摘自:https://blog.csdn.net/qq_39894133/article/details/78992923 1.vue2 路由的使用流程: 1.vue2中的路由定义层:<rout ...
- AVAudioFoundation(4):音视频录制
本文转自:AVAudioFoundation(4):音视频录制 | www.samirchen.com 本文主要内容来自 AVFoundation Programming Guide. 采集设备的音视 ...
- [OpenCV入门教程之十二】OpenCV边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑
http://blog.csdn.net/poem_qianmo/article/details/25560901 本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog ...