linux-I2C驱动(2)--linux下的i2c驱动架构

I2c驱动架构:

 

 APP层:open、read、write

-----------------------------------------------------------------------------------------------

驱动层: drv_open、drv_read、drv_write  i2c设备驱动

            -------------------------------------------------------------------------------------

            I2c总线驱动程序:①识别设备;②提供读取的函数

-----------------------------------------------------------------------------------------------

 硬件层:   at24C02、mpu6050

 

linux-I2C驱动(2)--linux下的i2c驱动架构

步骤:1、注册一个设备:i2c_client

2、注册一个驱动:i2c_driver

3、match比较它们的名字,如果相同,则掉用probe函数

4、probe函数里,register_chrdev