i2c_transfer原型
时间: 2023-09-02 15:15:55 浏览: 93
i2c_transfer函数是Linux内核中I2C传输数据的函数,其原型定义如下:
```c
int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num);
```
其中,参数说明如下:
- `adap`: I2C适配器对象的指针
- `msgs`: 待传输的I2C消息数组的指针
- `num`: 待传输的I2C消息的数量
函数返回值为传输成功的消息数量,如果出现错误则返回一个负数。
`struct i2c_adapter` 和 `struct i2c_msg` 分别定义了I2C适配器和I2C消息的数据结构,具体内容可以查看Linux内核源码中的 `include/linux/i2c.h` 文件。
相关问题
i2c_transfer函数原型
i2c_transfer函数原型如下:
```c
int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num);
```
其中:
- `adap`:指向要使用的I2C适配器的指针。
- `msgs`:指向I2C消息数组的指针。
- `num`:I2C消息的数量。
该函数的作用是在I2C总线上传输一组I2C消息,其中每个消息包含一个读或写操作。该函数返回传输的消息数量,如果传输失败则返回负数。
i2c_transfer i2c_write
i2c_transfer和i2c_write是Linux内核中用于I2C总线通信的函数。其中,i2c_write函数用于向指定I2C设备写入数据,而i2c_transfer函数则可用于读写I2C设备的数据。
i2c_write函数的函数原型为:
```
int i2c_write(struct i2c_client *client, const char *buf, int count);
```
其中,client参数为I2C设备的客户端结构体指针,buf参数为要写入的数据缓冲区指针,count参数为要写入的字节数。
i2c_transfer函数的函数原型为:
```
int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num);
```
其中,adap参数为I2C适配器结构体指针,msgs参数为I2C消息结构体数组指针,num参数为I2C消息的数量。
关于更多详细信息,建议您查阅相关文档或者资料。另外,以下是一些相关问题供您参考: