“第四十五课--Microduino 电吉他/zh”的版本间的差异
(→设备) |
(→调试) |
||
(未显示2个用户的4个中间版本) | |||
第6行: | 第6行: | ||
==设备== | ==设备== | ||
− | *'''[[Microduino-Core]]''' | + | *'''[[Microduino-Core/zh]]''' |
− | *'''[[Microduino- | + | *'''[[Microduino-USBTTL/zh]]''' |
*其他硬件设备 | *其他硬件设备 | ||
第26行: | 第26行: | ||
例如: | 例如: | ||
− | + | A的频率是440*1.059463........ | |
B的频率是440*1.059463........*1.059463........ | B的频率是440*1.059463........*1.059463........ | ||
第42行: | 第42行: | ||
==程序== | ==程序== | ||
− | + | [https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Advanced/guitar guitar] | |
在程序中int toneFrequency[]={415,440,466,494,523,554,587,622}; | 在程序中int toneFrequency[]={415,440,466,494,523,554,587,622}; | ||
第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>,否则会报错 步骤二:按照原理图搭建电路图如下图: 可以在一个木板上按着音符频率表标注音符的位置。 步骤三:下载并运行代码 步骤四:在超声波前移动遮挡物的位置,听喇叭的声音 结果喇叭会根据遮挡物的位置不同而产生不同的音符,基本上与木板上的音符刻度相符。 视频 |