如云般飘过 发表于 2017-3-1 17:12:38

会唱歌的小黄人-Arduino视频教程(蜂鸣器发声)

http://v.youku.com/v_show/id_XMTUzMTE0MTE0OA==.html
http://www.bilibili.com/video/av4369065/

包教包会福利视频,只需五分钟就能掌握一项小技巧,今天给大家带来的是蜂鸣器发声教程。大家一定都用过Arduino初阶开发包里的无缘蜂鸣器,想必大家都会让它发出声响,有没有想过让这个小东西唱出一首完整的歌曲呢?这次就让它变成小黄人的声带,唱出一首完整的歌吧
一.所需物品清单
电脑*1
android手机*1Arduino*1
面包板*1
蜂鸣器*1
蓝牙模块*1
发光二极管*1
220欧电阻*1
导线*8
二.电路图

三.代码
#define NTD0 -1
#define NTD1 294
#define NTD2 330
#define NTD3 350
#define NTD4 393
#define NTD5 441
#define NTD6 495
#define NTD7 556
#define NTD8 622

#define NTDL1 147
#define NTDL2 165
#define NTDL3 175
#define NTDL4 196
#define NTDL5 221
#define NTDL6 248
#define NTDL7 278

#define NTDH1 589
#define NTDH2 661
#define NTDH3 700
#define NTDH4 786
#define NTDH5 882
#define NTDH6 990
#define NTDH7 112
//根據中部列出D的音節

int tune[] =
{
NTD5, NTD3, NTD0, NTD0, NTD3, NTD2,
NTD1, NTD2, NTD3, NTD5, NTD3, NTD5,
NTD6, NTD3, NTD0, NTD0, NTD3, NTD2,
NTD1, NTD2, NTD3, NTD5, NTD3, NTD5,
NTD6, NTD4, NTD0, NTD0, NTD4, NTD3,
NTD2, NTD3, NTD4, NTD6, NTD8, NTD6,
NTD7, NTD6, NTD6, NTD5,
NTD5, NTD4, NTD3, NTD2,
};
float durt[] =
{
0.5, 0.5, 1, 1, 0.5, 0.5,
0.5, 0.5, 0.5, 1, 0.5, 1,
0.5, 0.5, 1, 1, 0.5, 0.5,
0.5, 0.5, 0.5, 1, 0.5, 1,
0.5, 0.5, 1, 1, 0.5, 0.5,
0.5, 0.5, 0.5, 1, 0.5, 1,
1 + 0.5, 0.5, 0.5, 1,
1 + 0.5, 0.5, 1 + 1,
0.5, 1 + 0.5, 1, 1,
};

//根據右邊的簡譜寫出音調和節奏
int length;
int tonepin = 6;
void setup()
{
Serial.begin(9600);
pinMode(tonepin, OUTPUT);
length = sizeof(tune) / sizeof(tune);
}
void loop()
{
while (Serial.available())
{
    int inByte = Serial.read();
    switch (inByte)
    {
      case 65://串口輸入為A時
      Serial.println("I'm not singing");//回送I'm not singing
      digitalWrite(13, LOW);//滅燈
      break;
      case 66://串口輸入為B時
      Serial.println("I'm singing");//回送I'm singing
      digitalWrite(13, HIGH); //亮燈
      for (int x = 0; x < length; x++)
      {
          tone(tonepin, tune*1.19);
          delay(500 * durt);
          noTone(tonepin);
      } //演奏 *1.19使D調變成F調
      delay(2000);
      break;
    }
}
} //上傳時拔掉藍線和黃線


四.完成图

https://pic4.zhimg.com/0633f3b01f1fd01faf42e581ec96192f_b.png
https://pic4.zhimg.com/dc8cae7a874eee34a15bef1e01b058f3_b.png

https://pic1.zhimg.com/5645628da01a944c114e11d7a650c678_b.png



robo027 发表于 2017-3-2 13:40:21

我也拿DF的硬件和乐高积木做了个小黄人的闯关游戏,
把你的小黄人一看我那个就太不像了。。。
我给你想了一个主意,就是我觉得如果想更生动一点可以拿8X8点矩阵做一个嘴部的造型出来,或是编好重复的动作,或是根据声音大小改变嘴型。:lol

如云般飘过 发表于 2017-3-9 10:04:34

robo027 发表于 2017-3-2 13:40
我也拿DF的硬件和乐高积木做了个小黄人的闯关游戏,
把你的小黄人一看我那个就太不像了。。。
我给你想了一 ...

这个可以有~~!

chen1198872101 发表于 2017-4-20 21:29:57

在吗?

chen1198872101 发表于 2017-4-20 21:36:06

请问蓝牙怎么调试
页: [1]
查看完整版本: 会唱歌的小黄人-Arduino视频教程(蜂鸣器发声)