Arduino_N9200B音乐频谱
本帖最后由 peter58 于 2018-2-14 16:06 编辑一、 项目简介本制作是踩在前人的肩膀上走过来的,在清风duino基于Arduino Pro Mimi_语音播放彩灯系统(http://club.gizwits.com/thread-8024-1-1.html)基础上修改过来的,现在把不成熟的制作过程分享给大家,希望对需要的朋友有所帮助。
通过ardiuno单片机,语音模块(实际就是一个可以用单片机编程控制的MP3模块),RGBLED(WS2812b)彩条,机智云平台,用机智云DEMO手机APP作为控制界面,机智云APP充当了一个远程遥控器控制N9200B的播放,快进,后退等,然后通过N9200B的声音输出控制彩条WS2812B随音乐的变化而变化发出不同的彩色光达到音乐频谱的效果,无音乐时彩灯会随机变化色彩。
N9200B可以单独作为一个MP3用,接外接键盘控制,也可以配合MCU做其他之用,也可以不需要N9200B用其他的声音源来做一个简单的音乐频谱显示,本制作只是一种尝试还可以加上LCD显示播放状况,曲目多少等等,希望大家有更好的方案或者更好的改进,可与大家共同学习研究。视频http://v.youku.com/v_show/id_XMzMyNDA5OTgyNA==.html?spm=a2h3j.8428770.3416059.1http://v.youku.com/v_show/id_XMzMyNDA5OTgyNA==.html?spm=a2h3j.8428770.3416059.1二、所用材料
[*]1:ARDUINO_MIMI(也可以用其他的ARDUINO板)一块
[*]2:N9200B,语音(MP3)模块一块
[*]3:esp82866_12F 一块(后缀F以后的都可以)
[*]4:WS2812B彩条20-30粒(多少看自已喜好了)
[*]5:小音箱一对或者8欧姆3W喇叭一个
[*]6:导线若干;5v/2-3A电源一个(本制作所需要的总电流在600MA左右)
三、开发环境
[*]1:ArduinoIDE 184版本(当然从106到185的都可以,我用的184版本的)
[*]2:esp烧写软件ESPl_v3.6.1.0
四、制作过程1:首先在机智云注册账号,进入后创建新的产品,加入数据点,创建好数据点后点击MCU开发,选择硬件方案: MCU,硬件平台: ArduinoUNOR3。填上你的 Product Secret然后生成程序,这里就OK了;使用机智云的代码自动生成工具,方法请参阅bigfanofloT老师的“史上最详细的Arduinouno R3接入机智云教程”一文。
2:下载机智云官方ESP8266固件烧写ESP8266 注意新版固件烧写地址好像是01000,(未实验过,这里提醒下大家)
我用的是GAgent_00ESP826_04020023_17032418_combine.bin 烧写地址是0X00000到此基本的准备和程序就差不多了。下面是我的数据点N9200引线功能图表
五、接线与N9200B控制命令
//**控制指令**//
[*]选择SD卡 0x04, 0xFB, 0x01, 0x0B, 0x0B
[*]选择U盘播放 0x04, 0xFB, 0x01,0x0A, 0x0A
[*]选择FLASH播放 0x04, 0xFB, 0x01, 0x0C, 0x0C
[*]全盘循环 0x0B, 0xF4, 0x02, 0x01, 0x00, 0x02
[*]单曲循环 0x0B, 0xF4, 0x02, 0x01, 0x01, 0x03
[*]全盘顺序 0x0B, 0xF4, 0x02, 0x01, 0x05, 0x07
[*]全盘随机 0x0B, 0xF4, 0x02, 0x01, 0x03, 0x05
[*]播放 0x04, 0xFB, 0x01, 0x01, 0x01
[*]暂停 0x04, 0xFB, 0x01, 0x02, 0x02
[*]停止 0x04, 0xFB, 0x01, 0x03, 0x03
[*]下一曲 0x04, 0xFB, 0x01, 0x05, 0x05
[*]上一曲 0x04, 0xFB, 0x01, 0x04, 0x04
[*]音量加 0x06, 0xF9, 0x01, 0x02, 0x02
[*]音量减 0x06, 0xF9, 0x01, 0x03, 0x03
[*]插播 0x04, 0xFB, 0x01, 0x01, 0x01
[*]上一目录 0x04, 0xFB, 0x01, 0x12, 0x12
[*]下一目录 0x04, 0xFB, 0x01, 0x13, 0x13
//**查询指令**//
[*]播放状态 0x04, 0xFB, 0x01, 0x00, 0x00
[*]在线设备 0x04, 0xFB, 0x01, 0x08, 0x08
[*]短文件名 0x04, 0xFB, 0x01, 0x15, 0x15
[*]循环模式 0x0B, 0xF4, 0x01, 0x00, 0x00
[*]当前曲目 0x04, 0xFB, 0x01, 0x0E, 0x0E
[*]当前设备 0x04, 0xFB, 0x01, 0x09, 0x09
[*]查询音量 0x06, 0xF9, 0x01, 0x00, 0x00
[*]查询总曲目 0x04,0xFB, 0x01, 0x0D, 0x0D
[*]目录总曲目 0x04,0xFB, 0x01, 0x18, 0x18
[*]目录首曲目 0x04,0xFB, 0x01, 0x17, 0x1
其他关于程序,程序也就是东拼西都出来的这里就不具体将了,请参考清风duino基于Arduino Pro Mimi_语音播放彩灯系统http://club.gizwits.com/thread-8024-1-1.html
程序里有详细的注释,本人文笔有限不对的地方请见谅,谢谢大家观赏。
效果图
上面数据点的总开关没有实际用处,把它改为电源总开关#define LED 13 //定义控制脚控制函数;bool varR_Switch = 0; //总开关if(myGizwits.hasBeenSet(EVENT_Switch)){ myGizwits.read(EVENT_Switch,&varR_Switch);//Address for storing dataif(varR_Switch == 1){
digitalWrite(LED, HIGH); // sets the user LED on}else{ digitalWrite(LED, LOW); // sets the user LED off }}
完整的ARDUINO程序,程序里有详细的注释制作说明文档
:handshake很好,感谢您的分享!
清风duino 发表于 2018-1-9 22:28
很好,感谢您的分享!
要感谢你的鼓励,请多多指教。 请问,您使用的声音传感器是模拟输出的还是数字输出的?做一个音乐频谱的大致思路(这篇帖子的思路)是不是检测音量大小,然后根据音量大小亮不同的灯,至于亮灯的颜色和位置,这个看个人的编写习惯和能力了! 爱哭的王小吹 发表于 2018-3-20 17:32
请问,您使用的声音传感器是模拟输出的还是数字输出的?做一个音乐频谱的大致思路(这篇帖子的思路)是不是 ...
是模拟的,是根据声音大小,程序里有比较详细的注释了 还想请问一下,你的声音传感器是用哪一款的吗?我也想做一个声音控制闪烁的,但是手头的这几个声音传感器,用着效果差很多。没办法像你视频里面的那么精准。方便分享一下你的声音传感器吗? 爱哭的王小吹 发表于 2018-3-24 16:30
还想请问一下,你的声音传感器是用哪一款的吗?我也想做一个声音控制闪烁的,但是手头的这几个声音传感器, ...
https://item.taobao.com/item.htm?spm=a1z09.2.0.0.630e2e8d6loWPv&id=42236535405&_u=q1sene490bb 你好 楼主 请问能留一下你的联系方式么
目前在做音乐频谱这个功能,可是有好多东西不懂,能请教一下么
例如:如何使用arduino控制N9200B播放音乐
gk.h@qq.com,这是我的邮箱 GeekPower 发表于 2018-11-13 16:54
你好 楼主 请问能留一下你的联系方式么
目前在做音乐频谱这个功能,可是有好多东西不懂,能请教一下么
例如 ...
所有资料都在上面啊 本帖最后由 GeekPower 于 2018-11-19 20:56 编辑
peter58 发表于 2018-11-19 15:59
所有资料都在上面啊
楼主方便加一下我qq么,一直在等您上线,还有一些问题想要请教您我的qq:814560958
楼主能留个QQ吗,有几个问题想问一下您 GeekPower 发表于 2018-11-22 11:51
楼主能留个QQ吗,有几个问题想问一下您
有问题这里提就行了,看见只要懂的都会回复
页:
[1]