- 博客(16)
- 资源 (1)
- 收藏
- 关注
转载 I2C总线信号时序总结
I2C总线信号时序总结总线空闲状态 I2C总线总线的SDA和SCL两条信号线同时处于高电平时,规定为总线的空闲状态。此时各个器件的输出级场效应管均处在截止状态,即释放总线,由两条信号线各自的上拉电阻把电平拉高。 启动信号 在时钟线SCL保持高电平期间,数据线SDA上的电平被拉低(即负跳变),定义为I2C总线总线的启动信号,它标志着一次数据传输的开始。启动信号是一种电
2013-12-27 13:26:08 1846
原创 Linux的 标准GPIO及中断API函数
#include // 标准 GPIO_API intgpio_request(unsigned gpio, const char *label); 获得并占有 GPIO>。在/proc/mem应该会有地址占用表描述。这种用法的保护作用前提是大家都遵守先申请再访问,有一个地方没遵守这个规则,这功能就失效了。好比进程互斥,必需大家在访问临界资源的时候都得先获取锁一样,其中一个没遵
2013-12-25 18:53:48 18861
转载 关于preempt_enable 和 preempt_disable
关于preempt_enable和 preempt_disable允许抢占和禁止抢占。例如:内核态程序和 中断处理程序的互斥因为中断是异步的(不只要何时发生中断,也即随时可能发生中断),因此如果内核态的程序使用了和中断处理程序中相同的数据结构,那么必须进行互斥访问。load %r0, counteradd %r0,1//发生中断store %r0
2013-12-25 16:34:06 5536
原创 device_init_wakeup()
static inline int device_init_wakeup(struct device *dev, bool val){ device_set_wakeup_capable(dev, val); //设置设备能不能唤醒 device_set_wakeup_enable(dev, val); //设置设备使不使用唤醒,这都与前面runtime电源管理
2013-12-25 12:53:28 7632
原创 新建 一个android工程,res/layout 下的xml布局文件无法预览
最近 新建 一个的工程,res/layout 下的xml布局文件无法预览了,一预览总是报这个错: This version of the rendering library is more recent than your version of ADT plug-in. Please update ADT plug-in上网查了一下,需要更新Eclipse插件:Hel
2013-12-23 12:31:03 7266
原创 Eclipse导入Android项目的正确方法
一、若是此项目 之前在 android的 源码下:1.首先要确保你的Eclipse安装了ADT(AndroidDevelopmentTools)插件.(详细资料请查阅官方文档)2.新建一个Android项目,此时选择"Createprojectformexistingsource",在Location中点"Browse...",先中Android项目所在文件夹。其它的所
2013-12-23 11:28:32 4865
转载 linux通知链相关
一.头文件[cpp] view plaincopy#include 二.结构体[cpp] view plaincopy//通知块 struct notifier_block { int (*notifier_call)(struct notifier_block *, unsigned long, void *);
2013-12-14 16:43:58 1283
转载 Android Uevent 分析,从kernel到framework
Uevent是内核通知android有状态变化的一种方法,比如USB线插入、拔出,电池电量变化等等。其本质是内核发送(可以通过socket)一个字符串,应用层(android)接收并解释该字符串,获取相应信息。一、Kernel 部分:UEVENT的发起在Kernel端,主要是通过函数int kobject_uevent_env(struct kobject *k
2013-12-13 18:25:32 6799 1
转载 Linux下 使用 中断唤醒 已经suspend的 系统
Linux下节能中断唤醒在linux系统进入节能,如进入mem之后,可以通过中断唤醒系统。选择在节能模式下,是否支持该中断唤醒系统是本文要讲的内容。例如,在触摸屏的suspend方法中,调用enable_irq_wake,则设置支持触摸屏中断唤醒系统休眠,在resume方法中,调用disable_irq_wake关闭支持。enable_irq_wake就该函数而言,可以从两方面思考
2013-12-13 14:54:48 7584
转载 Android中休眠与唤醒之wake_lock, early_suspend, late_resume
最近研究如何让Android不休眠。听组里人说,机器在充电的时候不休眠。我试了一下,确实是,串口可以使用(CONFIG_PM_DEBUG并没有打开)。这个时候,LCD显示屏是休眠了,触摸屏也休眠了,其他的比如重力传感器等就没有看了,但是标准的Linux系统并没有进入休眠。看了网上好多关于Android系统的休眠与唤醒例子,感觉有些懵懵懂懂的。于是,还是看内核代码吧。 An
2013-12-12 18:05:31 3429
转载 android电池(四):电池 电量计(MAX17040)驱动分析篇
电池电量计,库仑计,用max17040这颗电量IC去计量电池电量,这种方法比较合理。想起比较遥远的年代,做samsung s5pc110/sp5v210的时候,计量电量用一个AD口加两个分压电阻就做了,低电量的时候系统一直判断不准确,“低电关机”提示一会有,一会没有,客户那个郁闷呀,“到底是有电还是没电?”。如下图,通过两个分压电阻,和一个AD脚去侦测VCC(电池)电压。一、M
2013-12-11 15:21:54 2700
转载 android 电池(三):android电池系统
一、电池系统结构 Android中的电池使用方式主要有三种:AC、USB、Battery 等不同的模式。在应用程序层次,通常包括了电池状态显示的功能。因此从 Android 系统的软件方面(包括驱动程序和用户空间内容)需要在一定程度上获得电池的状态,电池系统主要负责电池信息统计、显示。电池系统的架构如下所示:自下而上, Android 的电池系统分成以下几个部分:
2013-12-11 13:46:06 1351
转载 android 电池(二):android关机充电流程、充电画面显示
上一篇我们讲了锂电池的充放电的流程和电池的一些特性,这一节我们重点说一下android关机充电是怎么、充电画面显示是怎么实现的,这个在工作中也比较有用,我们开始做这一块的时候也走了不少的弯路。我记得我们做adnroid2.3的时候,关机状态和充电logo显示是在uboot中做的。应该是有两种做法,回头我再看下uboot中做画面显示那一块是怎么做的,这一节我们重点说系统中的充电logo显示。
2013-12-11 11:55:56 3310
转载 android 电池(一):锂电池基本原理篇
池在物理接口上比较简单,就两条线:正极、负极;不过真正用到电子产品中时,有关电池方面的东西还是有点多的。--------------------------一、锂电池1、简述锂电池以及工作原理锂离子电池自1990年问世以来,因其卓越的性能得到了迅猛的发展,并广泛地应用于社会。锂离子电池以其它电 池所不可比拟的优势迅速占领了许多领域,象大家熟知的移动电话、笔记本电
2013-12-11 11:24:49 2314
原创 dev_name和dev_set_name对设备的名字进行操作
在新版本的内核中struct device 已经没有bus_id成员,取而代之的是通过dev_name和dev_set_name对设备的名字进行操作。dev_name和dev_set_name在2.6.35.6内核中的源代码如下:static inline const char *dev_name(const struct device *dev){ /* Use t
2013-12-05 10:52:23 13362 2
转载 platform_driver_probe与platform_driver_register的区别
Platform Device and Drivers 从我们可以了解Platform bus上面的驱动模型接口:platform_device,platform_driver。和PCI和USB这些大结构的总线不同,虚拟总线 Platform bus使用最小结构来集成SOC processer上的各种外设,或者各种“legacy”之间的互联。Platform device 典型的Pla
2013-12-04 16:24:08 4648
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人