Arduino单片机I2C库
来源:互联网 发布:惊天战神 游戏源码 编辑:程序博客网 时间:2024/05/17 01:04
I2C是非常普通的通信方式,Arduino单片机集成了I2C库,可以直接调用几个函数实现I2C通信。Arduino MEGA2560开发板I2C接口,在板子上对应的20--SDA 21--SCL。
图1
Arduino的I2C库是Wire.h。常用库函数如下:
Wire.beginTransmission(Addr);
Wire.write(data);
Wire.endTransmission(void);
Wire.requestFrom(Addr, num);
Wire.available();
Wire.read()。
每个数据发出后,都必须有应答,只有在等到应答后,才能发出下一个数据或者指令。
下面是一段代码:
Wire.beginTransmission(0x01);
Wire.write(0xAA);
如果0x01发出后I2C器件没有应答,那么0xAA就不能发送,这时候用示波器或者逻辑分析仪看,就只能看到发出了Start信号和数据0x01。
Wire.beginTransmission(Addr)只发送起始信号和I2C地址,Addr是I2C总线地址。
Wire.write(data)只发送数据,data就是希望发送的数据,而且是发一次,地址就自动加一。
Wire.endTransmission(void)发送停止信号。
Wire.requestFrom(Addr, num)向已知地址器件获取连续num个数据,这时候需要注意,数据只是存起来了,并没有真正返回。
Wire.read()就是用来读回前面那些存起来的数据,而且是读一次地址自动加一。
Wire.available()则返回已经存了多少个数据。
0 0
- Arduino单片机I2C库
- arduino的i2c接口
- 单片机I2C接口技术
- 51单片机I2C程序
- 51单片机I2C程序
- 【单片机】I2C通信原理
- 单片机程序员一天学会Arduino
- 51单片机IO模拟I2C
- 单片机的I2C常规知识
- 51单片机I2C总线代码
- 51单片机I2C总线驱动程序
- 14.1 单片机I2C时序介绍
- Arduino驱动I2C接口12864LCD大屏液晶模块方法及库文件
- Arduino 简要笔记 i2c iic 字符转换
- Arduino 和LCD1602液晶屏 I2C接口实验
- 【Arduino】1.4 I2C LCD1602屏幕的使用
- Arduino 快速 寻找设备的I2C地址
- Arduino与上STM32之I2C
- Android 从0开始自定义控件之 View 基础知识与概念(一)
- pokemon shuffle c sorce
- Android实践:Https不再疑惑
- 指针数组和数组指针的使用
- 选择排序
- Arduino单片机I2C库
- silverlight连接SQL Server数据库
- 将GPS坐标转换为火星坐标
- WebService soap报文请求与响应报文解析
- ZeroMQ中的消息信封之二
- hibernate 二级缓存
- 云笔记
- pokemon shuffle c sorce 2
- SpringMVC中如何处理模型数据