物联网实验二- 实现mind+下Easy IoT上mqtt消息的通讯

一、实验目的及要求

【实验一】实现Easy IoT配置。
【实验二】实现上mqtt消息的通讯。

二、实验原理与内容

实现mind+下Easy IoT上mqtt消息的通讯。

三、实验软硬件环境

硬件:掌控板
软件:Mind+

四、Easy IoT的注册和配置:

4.1.Easy IoT的注册地址

Easy IoT的注册地址都大学生了,自行注册

4.2.Easy IoT的配置:

在这里插入图片描述

4.3.尝试发送并接收信息:

在这里插入图片描述
在这里插入图片描述

五、Mind+的初始配置:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意:上传到设备再在掌控板上触发运行。
在这里插入图片描述

六、代码:

6.1.核心代码截图:

连手机热点(电脑可不连网):

在这里插入图片描述

接收信息的Easy IoT订阅的topics和账号密码:

在这里插入图片描述

发送到对方Easy IoT的信息:

在这里插入图片描述

通过这个函数可以在控制板上看到发送出去的信息:

在这里插入图片描述

6.2.完整代码:

/*!
 * MindPlus
 * mpython
 *
 */
#include <MPython.h>
#include <DFRobot_Iot.h>
// 函数声明
void obloqMqttEventT0(String& message);
// 静态常量
const String topics[5] = {"lVY85mFGg","f43DtiKGg","","",""};
const MsgHandleCb msgHandles[5] = {obloqMqttEventT0,NULL,NULL,NULL,NULL};
// 创建对象
DFRobot_Iot myIot;


// 主程序开始
void setup() {
	mPython.begin();
	myIot.setMqttCallback(msgHandles);
	myIot.wifiConnect("oppo", "12345678");
	while (!myIot.wifiStatus()) {yield();}
	display.setCursorLine(1);
	display.printLine("wifi连接成功");
	rgb.write(0, 0x00FF00);
	myIot.init("iot.dfrobot.com.cn","OD-85mFGg","","OvaUciFGgz",topics,1883);
	myIot.connect();
	while (!myIot.connected()) {yield();}
	rgb.write(1, 0x0000FF);
	display.setCursorLine(2);
	display.printLine("MQTT连接成功");
}
void loop() {
	if ((buttonB.isPressed())) {
		myIot.publish(topic_0, "许乐煌");
		display.setCursorLine(3);
		display.printLine("发送成功");
		delay(3000);
		display.fillInLine(1, 0);
		rgb.write(2, 0xCC0000);
	}
}


// 事件回调函数
void obloqMqttEventT0(String& message) {
	display.setCursorLine(4);
	display.printLine(message);
	buzz.play(DADADADUM, Once);
}

七、实验效果图:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
队友的Easy IoT收到我通过MQTT发过去的信息:

在这里插入图片描述
我的Easy IoT收到队友通过Easy IoT发过来的信息:
在这里插入图片描述

八、实验结论与体会:

1.发送方的Easy IoT订阅的topic和接收方的要一样,比如接收方添加了topic0,发送方要订阅接收方的topic0, 而不是topic2或者其他,否则接收方收不到。
2.特别注意:不能跳过Mind++中MQTT初始化参数中的topic0而直接去设置topic1,即不设置topic0设置topic1,就会出现这种情况(发送不了信息):
在这里插入图片描述
因此即使你不使用topic0也不能留空。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Fire king

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值