I2c driver驱动编写常用接口介绍

驱动的编写我们需要了解常用的接口,下面介绍I2cdriver驱动编写的常用接口!!!

1.struct i2c_driver:描述从设备驱动的一个对象


2.struct i2c_client:作用是描述一个从设备信息,不需要自己创建由adapter创建(内部创建的时候调用的是:struct i2c_client *i2c_new_device(struct i2c_adapter * adap,structi2c_board_info const * info);),其中struct i2c_adapter *adapter指向adapter,表示是属于哪个总线的,因为每个总线都会有控制器,这个控制器就是adapter,主要关注4个成员


struct i2c_adapter:作用是描述一个i2c控制(不需要自己创建,由原厂商构建,注册用i2c_add_adapter,注销用i2c_del_adapter),其中会有个算法接口成员

3.struct i2c_msg:作用是描述一个数据包

4.Driver的注册和注销方法:

int i2c_register_driver(struct module *owner, struct i2c_driver*driver);

void i2c_del_driver(struct i2c_driver *driver);

 

5.读写数据方法:

int i2c_master_send(const struct i2c_client * client,const char *buf,int count)

int i2c_master_recv(const struct i2c_client * client,char * buf,intcount)

以上两个函数都最终都调用:

int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, intnum)


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值