树莓派-wiringPi-wiringPi-C的i2c库使用
来源:互联网 发布:修改mysql最大连接数 编辑:程序博客网 时间:2024/05/27 03:27
原文地址:http://nicekwell.net/blog/20171124/shu-mei-pai-wiringpi-wiringpi-cde-i2cku-shi-yong.html
在linux上层有一个操作i2c的通用接口——smbus,在这里我们不介绍smbus的使用,但要知道wiringPi的i2c接口就是在linux上层基于smbus封装的。
wiringPi封装的函数中,有byte和word的读写,但是没有封装block的读写。也就是说,没有提供一次写大块数据的方法。
<file> = wiringPiI2CSetup(int <从机地址>);
打开i2c设备。
输入的是7位的从机地址,不需要输入i2c设备节点路径。
返回的是linux标准的设备文件描述符。
实际的处理过程是这样的:
wiringPi自动检测i2c设备文件路径(/dev/i2c-0或/dev/i2c-1);
然后打开文件,获取到了标准文件描述符;
然后通过ioctl设置从机地址。
int wiringPiI2CWrite(int fd,int data);
往从机写一个字节。
也就是从机地址后的一个字节,通常是command。
<起始> + <从机地址W> + <data> + <结束>
int wiringPiI2CWriteReg8(int fd, int reg, int data);
往从机指定的reg写入1个字节。
<起始> + <从机地址W> + <reg> + <data> + <结束>
int wiringPiI2CWriteReg16(int fd, int reg, int data);
往从机指定的reg写2个字节,先传输低8位,后传输高8位。
<起始> + <从机地址W> + <reg> + <data低8位> + <data高8位> + <结束>
int wiringPiI2CRead(int fd);
从从机直接读取一个字节,不写入任何cmd。
<起始> + <从机地址R> + <读1个字节> + <结束>
int wiringPiI2CReadReg8(int fd, int reg);
读取从机指定reg的一个字节。
<起始> + <从机地址W> + <reg> + <起始> + <从机地址R> + <读1个字节> + <结束>
int wiringPiI2CReadReg16(int fd, int reg);
读取从机指定reg的两个字节,先传输低8位,后传输高8位。
<起始> + <从机地址W> + <reg> + <起始> + <从机地址R> + <读低8位> + <读高8位> + <结束>
- 树莓派-wiringPi-wiringPi-C的i2c库使用
- 树莓派-wiringPi-树莓派的i2c配置
- 树莓派学习笔记——wiringPi I2C设备使用详解
- 树莓派学习笔记——wiringPi I2C设备使用详解
- 树莓派wiringPi库详解
- 树莓派安装wiringPi库
- 在Ubuntu环境下用QT5开发树莓派的GPIO程序(使用wiringPi库)之二 引入wiringPi库
- 树莓派安装wiringPi开发库
- 树莓派(raspberryPi)通过wiringpi C库控制sg90舵机
- 树莓派GPIO基础:WiringPi开发库基本使用
- 树莓派使用WiringPi实现LED灯闪烁
- 树莓派使用wiringPi控制LED灯
- 树莓派wiringPi常用的函数介绍
- 为树莓派装上WiringPi
- 树莓派wiringPi输出PMW
- 树莓派-wiringPi-GPIO
- 树莓派-wiringPi-时间函数
- 树莓派-wiringPi-UART串口
- 滚动到顶部、offset()、.offset().top、offsetTop、 .scrollTop、.scrollHeight、.clientHeight等相关比较
- null, message from server: "Host 'xxx' is blocked because of many connection errors; unblock
- filter:埃氏筛法,回数判断is_palindrome
- java8实战一:通过行为参数化传递代码
- 从小白的角度来看:利用mitmproxy自动监控/修改前端请求,实现简单mock
- 树莓派-wiringPi-wiringPi-C的i2c库使用
- springBoot+mybatis环境部署
- activiti删除流程实例与activiti删除部署的流程,是初学者最容易犯的错误
- 理解 js 原型
- FMI飞马网IT书籍赠送:参加获奖就送智能技术/软件开发/Web技术/数据科学计算机科学/网络技术/IT文化与互联网
- 子域名查询
- 【Android】TabLayout实践
- 画标注线段
- 苹果系统允许打开任何来源的应用