Easy IoT实现mqtt实验
Posted Faleshood
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Easy IoT实现mqtt实验相关的知识,希望对你有一定的参考价值。
Easy IoT实现mqtt实验
一、实验目的及要求
【实验一】实现Easy IoT配置。
【实验二】实现Easy IoT上mqtt消息的通讯。
二、实验原理与内容
实现mind+下Easy IoT上mqtt消息的通讯。
三、实验软硬件环境
硬件:掌控板
软件:Mind+
四、实验过程(实验步骤、记录、数据、分析)
1.在http://iot.dfrobot.com.cn上注册账户,注册成功后点击工作间,并点击添加新设备!
2.博客地址:
https://blog.csdn.net/funnychou/article/details/115644845
3.源码仓库地址:
https://github.com/zhoujiacong/iotshiyan1
2.在Mind+中先连接WIFI,再连接MQTT(MQTT是基于客户端-服务器的消息发布/订阅传输协议)
(1)连接WIFI,若连接成功便在显示器0号亮起蓝色;
(2)连接MQTT,若连接成功便在显示器1号亮起绿色:
①初始化MQTT,填写账户所给的lot_id及lot_pwd,以及添加的两个设备的topic;
②MQTT发起连接;
③若MQTT连接成功,则“1”灯亮起
④按“A”时,发送“hello”给Topic_0,如果接受到Topic_0发来的消息,显示在屏幕的第一行
⑤按B”时,发送“world”给Topic_1,如果接受到Topic_1发来的消息,显示在屏幕的第二行
核心代码截图:
代码:
/*!
- MindPlus
- mpython
*/
#include <MPython.h>
#include <DFRobot_Iot.h>
// 函数声明
void obloqMqttEventT0(String& message);
void obloqMqttEventT1(String& message);
// 静态常量
const String topics[5] = “tgTNXy_Mg”,“OffDuslMg”,"","","";
const MsgHandleCb msgHandles[5] = obloqMqttEventT0,obloqMqttEventT1,NULL,NULL,NULL;
// 创建对象
DFRobot_Iot myIot;
// 主程序开始
void setup()
mPython.begin();
myIot.setMqttCallback(msgHandles);
myIot.wifiConnect(“funny”, “12345678”);
myIot.init(“iot.dfrobot.com.cn”,“NeUN_y_MR”,"",“H68Nly_MRz”,topics,1883);
while (!myIot.wifiStatus()) yield();
rgb.write(0, 0x0000FF);
myIot.connect();
while (!myIot.connected()) yield();
rgb.write(1, 0x00FF00);
void loop()
if ((buttonA.isPressed()))
myIot.publish(topic_0, “hello”);
if ((buttonB.isPressed()))
myIot.publish(topic_1, “world”);
// 事件回调函数
void obloqMqttEventT0(String& message)
display.setCursorLine(1);
display.printLine(message);
void obloqMqttEventT1(String& message)
display.setCursorLine(2);
display.printLine(message);
4.实验效果图:
连接WIFi和MQTT成功
按下A后发送成功并且接收到T0的消息
按下B后发送成功并且接收到T1的消息
工作间的t0消息记录
工作间的t1消息记录
五、测试/调试及实验结果分析
实验结果如上图所示,实验成果,并无其他情况发生。
六、实验结论与体会
通过本次实验,我学会了如何通过图形化编程进行MQTT信息的发送与接收,也学会了通过调用函数来实现本次的实验。
以上是关于Easy IoT实现mqtt实验的主要内容,如果未能解决你的问题,请参考以下文章
实现mind+下光控灯声控灯语音识别灯以及Easy IoT上mqtt消息的通讯