androidi2c上层接口_Android I2C精析

.

Android I2C

精析

基于

linux

内核开发的

arm

系统,会用到很多

components

。要让这些

components

正常的工作,我们必须了解它们的接口,懂得如何去注册总线,初

始化芯片,

进而让芯片正常的工作。

下面我会介绍在

arm

开发过程中使用最频繁

的一些接口和总线的原理,以及如何在开发的过程中去使用它们。

1 I2C

总线与接口

I2C

总线具有结构简单,使用方便的特点。下面我会描述

linux

I2C

驱动的结

构,幷给出

I2C

设备驱动和应用的实现

1.1 I2C

总线概述

I

2C(Inter-Integrated Circuit)

总线是由

PHILIPS

公司开发的两线式串行

总线,

用于连接微控制器及外围设备。

是微电子通信控制领域广泛采用的一种总

线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封

装形式小,通信速率较高等优点。

I2C

总线是由数据线

SDA

和时钟

SCL

构成的串行总线,可发送和接收数据,

每个器件都有一个惟一的地址识别。

I2C

规程运用主

/

从双向通讯。器件发送数

据到总线上,

则定义为发送器,

器件接收数据则定义为接收器。

主器件和从器件

都可以工作于接收和发送状态。总线必须由主器件(通常为微控制器)控制,主

器件产生串行时钟(

SCL

)控制总线的传输方向,并产生起始和停止条件。

SDA

线上的数据状态仅在

SCL

为低电平的期间才能改变,

SCL

为高电平的期间,

SDA

状态的改变被用来表示起始和停止条件。

从理论上说一根

I2C

总线上可以挂载

128

I2C

设备,但是通常情况下,由

于有些设备在传输数据时占用的

I2C

总线带宽频繁,

所以我们在一根

I2C

总线上

挂载的设备是越少越好。下面给出

I2C

总线的连线图:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值