zoukankan      html  css  js  c++  java
  • i2c_smbs 函数

    i2c_smbus系列函数有:

    
    s32 i2c_smbus_read_byte(const struct i2c_client *client);
    s32 i2c_smbus_write_byte(const struct i2c_client *client, u8 value);
    s32 i2c_smbus_read_byte_data(const struct i2c_client *client, u8 command);
    s32 i2c_smbus_write_byte_data(const struct i2c_client *client,u8 command, u8 value);
    s32 i2c_smbus_read_word_data(const struct i2c_client *client, u8 command);
    s32 i2c_smbus_write_word_data(const struct i2c_client *client,u8 command, u16 value);
    s32 i2c_smbus_read_block_data(const struct i2c_client *client,u8 command, u8 *values);
    s32 i2c_smbus_write_block_data(const struct i2c_client *client,u8 command, u8 length, const u8 *values);
    s32 i2c_smbus_read_i2c_block_data(const struct i2c_client *client,u8 command, u8 length, u8 *values);
    s32 i2c_smbus_write_i2c_block_data(const struct i2c_client *client,u8 command, u8 length, const u8 *values);
    
    1. i2c_smbus_read_byte()、i2c_smbus_write_byte()
      这两个函数是没有太大意义的,如果是read,则连读的基地址都没有,如果是write,则是简单将value发送过去了,设备或许都不知道这是发送写的基地址还是写的数据,这两个函数有点类似于i2c_master_recv()、i2c_master_send()。

    2. i2c_smbus_read_byte_data()、i2c_smbus_write_byte_data()
      首先是read,如果是read将传送两个msg,第一个msg用来传送读的基地址,第二个msg用来读取数据。
      然后是write,write只传送一个msg,只发送一个msg不好的地方是只能单方向传输,比如写就只能写,读就只能读(注意读的基地址是写方向)。但是这里为什么可以只传送一个msg呢,因为传输的方向并没有改变,包括写基地址,写数据都是写方向,但是写数据的长度为2,写基地址还是command,写的数据为value。

    3. i2c_smbus_read_word_data()、i2c_smbus_write_word_data()
      同上面类似,只是一次读写两个字节。

    4. i2c_smbus_read_block_data()、i2c_smbus_write_block_data()
      读注意,这里并没有指定读数据的长度。

    5. i2c_smbus_read_i2c_block_data()、i2c_smbus_write_i2c_block_data()
      同上面不一样的是,read时有长度指定。
      而write同上面不同的是,i2c_smbus_write_block_data()函数会将发送数据的长度一起发送给设备,而这里则不会。

    上面的一系列函数最终都是调用的i2c_smbus_xfer()函数,可以自己构造i2c_msg,然后调用i2c_transfer来发送数据。

  • 相关阅读:
    超详细教程2021新版oracle官网下载Windows JAVA-jdk11并安装配置(其他版本流程相同)
    个人总结
    6.15 团队项目心得
    五月团队项目收获
    八大排序算法读书笔记
    设计模式读书笔记3
    设计模式读书笔记2
    结对编程收获
    设计模式读书笔记
    UI-12组结对编程作业总结
  • 原文地址:https://www.cnblogs.com/chay/p/10615148.html
Copyright © 2011-2022 走看看