学习笔记--i2c驱动框架

i2c驱动框架
一一一一一一一一一一一一一一一一一一一一一一一一一
软件层 open read write
一一一一一一一一一一一一一一一一一一一一
驱动 drv_open drv_read drv_write i2c设备驱动:知道数据含义
一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一
i2c总线驱动程序 :
a.识别
b.提供读写函数,知道如何收发
一一一一一一一一一一一一一一一一一一一一一一一一一
硬件层
一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一
i2c总线驱动程序:
a.分配一个i2c_adapter 结构体(适配器)
b.设置:algo(算法)
.master_xfer (传输函数)
(发i2c信号函数)
c.注册:i2c_add_adapter

作用:
1,把适配器放入总线dev链表
2,调用drv的attatch_adapter函数
3,driver->attach_adapter(adapter);
i2c_probe(adapter, &addr_data, eeprom_detect);
适配器 设备地址 函数
用adapter函数里的master_xfer 发S信号 发设备地址 如果可以收到ACK信号 则说明发现了一个设备(client)(确定有无该设备 若有) 则调用上面的函数传输数据

i2c设备驱动程序
i2c_add_driver:
.id
.attatch_adapter(.i2c_probe)
把i2c_driver 放入drv链表

上一篇:Java – 在自定义适配器中创建对两个模型的引用


下一篇:android – 列表视图中的性能降低