IIC通讯,主机如何向从机请求不同的数据。-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6397|回复: 5

IIC通讯,主机如何向从机请求不同的数据。

[复制链接]
发表于 2016-6-12 23:59 | 显示全部楼层 |阅读模式
本帖最后由 传说中毒 于 2016-6-13 00:01 编辑

看了 《Arduino程序设计基础》5.3.5从机发送数据,主机接收数据。   发现主机给从机发送数据请求:wire.requestFrom(); 然后从机有一个wire.onRequest()相对应。
但是,如果我想主机给 某个从机发送两个不同的请求数据,该怎么实现。
(具体例子解释我的问题:如果我的2号从机有1个测温度的功能,1测距的功能;我的主机怎么向从机发送温度的数据请求,又该怎么发送距离的数据请求)



发表于 2016-6-13 01:20 | 显示全部楼层
这个从设备是你自己编程的?如果是,那就把两个数据合在一起发就行了,比如两个数据都是int型,那就是发4个字节
 楼主| 发表于 2016-6-13 01:25 | 显示全部楼层
奈何col 发表于 2016-6-13 01:20
这个从设备是你自己编程的?如果是,那就把两个数据合在一起发就行了,比如两个数据都是int型,那就是发4个 ...

我是刚在学习,想到这个问题。从设备是另外一块UNO板子。
如果想要温度数据,就请求发温度请求,想要距离数据,就发数据请求。不能单独请求不同数据吗?

点评

可以,你自己定义两个指令,主机发送这个指令,从机接收并判断返回对应的数据  详情 回复 发表于 2016-6-13 01:29
发表于 2016-6-13 01:29 | 显示全部楼层
传说中毒 发表于 2016-6-13 01:25
我是刚在学习,想到这个问题。从设备是另外一块UNO板子。
如果想要温度数据,就请求发温度请求,想要距离 ...

可以,你自己定义两个指令,主机发送这个指令,从机接收并判断返回对应的数据
 楼主| 发表于 2016-6-13 01:32 | 显示全部楼层
奈何col 发表于 2016-6-13 01:29
可以,你自己定义两个指令,主机发送这个指令,从机接收并判断返回对应的数据 ...

是不是就要修改wire的库函数。好像有点难度,我是初学者,还得慢慢学习。

点评

不用额,就是做个if判断。  详情 回复 发表于 2016-6-13 01:42
发表于 2016-6-13 01:42 | 显示全部楼层
传说中毒 发表于 2016-6-13 01:32
是不是就要修改wire的库函数。好像有点难度,我是初学者,还得慢慢学习。 ...

不用额,就是做个if判断。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-27 13:16 , Processed in 0.072655 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表