图形化编程(3)之猜拳的加速度计

        今天说我们来学习图形化第三节内容,加速度计。加速度传感器是一种能够测量物体加速度的传感器,在运动过程中,通过测量质量的惯性力和牛顿第二定律得到加速度。

        根据传感器敏感元件的不同,常见的加速度传感器有电容式、电感式、应变式等。microbit自带了一个指南针和加速度计的芯片。

一、加速度传感器如何测量加速度?

加速度传感器沿三个轴运动:

  • X - 从左向右倾斜
  • Y - 前后倾斜
  • Z - 上下移动

具体的如下图所示:

        x、y、z形成了3维空间,就可以判断当前的位置了比如前倾、侧弯等动作了。

二、熟悉积木指令

1.1、输入指令

        输入指令是microbit图形化编程中尤为重要的一章,他是让microbit和外界通信的基础桥梁,今天我们主要来学习下其中的加速度计相关的内容。

1.2、震动检测指令

   

        microbit提供了两条震动检测指令,一个事件型,一个读取识别(和键盘的扫描方式相似),可以看到提供基本的动作识别,震动、朝上、自由落体等。

        如果想要精确读取每个轴当前的加速度值,可以使用如下指令:

三、项目实战

2.1、猜猜拳

        今天来做一个剪刀石头布的游戏。

第1步:

        当我们想通过抖动microbit来让它选择剪刀布的时候,就需要放一个震动检测模块,让我们抖动microbit时候,程序就运行起来

第2步:

        我们给一个变量取一个名字 type(类型,用于识别剪刀石头布),通过产生一个0-2之间的随机数,来区分三者。

        通过产生的随机数,可以让microbit显示不同的图像来充当见到石头布

第3步:

        增加一个显示模块,来根据不同的type值,来显示不同的图像,这里 随机数0,代表剪刀,图像是自己手动画上去的,还记得怎么画吗?用鼠标在屏幕上点击就可以啦。

第4步:

        点击上图中的加号,来增加一个分支判读,来判断type值是否为1,代表石头,增加一个显示模块,显示石头

第5步:

        最后一个分支“否则”里面,就肯定是随机数2了,代表的是布,增加一块画布,来显示布

        好了,我们的猜猜拳,游戏就做好了,准备两块microbit,和朋友一起玩起来把。

        因为小编的手机拍出来的效果,能看到led显示模块的刷新过程,效果不明显,就不给大家展示实际效果了,感兴趣的小朋友可以实际操作下,因为人眼的看到的视频是连续的,效果比较好。

        我们也可以通过在线仿真器,看下效果,通过点击shark,来模拟震动。

四、拓展

        我们可以通过识别不同的动作,来显示不同的图案,或者字母数字。

给小朋友留一个课后小实验,通过识别不同的动作,来显示0-9之前的数字,两个人来比谁的数值大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/586739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zookeeper之集群搭建

1. 集群角色 zookeeper集群下,有3种角色,分别是领导者(Leader)、跟随着(Follower)、观察者(Observer)。接下来我们分别看一下这三种角色的作用。 领导者(Leader): 事务请求(写操作)的唯一调度者和处理者,保…

音频播放软件Foobar2000 mac特点介绍

Foobar2000 mac是一款高度可定制的音频播放器,适用于Windows平台。它支持各种音频格式,包括MP3、FLAC、AAC、WMA等,同时也支持各种音频插件和效果器,可以提供更好的音质和用户体验。 Foobar2000 mac软件特点 1. 高度可定制&#…

信号类型——正交频分复用(OFDM)

系列文章目录 《信号类型(通信)——仿真》 《信号类型(通信)——QAM调制信号》 《信号类型(通信)——QPSK、OQPSK、IJF_OQPSK调制信号》 《信号类型(通信)——最小频移键控&…

【C语言】分支与循环语句

什么是语句? C语句可分为以下五类: 表达式语句函数调用语句控制语句 (本篇重点介绍)复合语句空语句 控制语句用于控制程序的执行流程,以实现程序的各种结构方式。C语言支持三种结构: 顺序结构选择结构循…

软件设计师——软件工程(三)

📑前言 本文主要是【软件工程】——软件设计师——软件工程的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 &#x1f304…

使用SecoClient软件连接L2TP

secoclient软件是华为防火墙与友商设备进行微屁恩对接的一款软件,运行在windows下可以替代掉win系统自带的连接功能,因为win系统自带的连接功能总是不可用而且我照着网上查到的各种方法调试了很久都调不好,导致我一度怀疑是我的服务没搭建好,浪费了大把时间去研究其他搭建方案 …

最新Redis7哨兵模式(保姆级教学)

一定一定要把云服务器的防火墙打开一定要!!!!!!!!!否则不成功!!!!!!!!&…

AppWeb认证绕过漏洞(CVE-2018-8715)

一、环境搭建 二、影响版本 三、构造payload Authorization: Digest usernameadmin 四、抓包获取sesion 五、修改数据包、认证头 记得设置用户名 六、漏洞存在特征(Gigest)

基于AM62x的ARM+FPGA+Codesys低成本软PLC解决方案

GPMC并口简介 GPMC(General Purpose Memory Controller)是TI处理器特有的通用存储器控制器接口,支持8/16bit数据位宽,支持128MB访问空间,最高时钟速率133MHz。GPMC是AM62x、AM64x、AM437x、AM335x、AM57x等处理器专用于与外部存储器设备的接口…

2023年新一代开发者工具 Vue ,正式开源!

以下文章来源于前端充电宝 ,作者CUGGZ 近日,Vue 新一代开发者工具(DevTools)正式开源!Vue DevTools 是一个旨在增强 Vue 开发人员体验的工具,它提供了一些功能来帮助开发者更好地了解 Vue 应用。下面就来看…

小程序入门-登录+首页

正常新建一个登录页面 创建首页和TatBar,实现登录后底部出现两个按钮 代码 "pages": ["pages/login/index","pages/index/index","pages/logs/logs" ],"tabBar": {"list": [{"pagePath"…

Hexo 部署 Github Pages, Github Actions自动部署

想整个静态的博客部署在github pages 历经两天的折磨终于是摸索成功了,官网的文档太简陋了,很多东西没说清楚。 欢迎大家访问我的博客! CanyueThis is Canyues blog.https://mobeicanyue.github.io/ 最终实现的效果,一个项目仓库…

51单片机之LED灯

51单片机之LED灯 🌴前言:🏮点亮LED灯的原理💘点亮你的第一个LED灯💘点亮你的八个LED灯 📌让LED灯闪烁的原理🎽 LED灯的闪烁🏓错误示范1🏓正确的LED闪烁代码应该是这样&am…

PythonTSK Study for first day (paper read)

HTSK model Study AbstractIntroductionII TSK for high-dimentional datasetIII ResultsA DatesetB AlgorithmC性能评估 Abstract The TSK Fuzzy System with Gaussian membership functions can not address high dimentional datasets, if add softmax function to solve i…

day14--JDK8~17新特性(下):

第18章_JDK8-17新特性(下) 讲师:尚硅谷-宋红康(江湖人称:康师傅) 官网:http://www.atguigu.com 6. 新语法结构 新的语法结构,为我们勾勒出了 Java 语法进化的一个趋势&#xff0c…

CSP CCF 202305-1 重复局面 C++满分题解

#include<iostream> using namespace std;int judge(char arr[][64],int m) {int a1;for(int i0;i<m;i){int flag0;for(int j0;j<64;j){if(arr[i][j]!arr[m][j]){flag1;break;}}if(flag0)a;}return a; }int main() {int n;cin>>n;char arr[n][64]; //直接看…

SpringMVC源码解析——DispatcherServlet初始化

在Spring中&#xff0c;ContextLoaderListener只是辅助功能&#xff0c;用于创建WebApplicationContext类型的实例&#xff0c;而真正的逻辑实现其实是在DispatcherServlet中进行的&#xff0c;DispatcherServlet是实现Servlet接口的实现类。Servlet是一个JAVA编写的程序&#…

Nacos 基础篇:Nacos简介、基本概念、基本架构、Standalone单机搭建部署

文章目录 什么是Nacos基本架构逻辑架构及其组件介绍领域模型数据模型服务领域模型配置领域模型 下载目录结构配置启动 什么是Nacos Nacos&#xff1a;(Dynamic) Naming and Configuration Service&#xff0c;动态的服务发现和配置的服务&#xff0c;是一个更易于构建云原生应…

<PDF-Pics> support

If get any questions,email me caohechunhotmail.com

力扣LeetCode第26题 删除有序数组中的重复项

一、题目 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使每个元素 只出现一次 &#xff0c;返回删除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1&#xff1…