arduino——I2C通讯

Arduino I2C 通信引脚

对于I2C通信,Arduino的不同电路板具有不同的引脚专用于SDA和SCL引脚。下面的列表显示了不同电路板中的这些引脚号。

  1. 在Arduino UNO中,引脚A4 = SDA,引脚A5 = SCL
  2. 对于Arduino Mega2560,引脚20 = SDA,引脚21 = SCL
  3. 在Arduino Leonardo中,引脚2 = SDA,引脚3 = SCL
  4. 对于Arduino Due,引脚20 = SDA,引脚21 = SCL,SDA1,SCL1

下图显示了 Arduino UNO 中的 SDA 和 SCL 引脚,它们将在本文中使用。

Arduino I2C 引脚

Arduino I2C 通信库

“有线”库用于Arduino中的I2C通信。以下是此库的重要功能。

Wire.begin(address)

使用此命令启动导线库,并将 I2C 总线作为主总线或从总线连接。地址是可选的。此地址由从器件的七位组成。如果未指定;设备以主设备身份加入总线。

Wire.requestFrom(地址、数量)

主设备使用此命令从设备请求字节。“Available ()” and “read ()” 函数可用于在之后收集这些字节。“地址”是要从其发出请求的特定从设备的地址,“数量”指定要请求的字节数。

Wire.beginTransmission(address)

此命令使用给定地址的从属设备启动字节的传输。之后,要传输的字节使用 write () 函数排队,这些字节使用 endTransmission() 函数进行传输。

Wire.endTransmission()

使用此命令结束使用 wire.beginTransmission() 函数启动的字节的传输。

此函数接受参数。如果参数为 TRUE,则在传输字节后发送 stop 命令,并且 I2C 总线不受限制。

如果参数为 FALSE,它将在传输字节后发送重新启动命令,并且总线不能幸免,并且它阻止另一个主设备在消息之间传输。

Wire.Write ()

此命令一次执行 2 个功能之一。

  1. 当主设备发出请求时,该函数从从设备写入数据。
  2. 在对 beginTransmission () 函数和 endTransmission () 函数的调用之间,此命令用于对字节进行传输的队列。
Wire.read ()

请求后从()命令,从从设备传输到主设备或主设备到从设备传输的字节;使用此命令读取。

Wire.available()

此函数返回调用 read () 函数后可用于检索的字节数。在主设备中,它是在 requestFrom() 函数之

  • 19
    点赞
  • 137
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ARDUINO IIC (Inter-Integrated Circuit) 是一种数字通信协议,用于在多个Arduino设备之间进行通信。它使用两根信号线(SDA和SCL)来实现设备之间的数据传输。在IIC通信中,有一个主设备和一个或多个从设备。主设备控制通信的开始和结束,并发送命令和数据给从设备,从设备接收并执行主设备发送的命令。 在给定的引用代码中,主设备通过IIC协议向从设备发送x的值。根据引用中的主设备代码,x的值以1的步长递增,并且如果x大于6,则重置为0。然后,主设备延迟200毫秒,然后再次递增x的值,并将其发送给从设备。 从设备的代码根据引用中的描述,将接收主设备发送的x的值。如果x的值小于或等于3,则引脚13处的LED灯将开启;否则,LED灯将关闭。 综上所述,ARDUINO IIC是一种用于在多个Arduino设备之间进行通信的协议。主设备通过IIC协议向从设备发送数据,并且从设备根据接收到的数据执行相应的操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [arduino——I2C通讯](https://blog.csdn.net/m0_46152804/article/details/125130186)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值