linux驱动
jwq2011
这个作者很懒,什么都没留下…
展开
-
PX2_Orig_BootLog
PX2启动信息原创 2015-04-08 21:05:04 · 2600 阅读 · 0 评论 -
MPU6050姿态融合
姿态角(Euler角)pitch yaw roll飞行器的姿态角并不是指哪个角度,是三个角度的统称。它们是:俯仰、滚转、偏航。你可以想象是飞机围绕XYZ三个轴分别转动形成的夹角。地面坐标系(earth-surface inertial reference frame)Sg--------OXgYgZg ①在地面上选一点Og②使Xg轴在水平面内并指向某一方向③Zg轴垂转载 2017-03-04 21:16:36 · 2478 阅读 · 0 评论 -
三轴陀螺仪MPU3050驱动解析
MPU3050是invensense公司的三轴陀螺仪芯片,三轴陀螺仪最大的作用就是“测量角速度,以判别物体的运动状态,所以也称为运动传感器.下图是MPU3050的系统框图,芯片有1个中断引脚,可以通过i2c来控制,获取x Gyro,y Gyro,z Gyro设备驱动中用mpu3050_sensor结构体来描述MPU3050设备对象(对象中包含i2c客户端及输入设备来处理获取的x,y转载 2017-03-04 21:04:10 · 2074 阅读 · 0 评论 -
MPU6050 DMP官方手册【翻译】
嵌入式运动驱动5.1.1教程文件版-百度网盘1.修订历史2.目标应用Motion Driver 是一款传感器驱动层程序,其配置简单,利用了InvenSense的运动传感设备的片上数字移动处理器(DMP)的能力。Motion Driver 是嵌入式运动应用软件的一个子集,可以方便地移植到复杂的MCU架构。本文档介绍了运动驱动库的实际应用。部分教程为兼容TI的MSP430嵌入式处理器而转载 2017-03-04 18:06:16 · 6001 阅读 · 0 评论 -
MPU6050参考代码
MPU-60X0 是全球首例 9轴运动处理传感器。它集成了 3轴 MEMS陀螺仪, 3轴 MEMS加速度计,以及一个可扩展的数字运动处理器 DMP(Digital Motion Processor),可用 I2C接口连接一个第三方的数字传感器,比如磁力计。扩展之后就可以通过其 I2C或 SPI接口输出一个 9 轴的信号(SPI接口仅在 MPU-6000可用)。 MPU-转载 2017-03-04 18:01:56 · 8909 阅读 · 0 评论 -
Android之 看“马达”如何贯通Android系统 (从硬件设计 --> 驱动 --> HAL --> JNI --> Framework --> Application)
在Android 2.3(Gingerbread) 系统的时候,我写过一篇关于“Android 震动马达系统“的文章,当时的Linux内核还是2.6版本的。写那篇文章的目的,是想彻底的了解从硬件到驱动,再到应用的运作流程。完成了之后,文章一直仍在草稿箱里面没发表;今天看到,决定整理一下,重新发表。目的是想和大家分享自己对Android系统的一点认识:以马达为代表,来考究“Android是如何一步步转载 2017-02-14 12:28:38 · 495 阅读 · 0 评论 -
Linux下用文件IO的方式操作GPIO(/sys/class/gpio)
通过sysfs方式控制GPIO,先访问/sys/class/gpio目录,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包括direction和value等,direction控制GPIO方向,而value可控制GPIO输出或获得GPIO输入。文件IO方式操作GPIO,使用到了4个函数open、close、read、write。原创 2017-02-14 12:25:34 · 1476 阅读 · 0 评论 -
Android 获取framebuffer相关信息
/******************************************************************************** * Android 获取framebuffer信息 * 声明: * 调试显示屏的时候,我们可能会需要去知道我们设置的信息是否正确,或者有时候 * 需要去确认别人的设置的是否正确。原创 2017-02-09 17:30:17 · 904 阅读 · 0 评论 -
【平台设备驱动】中module_platform_driver的定义和使用
该函数实际是一个宏,它在include/linux/platform_device.h中定义如下:[cpp] view plain copy /* module_platform_driver() - Helper macro for drivers that don't do * anything special in module原创 2017-02-08 17:21:31 · 4971 阅读 · 0 评论 -
基于Android 的GPS 移植(主要结构体及接口介绍)
最近负责 Android 驱动的GPS部分,所谓Android驱动 我觉得可以说成是linux应用之前发了一个图描述了 Android GPS 架构GPS芯片大多采用串口通信,所以只要CPU能够提供一个UART 驱动, 那么跟GPS芯片通信是没有问题的,但是现在很多GPS功能不是一个单独的芯片,大部分都是一个芯片上有好几种无线模块 比如 Blletooth WiFi转载 2017-02-16 18:25:24 · 1437 阅读 · 1 评论 -
和菜鸟一起学android4.0.3源码之硬件gps简单移植
关于android定位方式android 定位一般有四种方法,这四种方式分别是GPS定位、WIFI定位、基站定位、AGPS定位。1、 Android GPS需要GPS硬件支持直接和卫星交互来获取当前经纬度,这种方式需要手机支持GPS模块现在大部分的智能机应该都有了。通过GPS方式准确度是最高的但是它的缺点也非常明显。1、 比较耗电2、 绝大部分用户默认不开启GPS模块3、转载 2017-02-16 18:16:52 · 1314 阅读 · 0 评论 -
GPS数据包格式+数据解析
全球时区的划分: 每个时区跨15°经度。以0°经线为界向东向西各划出7.5°经度,作为0时区。即0时区的经度范围是7.5°W——7.5°E。从7.5°E与7.5°W分别向东、向西每15°经度划分为一个时区,直到东11区和西11区。东11区最东部的经度是172.5°E,由172.5°E——180°之间就是东12区。西11区最西部的经度是172.5°W,由172.5°W——180°之间就是西12区。东原创 2016-12-15 18:37:15 · 104891 阅读 · 22 评论 -
深入解析linux下rtc架构
转载来自: 深入解析linux下rtc架构 | 学步园 +http://www.xuebuyuan.com/1722840.html一.描述rtc相关结构体1.rtc设备struct rtc_device //rtc设备{ struct device dev; //设备文件 struct module *owner; //所有者 int id;转载 2016-12-16 17:12:36 · 650 阅读 · 0 评论 -
引用<Math.h>编译sin、cos时无法通过【待续】
引用math.h时使用cos( )、sin( )、sqrt( )进行编译会提示:undefined reference to 'sqrt'、undefined reference to 'sin'等异常信息。 经查找,得到的回答是需要编译的时候加-lm,-l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?就拿数学库来说,他的库名是m,他的库文件原创 2016-12-14 19:39:26 · 2893 阅读 · 1 评论 -
Linux内核中的常用宏container_of其实很简单
开发平台:Ubuntu11.04编 译器:gcc version 4.5.2 (Ubuntu/Linaro4.5.2-8ubuntu4)Container_of在Linux内核中是一个常用的宏,用于从包含在某个结构中的指针获得结构本身的指针,通俗地讲就是通过结构体变量中某个成员的首地址进而获得整个结构体变量的首地址。转载 2015-05-19 19:23:48 · 545 阅读 · 0 评论 -
输入子系统(一)
本次所涉及到的文件: include/linux/input.h drivers/input/input.c arch/arm/mach-rk30/board-rk30-sdk.c drivers/input/keyboard/rk29_keys.cBoot Log:原创 2015-04-08 20:45:46 · 632 阅读 · 0 评论 -
Linux IIO子系统
//============================================================================\\|| 系 统:WindowsXP & Ubuntu14.04 || 工 具:Source Insight 3.5 || 作转载 2017-03-04 21:34:19 · 4449 阅读 · 0 评论