此库中包含

1 Wire.begin()

2 Wire.requestFrom()

3 Wire.beginTransmission()

4 Wire.endTransmission()

5 Wire.write()

6 Wire.available()

7 Wire.read()

8 Wire.onReceive()

9 Wire.onRequest()

Wire.begin() 和 Wire.begin(address)

描述

初始化wire库 ,并且加入到I2C网络,前者作为Master 或 Slaver,并且只能调用一次

参数

address :7位的器件地址(可选),如果没有输入,则以Master的形式加入到I2C网络

Wire.requestFrom()

描述

主设备请求从设备一个字节,这个字节可以被主设备用 read()或available()接受

Wire.requrstFrom(addtess,quantity)

Wire.requrstFrom(addtess,quantity,stop)

参数

addtess : 7位的器件地址

quantity : 请求得到的数量

stop :布尔形,‘1’ 则在请求结束后发送一个停止命令,并释放总线。‘0’则继续发送请求保持连接

返回

字节形 ,从从机接受到的字节数目

Wire.beginTransmission(address)

描述

开始一次传输数据,发送一个I2C开始字符

参数

address : 器件的7位地址

返回

none

Wire.endTransmission()和Wire.endTransmission(stop)

描述

结束一个由beginTransmission()开始的并且由write()排列的从机的传输。在Arduino中 endTransmission()接受到

一个布尔形变量,如果为1 则endTransmission()发送一个停止信息;如果为0 则发送开始信息

返回

0 成功 1 数据溢出 2 发送addtess时从机接受到NACK 3 发送数据时接受到 NACK 4 其他错误

Wire.write()

描述

向从机发送数据

形式

Wire.write(value)

Wire.write(string)

Wire.write(data, length)

参数

value :要发送的数值

string :字符组的指针

data :一个字节数组

length :传输的数量

例子

#include <Wire.h>  

byte val = 0;  

void setup()
{
Wire.begin(); // join i2c bus
} void loop()
{
Wire.beginTransmission(44); // transmit to device #44 (0x2c)
// device address is specified in datasheet
Wire.write(val); // sends value byte
Wire.endTransmission(); // stop transmitting val++; // increment value
if(val == 64) // if reached 64th position (max)
{
val = 0; // start over from lowest value
}
delay(500);
}

Wire.available()

描述

Wire.requestFrom()请求从机数据后,可以使用available接收

Wire.read()

描述

Wire.requestFrom()请求从机数据后,可以使用read接收

Wire.onReceive()

描述

从机接收主机发来的数据

Wire.onRequest()

描述

从机请求主机发送数据

Arduino Wire.h(IIC)库函数详解的更多相关文章

  1. 第十六章 IIC协议详解+UART串口读写EEPROM

    十六.IIC协议详解+Uart串口读写EEPROM 本文由杭电网友曾凯峰根据小梅哥FPGA IIC协议基本概念公开课内容整理并最终编写Verilog代码实现使用串口读写EEPROM的功能. 以下为原文 ...

  2. jni.h头文件详解二

    作者:左少华 博客:http://blog.csdn.net/shaohuazuo/article/details/42932813 转载请注明出处:http://blog.csdn.net/shao ...

  3. 【转】 jni.h头文件详解(二)

    原文网址:http://blog.csdn.net/shaohuazuo/article/details/42932813 作者:左少华 博客:http://blog.csdn.net/shaohua ...

  4. IIC通信协议详解

    IIC通信详解 IIC概述 IIC:两线式串行总线,它是由数据线SDA和时钟线SCL构成的串行总线,可发送和接收数据. 在CPU与被控IC之间.IC与IC之间进行双向传送,高速IIC总线一般可达400 ...

  5. Arduino Wire.h(IIC/ I2C)语法

    转自:https://www.cnblogs.com/1996jiwei/p/6561681.html 本文转自上面链接,版权请直接参考原链接. 最近在用I2C进行通信交流,发现有两种方法的头文件需要 ...

  6. Arduino String.h库函数详解

    此库中包含 1 charAT() 2 compareTo() 3 concat() 4 endsWith() 5 equals() 6 equalslgnoreCase() 7 getBytes() ...

  7. STM32 串口功能 库函数 详解和DMA 串口高级运用(转载)

    数据传输时要从支持那些相关的标准?传输的速度?什么时候开始?什么时候结束?传输的内容?怎样防止通信出错?数据量大的时候怎么弄?硬件怎么连接出发,当然对于stm32还要熟悉库函数的功能 具起来rs232 ...

  8. C程序中对时间的处理——time库函数详解

    包含文件:<sys/time.h> <time.h> 一.在C语言中有time_t, tm, timeval等几种类型的时间 1.time_t time_t实际上是长整数类型, ...

  9. jni.h头文件详解一

    1.jni.h头文件路径: /usr/lib/jvm/jdk_1.6.0_43/include/jni.h 2.jni.h头文件组成分析图: 3.下面通过上图进行分析讲解jni.h头文件. 一. jn ...

随机推荐

  1. ElasticSearch_学习_00_资源帖

    一.官方资料 1.Elasticsearch 权威指南(中文版) 二.精选资料 1. 全文搜索引擎 Elasticsearch 入门教程-阮一峰 2. 三.参考资料

  2. XSLT 教程

    应用自http://www.w3school.com.cn/xsl/index.asp XSL 指扩展样式表语言(EXtensible Stylesheet Language). 万维网联盟开始发展 ...

  3. 剑指offer--13.二进制中1的个数

    就是猜测试数据没有负数,哈哈 ----------------------------------------------------------------- 时间限制:1秒 空间限制:32768K ...

  4. 了解Unity中的多线程及使用多线程

    http://blog.csdn.net/hany3000/article/details/16917571 如果你想在游戏中使用多线程,你应该看看这篇文章,线程是一个相当复杂的话题,但如果你掌握了它 ...

  5. set和get的用法

    import { Map} from 'immutable'; let a = Map({ select: 'users', filter: Map({ name: 'Cam' }) }) let b ...

  6. DIY ESXI虚拟化服务器再度升级ESXI6.0 (U盘安装Esxi)

    前期我写了一个篇关于<IT屌丝DIY ESXI虚拟化服务器记实 >链接地址:http://lidongni.blog.51cto.com/2554605/1643996,这次主要是在原有的 ...

  7. Linux网络编程——tcp并发服务器(poll实现)

    想详细彻底地了解poll或看懂下面的代码请参考<Linux网络编程——I/O复用之poll函数> 代码: #include <string.h> #include <st ...

  8. 容器中跨主机的网络方案-flannel

    容器中的网络是建立docker集群的重要内容. 本文将介绍如何用flannel实现容器的多节点互通. 下图是flannel的实现原理,摘自: http://docker-k8s-lab.readthe ...

  9. Elasticsearch的过滤查询

    声明:我使用的elasticsearch的版本是5.4.0,具体参考下面的链接 https://www.elastic.co/guide/en/elasticsearch/reference/5.4/ ...

  10. 蓝桥杯 基础练习 BASIC-19 完美的代价

    基础练习 完美的代价   时间限制:1.0s   内存限制:512.0MB 问题描述 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的.小龙龙认为回文串才是完美的.现在给你一个串,它不一定 ...