基于机智云APP+Arduino_N9200B的音乐频谱
本设计通过ardiuno单片机,语音模块(实际就是一个可以用单片机编程控制的MP3模块),RGBLED(WS2812b)彩条,机智云平台,用机智云DEMO手机APP作为控制界面,机智云APP充当了一个远程遥控器控制N9200B的播放,快进,后退等,然后通过N9200B的声音输出控制彩条WS2812B随音乐的变化而变化发出不同的彩色光达到音乐频谱的效果,无音乐时彩灯会随机变化色彩。
N9200B可以单独作为一个MP3用,接外接键盘控制,也可以配合MCU做其他之用,也可以不需要N9200B用其他的声音源来做一个简单的音乐频谱显示,本制作只是一种尝试还可以加上LCD显示播放状况,曲目多少等等,希望大家有更好的方案或者更好的改进,可与大家共同学习研究。
点击观看演示视频
APP效果图
实物效果图
硬件准备
♦ ARDUINO_MIMI(也可以用其他的ARDUINO板)一块
♦ N9200B,语音(MP3)模块一块
♦ esp82866_12F 一块(后缀F以后的都可以)
♦ WS2812B彩条20-30粒(多少看自已喜好了)
♦ 小音箱一对或者8欧姆3W喇叭一个
♦ 导线若干、5v/2-3A电源一个(本制作所需要的总电流在600MA左右)
开发环境
♦ Arduino IDE 184版本(当然从106到185的都可以,我用的184版本的)
♦ esp烧写软件ESPl_v3.6.1.0
制作过程
► 首先在机智云注册账号,进入后创建新的产品,加入数据点,创建好数据点后点击MCU开发,选择硬件方案: MCU,硬件平台: ArduinoUNOR3。填上你的 Product Secret然后生成程序,这里就OK了。
使用机智云的代码自动生成工具,方法请参阅bigfanofloT老师的“史上最详细的Arduinouno R3接入机智云教程”一文。
► 下载机智云官方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
点击获取源码