dfrobot Mind+掌控板图形化编程
dfrobot Mind+掌控板图形化编程
一、实验软硬件环境
硬件:Mind +掌控板
软件:Mind IDE(版本:15.6)
二、实验目的及要求
实验一:光控灯
实验二:声控灯
实验三:语音控制灯
实验四:用mqtt在esay iot平台上实现信息发送和接收
三、实验原理与内容
实现Mind + IDE编程。
四、实验过程
核心代码截图
1、光控灯
图形化编程:
实现代码:
```python
#include <MPython.h>// 主程序开始
void setup() {mPython.begin();display.setCursorLine(1);display.printLine("光照强度");
}
void loop() {display.setCursorLine(2);display.printLine((light.read()));if (((light.read())<100)) {rgb.write(0, 0x0000FF);delay(1000);}else {rgb.write(0, 0x000000);}
}
效果图:
2、声控灯
图形化编程:
实现代码:
#include <MPython.h>// 主程序开始
void setup() {mPython.begin();display.setCursorLine(1);display.printLine("光照强度");
}
void loop() {display.setCursorLine(2);display.printLine((light.read()));if (((light.read())<100)) {rgb.write(0, 0x0000FF);delay(1000);}else {rgb.write(0, 0x000000);}
}
效果图:
3、语音识别灯
图形化编程:
实现代码:
#include <MPython.h>
#include <MPython_ASR.h>
#include <DFRobot_Iot.h>
// 函数声明
void DF_YuYinShiBie();
void DF_wifi();
// 创建对象
MPython_ASR mpythonAsr;
String str_mpythonAsr_result;
DFRobot_Iot myIot;// 主程序开始
void setup() {mPython.begin();DF_wifi();DF_YuYinShiBie();
}
void loop() {}// 自定义函数
void DF_YuYinShiBie() {display.fillScreen(0);while (1) {if ((buttonA.isPressed())) {while (!(!buttonA.isPressed())) {yield();}str_mpythonAsr_result=mpythonAsr.getAsrResult(4);display.setCursorLine(1);display.printLine((str_mpythonAsr_result));if (((String(str_mpythonAsr_result).indexOf(String("开灯")) != -1))) {rgb.write(0, 0x0000FF);delay(5000);rgb.write(0, 0x000000);display.fillInLine(1, 0);}}yield();}
}
void DF_wifi() {myIot.wifiConnect("602iot", "18wulian");display.setCursorLine(1);display.printLine("正在连接网络");while (!myIot.wifiStatus()) {yield();}display.fillInLine(1, 0);display.setCursorLine(1);display.printLine("网络连接成功");display.setCursorLine(2);display.printLine("ip地址:");display.setCursorLine(3);display.printLine(myIot.getWiFiLocalIP());delay(3000);
}
效果图:
4、用mqtt在esay iot平台上实现信息发送和接收
图形化编程:
实现代码:
#include <MPython.h>
#include <DFRobot_Iot.h>
// 函数声明
void onButtonAPressed();
void obloqMqttEventT0(String& message);
// 静态常量
const String topics[5] = {"T_GCbjdGg","OklCbjdGg","","",""};
const MsgHandleCb msgHandles[5] = {obloqMqttEventT0,NULL,NULL,NULL,NULL};
// 创建对象
DFRobot_Iot myIot;// 主程序开始
void setup() {mPython.begin();myIot.setMqttCallback(msgHandles);buttonA.setPressedCallback(onButtonAPressed);myIot.wifiConnect("HONOR 30", "12345678");display.setCursorLine(1);display.printLine("正在连接网络");while (!myIot.wifiStatus()) {yield();}display.setCursorLine(2);display.printLine("连接网络成功");display.fillScreen(0);delay(2000);myIot.init("iot.dfrobot.com.cn","q0uh-COMR","","qAX2-jOGRz",topics,1883);myIot.connect();while (!myIot.connected()) {yield();}display.setCursorLine(1);display.printLine("mqtt连接成功");delay(3000);display.fillInLine(1, 0);
}
void loop() {}// 事件回调函数
void onButtonAPressed() {while (!(!buttonA.isPressed())) {yield();}myIot.publish(topic_1, "卓玉婵");display.fillScreen(0);display.setCursorLine(1);display.printLine("发送消息成功");delay(3000);display.fillInLine(1, 0);
}
void obloqMqttEventT0(String& message) {display.setCursorLine(1);display.printLine("您有新的消息!");rgb.write(-1, 0x0000FF);display.setCursorLine(2);display.printLine(message);delay(3000);rgb.write(-1, 0x000000);display.fillScreen(0);
}
效果图:
五、实验结论与体会
本次实验特别有趣,难度不高容易上手。通过这次学习初步了解了图形化编程的基本操作。
dfrobot Mind+掌控板图形化编程相关推荐
- DFROBOT Mind+ 掌控板 人工智能测温实验
DFROBOT Mind+ 掌控板实验 人工智能测温实验 特别声明:本文系湛江市第十七中学星火创客团队及岭南师范学院物联网俱乐部原创部分参赛项目,转载请保留声明 一.实验软硬件环境 硬件:Mind + ...
- arduino nano 蓝牙_掌控板IO接口编程入门 | 用Arduino玩转掌控板(ESP32)系列
众所周知,掌控板在创客教育中用的非常广泛,它是一块基于 ESP32 的学习开发板.大家对掌控板编程,用的比较多的都是图形化编程的方式,比如 mPython.Mind+ 等.但是,既然掌控板是基于 ES ...
- ESP32与掌控板IO接口编程入门 | ESP32轻松学(Arduino版)
众所周知,掌控板在创客教育中用的非常广泛,它是一块基于 ESP32 的学习开发板.大家对掌控板编程,用的比较多的都是图形化编程的方式,比如 mPython.Mind+ 等.但是,既然掌控板是基于 ES ...
- mpython掌控板_AppInventor+掌控板:为硬件编程(1)
一直以来都有读者询问是否有硬件控制类的案例,这也是我一直期待涉及的话题,但由于种种原因始终未能付诸行动.就在上个月,张路老师(roadlabs)收到了谢作如老师寄来的一块掌控板,并共同讨论了关于掌控板 ...
- arduino nano 蓝牙_用Arduino玩转掌控板(ESP32):ESP32概述与Arduino软件准备
前言 近年来,掌控板(英文名:mPython)在创客教育中应用越来越广泛.掌控板集成了 ESP32 高性能双核芯片,具备 WiFi 和蓝牙连接功能,同时在板子上又配置了丰富的传感器,最重要的是它是专门 ...
- appinventor HTML5,用APP Inventor纯图形化编程自制APP,通过WIFI物联网控制掌控板
本帖最后由 Forgotten 于 2020-6-8 15:22 编辑 感谢社区大神:让小朋友们打造自己的手机APP,通过OBLOQ-IOT联网控制MI... 原帖中的app比较简单,实现了基本功能, ...
- 物联网开发笔记(64)- 使用Micropython开发ESP32开发板之控制ILI9341 3.2寸TFT-LCD触摸屏进行LVGL图形化编程:控件显示
一.目的 这一节我们学习如何使用我们的ESP32开发板来控制ILI9341 3.2寸TFT-LCD触摸屏进行LVGL图形化编程:控件显示. 二.环境 ESP32 + ILI9341 3.2寸TFT-L ...
- 智慧疫情防控平台(图形化编程mind+)
本文系湛江市第十七中学星火创客团队及岭南师范学院物联网俱乐部原创部分参赛项目,转载请保留声明. 前言 本文章将教会大家如何使用图形化编程制作简易的智慧疫情防控平台,这个项目非常适合于低年级的学生去实践 ...
- 推出首款编程教育开源硬件“掌控板”,创客教育专家委员会助力中国创客教育
#推出首款编程教育开源硬件"掌控板",创客教育专家委员会助力中国创客教育 近日中国电子学会现代教育技术分会创客教育专家组与国内著名创客教育.STEAM的实践与分享社区猫友汇.广大一 ...
最新文章
- 部署了OpenStack就拥有了云平台?还差很远呢
- eclipse调试报错,无法进入类
- 小明分享|sigmstar SSD201/SSD202 针对MIPI的LCD屏配置操作说明分享,更多Sigmastar相关技术文档及沟通讨论,可以给小明留言,小明邀请你进入我们的技术沟通群
- CryptoAPI 学习
- nfs服务器实现文件共享,NFS服务器及Samba服务配置实现文件共享(示例代码)
- 将下载都是大写字母的网页里面的html转换为小写的简单方式
- 最小生成树,回忆复习篇。
- php--PDO操作数据库
- Rust: flat_map、filter_map、for_each
- dbv oracle驱动,oracle dbv使用详解
- android数据线接口分类,安卓手机数据线接口类型
- 微信小程序canvas2D全新API介绍
- React 在react中实现鼠标拖拽移动盒子和图片(基于Ant-Design-Pro 4实现)
- IBM主机系列课程之单元测试(基础篇)-李海湜-专题视频课程
- 美团(2) - 实战准备
- 迪杰斯特拉算法(dijkstra)_朴素版_堆优化版
- 安卓实现浏览器app
- TransCenter: Transformers with Dense Queries for Multiple-Object Tracking
- vulnhub THE PLANETS: EARTH
- 如何使用CubeMX创建STM32F105的程序