“第四十五课--Microduino 电吉他/zh”的版本间的差异
(→程序) |
(→调试) |
||
第50行: | 第50行: | ||
==调试== | ==调试== | ||
− | + | 步骤一:下载tone函数库:[https://github.com/johnmccombs/arduino-libraries/tree/master/Tone Tone] 放到IED的libraries中再重启IDE。 | |
此Tone库相比自带的tone函数特点是,可以同时在多个输出脚输出不同频率的波形,但是自带tone函数在一段时间内只能在一个引脚输出。 | 此Tone库相比自带的tone函数特点是,可以同时在多个输出脚输出不同频率的波形,但是自带tone函数在一段时间内只能在一个引脚输出。 | ||
第62行: | 第62行: | ||
步骤三:下载并运行代码 | 步骤三:下载并运行代码 | ||
− | 步骤四:在超声波前移动遮挡物的位置,听喇叭的声音 | + | 步骤四:在超声波前移动遮挡物的位置,听喇叭的声音 |
==结果== | ==结果== |
2014年10月29日 (三) 05:13的最新版本
目的本教程将让大家如何使用超声波传感器,喇叭和Microduino做出一个电吉他。 设备
音符频率我们平常听到的 Do - Re - Mi - Fa - Sol - La - Si/Te 有它们对应的频率,下面两张表显示了各个音符对应的频率。 中间A的频率是440Hz,差一个八度音调是两倍的关系,然后分成12份,每分之间的倍数是2的12分之一次方倍。2的12分之一次方约等于1.059463........ 例如: A的频率是440*1.059463........ B的频率是440*1.059463........*1.059463........ 乘12次以后是两倍,恰好到下一个A 中央c的频率是261.6hz Microduino的tone()可以直接产生频率 原理图
程序在程序中int toneFrequency[]={415,440,466,494,523,554,587,622}; 用来定义可以发出音符的范围和个数,你可根据自己的喜好按着音符频率表调整这个范围。 调试步骤一:下载tone函数库:Tone 放到IED的libraries中再重启IDE。 此Tone库相比自带的tone函数特点是,可以同时在多个输出脚输出不同频率的波形,但是自带tone函数在一段时间内只能在一个引脚输出。 注意:解压后要把Tone.cpp中的'#include <wiring.h>改为#include <Arduino.h>,否则会报错 步骤二:按照原理图搭建电路图如下图: 可以在一个木板上按着音符频率表标注音符的位置。 步骤三:下载并运行代码 步骤四:在超声波前移动遮挡物的位置,听喇叭的声音 结果喇叭会根据遮挡物的位置不同而产生不同的音符,基本上与木板上的音符刻度相符。 视频 |