孩子们是最贪玩的也是最聪明的,因此在过去的数年中,市面上出现了不少寓教于乐的理工科知识(STEM)学习新方法。如今这类产品中又有了一名新成员,TPYBoard重磅推出一款针对小白、中小学生的可编程计算机设备,意在依靠“炫酷”来吸引孩子学习编程知识。

  编程像乐高一样简单!

  TurnipBit不需要在电脑上写代码,枯燥地学习编程,而是通过图形化拖拖拽拽的编程方式,轻松地创造出自己的游戏、音乐、科学实验,以及控制机器人。

  TurnipBit自制小乐器

  下面就使用TurnipBit制作了一款简易的乐器,分享出来给大家交流学习一下。自己在家里也可以带着孩子一起动手做起来!

  实物成品如下图:

  这个小乐器的主要是能依靠可调电阻调节输入电压,再通过蜂鸣器发出不同音调的音乐出来,里面的蓝色圆柱LED灯主要是用来显示一下当前的输入电压(可不要),LED灯越亮,蜂鸣器输出的音调越高。使用板子LED灯的亮度和度数显示当前的频率高低。

  小乐器制作过程:

  这个简易的乐器主要使用的器件如下:

  TurnipBit一块

  蜂鸣器一个(TurnipBit上面自带了耳机接口,没有蜂鸣器接上耳机和音响,或许效果更好)

  可调电阻一个

  杜邦线四根

  鳄鱼钳导线一根

  LED一个(可以不要)

  面包板一个(也可以直接用线连接针脚的,用面包板好看一些)

  1.蜂鸣器简要介绍

  蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“ZZG”、“LB”、“JD”等)表示。

  2.可调电阻简要介绍

  可调电阻的标称值是标准可以调整到最大的电阻阻值,理论上,可调电阻的阻值可以调整到0与标称值以内的任意值上,但因为实际结构与设计精度要求等原因,往往不容易100%达到“任意”要求,只是“基本上”做到在允许的范围内调节,从而来改变阻值。

  可调电阻一共有三个引脚,两边的引脚分别接3.3V和GND,中间的引脚接到想要读取电压值的引脚上。

  硬件接线方法如下图:

  这次主要是要使用图形编码来制作的小实验,这次需要用到的命令主要有音乐里面的播放音调命令,逻辑里面的如果和判断条件命令,循环里面的重复命令和读取ADC值的命令等。

  接下来就一一介绍一下这些命令的选择和命令中参数的使用方法进行介绍和讲解。

  1.播放音调命令

  播放音调命令就是控制蜂鸣器播放出相应的音调的声音。

  下面讲解一下各个参数和使用方法。

  使用这个命令的时候,在命令选择区域中,选择音乐,选择播放音调命令,如图

  播放音调命令中共有两个参数,这两个参数分别控制蜂鸣器输出的音调和输出时间,如下图:

  2.如果和判断条件命令

  如果和判断条件命令,使用如果命令,是为了判断命令里面的判断条件命令是否成立,如果成立则执行相应的命令。

  使用如果和判断条件命令,需要在命令选择区域里面选择逻辑,选择如果和判断条件命令即可,如下图:

  在选择了如果命令的时候,必须要加上判断条件命令,具体格式如下图:

  3.重复命令

  重复命令是在判断一个条件是否成立,如果这个条件成立,则执行相应的指令。

  使用重复命令,在命令选择区域中选择循环,选择重复命令,如下图:

  在选择了重复命令后,在判断条件上加入一个逻辑里面的真命令,即可完成一个无限循环,如下图:

  4.读取ADC值

  读取ADC值的命令,是为了读取相应的引脚输入的电压值。

  选择读取ADC值的命令,需要在命令选择区域,选择引脚,选择读取X引脚的模拟电压值,如下图:

  上面介绍了基本的命令的使用方法,下面说一个这次要制作的小乐器的基本原理。

  这个小乐器的的控制端是一个接在电源上的一个可调电阻,利用改变阻值来改变相应的输出音调。下面贴上我做的代码的截图:

  

中国孩子的micro:bit:TurnipBit自制小乐器教程实例的更多相关文章

  1. TurnipBit:DIY音乐盒教程实例

    一款可以自己DIY的音乐盒,要什么曲子,就自己谱曲啦!为他(她)制作一首他喜欢的音乐,来代表您的心意,也可以让他自己来制作他最爱的音乐哦!更可以带孩子一起体验谱写欢快的音乐. 最近发现一很好玩的中国式 ...

  2. MICRO SIM卡(SIM小卡)尺寸图及剪卡图解

    如今使用MICRO SIM卡的手机越来越多.近期刚刚买了一个手机到手才发现尼马使用的是MICRO SIM卡.再去买剪卡器吧,十几二十块用一次就废了,去营业厅吧.又比較远,懒的出门.怎么办呢,自己剪!这 ...

  3. 微信小程序教程汇总

    目前市面上在内测期间出来的一些实战类教程还是很不错的,主要还是去快速学习小程序开发的整体流程,一个组件一个组件的讲的很可能微信小程序一升级,这个组件就变了,事实本就如此,谁让现在是内测呢.我们不怕,下 ...

  4. 微信小程序 教程之引用

    系列文章: 微信小程序 教程之WXSS微信小程序 教程之引用微信小程序 教程之事件微信小程序 教程之模板微信小程序 教程之列表渲染微信小程序 教程之条件渲染微信小程序 教程之数据绑定微信小程序 教程之 ...

  5. 微信小程序之微信登陆 —— 微信小程序教程系列(20)

    简介: 微信登陆,在新建一个微信小程序Hello World项目的时候,就可以看到项目中出现了我们的微信头像,其实这个Hello World项目,就有一个简化版的微信登陆.只不过是,还没有写入到咱们自 ...

  6. 使用mpvue开发小程序教程(一)

    前段时间,美团开源了mpvue这个项目,使得我们又多了一种用来开发小程序的框架选项.由于mpvue框架是完全基于Vue框架的(重写了其runtime和compiler),因此在用法上面是高度和Vue一 ...

  7. 使用mpvue开发小程序教程(二)

    在上篇文章中,我们介绍了使用mpvue开发小程序所需要的一些开发环境的搭建,并创建了第一个mpvue小程序代码骨架并将其运行起来.在本文中,我们来研究熟悉一下mpvue项目的主要目录和文件结构. 在V ...

  8. 使用mpvue开发小程序教程(三)

    在上一篇文章中,我们熟悉了一下通过vue-cli生成的mpvue工程代码骨架的基本结构,大致了解了每一个部分的代码到底要放到何处.从本文起我们就开始涉及真正的编码部分,学习使用Vue的语法去编写小程序 ...

  9. 使用mpvue开发小程序教程(四)

    在上一章节中,我们将vue-cli命令行工具生成的代码骨架中的src目录清理了一遍,然后从头开始配置和编写了一个可以运行的小程序页面,算是正真走上了使用mpvue开发小程序的第一步.今天我们将进一步来 ...

随机推荐

  1. HDU4466 Triangle

    题意:给一个长为N的铁丝,问你有几种方法将其划分为若干段,使得每一段都能围成一个边长为整数的三角形,并且围成的三角形都相似 思路其实很明显,三角形的周长必定是N的约数,那么答案就是周长C能围城的三角形 ...

  2. 三十天学不会TCP,UDP/IP网络编程-ARP -- 连接MAC和IP

    继续来做(da)推(guang)介(gao)我自己的!由于这两年接触到了比较多的这方面的知识,不想忘了,我决定把他们记录下来,所以决定在GitBook用半年时间上面写下来,这是目前写的一节,目前已完成 ...

  3. django同时查询两张表的数据,合并检索对象返回

    原始需求: 1.一篇文章内容分N个版块,每篇文章的版块数量不同. 2.有个文章搜索功能,需要同时搜索标题和内容. 实现思路: 1.由于每篇文章的内容版块数量不同,因此将每个文章的标题和内容分开存入2张 ...

  4. Tabhost最纯净的实现方式

    有时候常常使用别人用Tabhost+其他的实现demo.单纯利用Tabhost该怎样使用呢? 以下看样例: public class MainActivity extends TabActivity ...

  5. webAPP踩坑记录

    最近公司突然给我们下了一个任务  一个星期要做出一个系统网站 外加手机app   2个同事负责 web开发  我负责手机app 的开发 今天终于初级版本做完了,记录一下手机app踩过的坑与优化之路 用 ...

  6. AspNet Core Api Restful +Swagger 实现微服务之旅(四)

    这几天没更新,项目框架也是在发展阶段,这几天学习配置了一遍Apollo和RabbitMQ 等到放到框架上之后我整理一下到时候把心得写出来相互学习. 接着上一篇的内容 (2)  程序错误时  返回数据格 ...

  7. 工作随笔——jasypt-spring-boot使用

    最近有一个项目,要求对各种配置文件中的数据进行加密.so,let`s do it. Maven依赖 <dependency> <groupId>com.github.ulise ...

  8. python_web----------数据可视化从0到1的过程

    一.数据可视化项目配置 1. django + Echarts 2. 服务器(linux:Ubuntu 17.04 (GNU/Linux 4.10.0-40-generic x86_64)) 3. I ...

  9. 【ANT】一个简单的ANT生成文件build.xml

    <?xml version="1.0" ?> <project default="test"> <target name=&quo ...

  10. 关于Sublime Text编辑器的实用技巧

    本文转载至一篇博文,为您提供Sublime Text编辑器的12个技巧和诀窍,深入挖掘这个看似简洁的代码编辑器,背后所隐藏的实现各种高级功能的无限可能. 1) 选择 以下是一些Sublime Text ...