【Mind+】掌控板入门教程01 “秀”出我创意
我们的好朋友麦乐佳即将举办一场派对,她要求每个参加派对的人都要佩戴一个可以彰显自己独特创意的装置。可以是会发光的帽子,可以是复古的电子表,还可以是其他有创意的作品。而现在,我们的手边刚好有一块掌控板,它自带一块显示屏,可以显示文字、图案,甚至是视频。
所以接下来,我们将利用掌控板,一起来做出一个可以展现自己创意的作品吧。

*所需元件
■ 1 X 掌控板
■ 1 X 数据线
* 每个项目中,掌控板和数据线都是必不可少的,之后的项目中将不再重复罗列以上两个元件。
*连接掌控板
通过以下3步完成掌控板在Mind+中的连接设置。
■ 将掌控板通过数据线连接到电脑;
■ 打开Mind+软件,选择“上传模式”
;
■ 单击“扩展”
,弹出如下窗口,选择“主控板”后,单击“掌控板”。
* 每个项目编程之前都要进行连接设置,之后的项目中将不再复述连接步骤。
*项目示例
以在掌控板上显示文字为例,我们将学习如何做出视频的效果。其实视频可以理解为动态显示的文字或图案。从这个角度出发,让我们一起来学习如何动态显示文字。
可以通过以下两个小任务进行实践:
■ 任务一:显示文字
■ 任务二:动态显示文字
任务一:显示文字
输入以下程序,并将程序上传。
* 右图为坐标X、Y值对应的屏幕位置。
运行结果:
上面程序中点击“屏幕显示文字”指令中的“预览”,可以预览文字在屏幕中位置。预览效果如下图。
* 预览窗口仅支持位置预览,暂不支持文本内容预览。
小试牛刀:
尝试修改坐标值,通过使用“预览”使“Mind+”分别显示在屏幕的四个角,效果如下图。
任务二:动态显示文字
以让文字上下滚动显示为例,让我们一起学习如何动态显示文字。
输入以下程序,并将程序上传。
运行结果:文字内容会上下滚动显示。
观察上面程序可以发现,只需要改变文字的坐标X、Y的值,配合清屏效果,就可以让文字动态显示。
文字还可以做出更多的动态效果,比如勾勒出图案、做出闪屏效果等等。打开自己的脑洞吧!
掌握了动态显示文字的方法,再加入自己更多的脑洞,相信你在参加麦乐佳的派对的时候,就可以使用掌控板做出彰显自己创意的独特装置了。
将它别在衣服上,这样每一个靠近你的人,一眼就会看到你的独特呀。
*知识拓展
一、硬件知识
1、OLED显示屏
掌控板自带1.3英寸OLED显示屏。什么是OLED显示屏?显示屏,也称屏幕,用于显示图像。OLED显示屏是时下比较主流的一种显示屏。
OLED(Organic Light-Emitting Diode),又称为有机电激光显示,由美籍华裔教授邓青云于1979年在实验室中发现。它是一种非常薄的有机材料涂层,具有自发光特性,换句话说,当有电流通过时,这些有机材料就会发光。
OLED相比于传统显示屏幕,在技术优势上可以说是划时代的。OLED是广视角,具有几乎无穷高的对比度、较低的功耗、非常高的反应速度,全彩化并且制程简单等优点。OLED材料可以自发光,不需要增加背光源,可以大大简化工艺,缩减体积。
基于以上种种优异特性,OLED被认为是下一代的平面显示器新兴应用技术。
2、分辨率
掌控板OLED显示屏的分辨率128x64。分辨率指屏幕显示的像素个数。那什么是像素呢?
首先,你在屏幕上可以看到一张图片,但实际上,你贴在屏幕边上看就会发现你的屏幕实际上是由无数个小点点组成的,因为每个点比较小,所以你的眼睛会误以为这是一张完整的图片。
一个像素就可以理解为屏幕上的一个点。屏幕正是由多个像素点组成。
分辨率128x64的意思是水平方向含有128个像素,垂直方向含有64个像素。屏幕上一共有128x64个像素点。
通过“画点”指令,我们可以看到屏幕中的任意一个像素点。示例程序和运行结果如下图。
二、软件知识
1、认识坐标
前面讲过,坐标X、Y值即对应屏幕横向、纵向位置。其实这样的X、Y在屏幕上就构成了一个直角坐标系。接下来,我们将通过一个简单的程序,去认识什么是直角坐标系。
输入以下程序,观察运行结果。
运行结果:
观察程序中坐标值的变化,不难发现:
■ 当X、Y值对应为0、0的时候,文字显示在屏幕的左上角;
■ 当Y值不变、X的值增加,文字垂直高度不变,水平向右移动;
■ 当X值不变、Y的值增加,文字水平位置不变,垂直向下移动。
文字移动的这两个方向即构成了如下图所示的X、Y直角坐标系。水平方向用X轴表示,垂直方向用Y轴表示。
在数学中,是这样定义直角坐标系的:在平面内画两条互相垂直,并且有公共原点的数轴,其中横轴为X轴,纵轴为Y轴,这样我们就说在平面上建立了平面直角坐标系,简称直角坐标系。
* 掌控板屏幕分辨率为128x64,所以X轴的数值为0-127,Y轴的数值为0-63。
怎么样,现在你明白直角坐标系是怎么回事了吧?
2、指令汇总
*项目小结
■ 掌握掌控板上文字动态显示的方法
■ 了解OLED显示屏
■ 学习坐标系,了解掌控板上的坐标系是如何建立的
*挑战一下
1、利用掌控板做一个5秒倒计时,倒计时完成后,在屏幕中央显示文字“游戏开始”。
2、Mind+中还有很多简单又好玩的指令,尝试探索一下,使文字随机显示在屏幕中的任意位置。提示:
3、尝试在屏幕中显示一颗爱心的图案。提示
文本参考:
官方教程
https://mc.dfrobot.com.cn/misc.php?mod=tag&id=3395
mindplus官方
https://mc.dfrobot.com.cn/misc.php?mod=tag&id=3309
掌控板
https://mc.dfrobot.com.cn/misc.php?mod=tag&id=3184
相关文章:
【Mind+】掌控板入门教程01 “秀”出我创意
我们的好朋友麦乐佳即将举办一场派对,她要求每个参加派对的人都要佩戴一个可以彰显自己独特创意的装置。可以是会发光的帽子,可以是复古的电子表,还可以是其他有创意的作品。而现在,我们的手边刚好有一块掌控板,它自带…...
操作系统篇--八股文学习第十一天|进程调度算法你了解多少,进程间有哪些通信方式,解释一下进程同步和互斥,以及如何实现进程同步和互斥
进程调度算法你了解多少? 答: 先来先服务:按照请求的顺序进行调度。 这种调度方式简单,但是能导致较长作业阻塞较短作业。最短作业优先:非抢占式的调度算法,按估计运行时间最短的顺序进行调度。 但是如果…...
慢慢欣赏arm64内核启动6 primary_entry之el2_setup代码第三部分
分析代码 解析完虚拟化部分,我们继续分析启动过程中,对中断控制器的处理 #ifdef CONFIG_ARM_GIC_V3/* GICv3 system register access */mrs x0, id_aa64pfr0_el1ubfx x0, x0, #ID_AA64PFR0_GIC_SHIFT, #4cbz x0, 3fmrs_s x0, SYS_ICC_SRE_EL2orr x0, x…...
初谈Linux多线程--线程控制
文章目录 线程的概述理解线程Linux中的线程重新理解的进程Windows的线程线程的优点线程的缺点理解线程调度成本低 进程VS线程 线程控制创建线程等待线程线程函数传参线程的返回值新线程的返回值新线程返回值错误返回值为类对象 创建多线程线程的终止线程的分离pthread_detach 线…...
文件工具类 - FileUtils
Slf4j Component public class FileUtils {/*** 文件夹复制到指定的文件夹*/SneakyThrowspublic static void copyDir(File source, File target) {if (!target.exists()) {boolean mkdirs target.mkdirs();}if (source.isDirectory()) {File[] files source.listFiles();if …...
Kafka源码剖析-Producer基于内存缓存池分配ByteBuffer
文章目录 在将消息发送到内存缓中区之前做的准备工作发送消息前的准备工作代码示例源码分析1. **消息序列化**2. **元数据准备**3. **分区选择**4. **批处理准备**总结大致浏览一下源码中将消息写入内存缓冲的运行流程源码分析1. **消息序列化和创建记录批次**2. **确定分区**3…...
实习十九:学习笔记
上午 1、构建vue发行版本 [rootserver ~]# cd eleme_web/ [rootserver eleme_web]# npm run buid //项目未执行时运行该命令,创建发行版本 [rootserver eleme_web]# cd dist/ //dist中包含发行版本的所有文件 [rootserver dist]# ls css favicon.ico i…...
OrionX:革新GPU资源管理,助力AI开发团队高效运作
您的AI开发团队是否经常陷入这样的窘境: 人多卡少,GPU资源难以满足每个成员的需求? 当开发环境中需要变更GPU卡配置时,流程繁琐不堪,不得不关闭容器、重新配置再重启? 是否曾因GPU卡分配后未被充分利用而…...
RabbitMQ发送者重连、发送者确认
RabbitMQ发送者重连、发送者确认 一、发送者重连 spring:rabbitmq:connection-timeout: 1s #设置MQ的连接超时时间template:retry:enabled: true #开启超时重试机制initial-interval: 1000ms #失败后的初始等待时间multiplier: 1 #失败后下次的等待时长倍数,下次等…...
请转告HPC计算AI计算单位,选对存储事半功倍
U.2 NVMe全闪混合统一存储GS 5000U是Infortrend产品中一款高性能机型。得益于搭载强劲的第五代IntelXeon处理器,以及支持PCIe 5.0、NVMe-oF、100GbE等多种特点,GS 5000U单台块级性能可达50 GB/s的读、20 GB/s的写,以及1300K的IOPS;…...
[GYCTF2020]Blacklist1
打开题目 判断注入类型,输入1试试 输入2 输入1 判断为字符型注入 堆叠查询2;show databases;# 然后来输入2; show tables;#来查看数据库的表 然后我们通过FlagHere表来查看列输入2;show columns from FlagHere;# 来查看列 、 重新构造payload:0;HAND…...
Blackcat V2.2付费会员制WordPress资源站主题
Blackcat-付费会员制WordPress资源站主题,该主题是基于简约实用的主题选项框架 Codestar Framework 进行开发的功能强大的付费会员制主题,该主题尤其适合用于搭建付费下载资源网站,比如素材站、软件站、视频教程站等付费资源下载网站。 集成…...
动手学强化学习 第 18 章 离线强化学习 训练代码
基于 https://github.com/boyu-ai/Hands-on-RL/blob/main/%E7%AC%AC18%E7%AB%A0-%E7%A6%BB%E7%BA%BF%E5%BC%BA%E5%8C%96%E5%AD%A6%E4%B9%A0.ipynb 理论 离线强化学习 修改了警告和报错 运行环境 Debian GNU/Linux 12 Python 3.9.19 torch 2.0.1 gym 0.26.2 运行代码 CQL.…...
Python笔试面试题AI答之面向对象常考知识点
Python面向对象面试题面试题覆盖了Python面向对象编程(OOP)的多个重要概念和技巧,包括元类(Metaclass)、自省(Introspection)、面向切面编程(AOP)和装饰器、重载…...
面试经典算法150题系列-数组/字符串操作之买卖股票最佳时机
买卖股票最佳时机 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易…...
安装jdk和tomcat
安装nodejs 1.安装nodejs,这是一个jdk一样的软件运行环境 yum -y list installed|grep epel yum -y install nodejs node -v 2.下载对应的nodejs软件npm yum -y install npm npm -v npm set config .....淘宝镜像 3.安装vue/cli command line interface 命令行接…...
mongodb 备份还原
### 加入 MongoDB 官方 repositoryecho [mongodb-org-4.4] nameMongoDB Repository baseurlhttps://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/ gpgcheck1 enabled1 gpgkeyhttps://www.mongodb.org/static/pgp/server-4.4.asc| tee /etc/yum.repos.d/mo…...
day27——homework
1、使用两个线程完成两个文件的拷贝,分支线程1拷贝前一半,分支线程2拷贝后一半,主线程回收两个分支线程的资源 #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <fcntl.h> #include <uni…...
shell脚本自动化部署
1、自动化部署DNS [rootweb ~]# vim dns.sh [roottomcat ~]# yum -y install bind-utils [roottomcat ~]# echo "nameserver 192.168.8.132" > /etc/resolv.conf [roottomcat ~]# nslookup www.a.com 2、自动化部署rsync [rootweb ~]# vim rsync.sh [rootweb ~]# …...
C语言| 文件操作详解(二)
目录 四、有关文件的随机读写函数 4.1 fseek 4.2 ftell 4.3 rewind 五、判定文件读取结束的标准与读写文件中途发生错误的解决办法 5.1 判定文件读取结束的标准 5.2 函数ferror与feof 5.2.1 函数ferror 5.2.2 函数feof 在上一章中,我们主要介绍了文件类型…...
中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...
java 实现excel文件转pdf | 无水印 | 无限制
文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...
UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
连锁超市冷库节能解决方案:如何实现超市降本增效
在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
vue3+vite项目中使用.env文件环境变量方法
vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...
实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
sshd代码修改banner
sshd服务连接之后会收到字符串: SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢? 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头,…...
Vue3中的computer和watch
computed的写法 在页面中 <div>{{ calcNumber }}</div>script中 写法1 常用 import { computed, ref } from vue; let price ref(100);const priceAdd () > { //函数方法 price 1price.value ; }//计算属性 let calcNumber computed(() > {return ${p…...
大数据驱动企业决策智能化的路径与实践
📝个人主页🌹:慌ZHANG-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、引言:数据驱动的企业竞争力重构 在这个瞬息万变的商业时代,“快者胜”的竞争逻辑愈发明显。企业如何在复杂环…...














