I2C框架结构

来源:互联网 发布:人民大学网络继续教育 编辑:程序博客网 时间:2024/05/17 21:38


一、I2C总线框架

                


二、I2C软件架构

1、三大组成部分。

(1)I2c核心(i2c-core): I2c核心提供了总线驱动(适配器)和设备驱动的注册、注销方法、I2C通信(algorithm算法)、硬件无关、探测函数设备(检测设备地址)等

(2)I2C总线驱动(I2C adapter):I2C总线驱动是I2C适配器的软件实现,提供了I2C适配器与从设备间完成数据通信的能力。I2C总线驱动由 i2c_adapter 和 i2c_algorithm组成。

        I2C适配器是 SOC 中内置i2c控制器的软件抽象,代表I2C主机。

          I2C算法是主机与从机间通信的算法。

(3)、I2C 设备驱动:device、 devices driver。

2、I2C主要目标:驱动开发者可以在内核中方便的添加自己的I2C设备驱动程序,让内核统一管理I2C设备。

3、I2C子系统中常用的实现方式:驱动提供操作接口(/dev/input/event1),应用层使用这个接口。

三、相关结构体

(1)struct i2c_adapter(I2C适配器)


(2)struct i2c_algorithm(I2C算法)




(3)struct i2c_client       



      (4)struct device_driver




5、关键文件(drivers\i2c)

(1)i2c-core.c:  i2c核心层

(2)busses目录:这个文件中是已经编写好的各种向i2c核心层注册的适配器

(3)algos目录:这个目录里面是一些I2C通信算法



四、软件框架


原创粉丝点击