孩子们是最贪玩的也是最聪明的,因此在过去的数年中,市面上出现了不少寓教于乐的理工科知识(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. keepalived实现服务高可用

    第1章 keepalived服务说明 1.1 keepalived是什么? Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可 ...

  2. 【练习】HTML+CSS

    作业要求1 京东首页轮播图,效果如下 <!DOCTYPE html> <html lang="en"> <head> <meta char ...

  3. 在centos7中手动编译greenplum

    一.编译环境 Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 2014 ...

  4. SSI学习(二)

    1.SSI指令 #config:指定返回到client浏览器的错误消息.日期和文件大小所使用的格式. #echo:在 HTML 页中插入环境变量的值. #exec:执行一个应用程序或一条 shell ...

  5. Oracle查看对象空间使用情况show_space

    tom大神写了一个用于查看Oracle数据库对象空间使用情况. 以下演示一下怎样使用: –工具源代码 CREATE OR REPLACE PROCEDURE show_space(p_segname ...

  6. JQuery插件开发标准写法

    ;//step01 定义JQuery的作用域 (function ($) { //step03-a 插件的默认值属性 var defaults = { prevId: 'prevBtn', prevT ...

  7. CI学习 CCNET Config 第一天

    CCNet的整体结构就是一个Xml文档,根元素就是cruisecontrol,具体的代码块如下所示: <cruisecontrol xmlns:cb="urn:ccnet.config ...

  8. mysql主从备份及常见问题处理

    1.mysql主从备份基本原理 mysql支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.mysql复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新 ...

  9. 在java项目中加入百度富文本编辑器

    富文本编辑器在项目中很常见,他可以将文本,图片等信息存入数据库,在编辑一些图文混排的信息的时候很有用,比如商城项目的商品详情页,包含很多带有样式的文字和图片. 此前一直使用的百度的富文本编辑器uedi ...

  10. 解决jquery.zclip.js插件无法复制的问题

    网页中需要用到点击复制,在使用webpack加载jquery以及jquery.zclip.js后,出现了以下情况: jquery顺利加载 zclip插件顺利加载 ZeroClipboard.swf顺利 ...