Arduino_N9200B音乐频谱-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7854|回复: 4

Arduino_N9200B音乐频谱

[复制链接]
发表于 2018-1-10 16:41 | 显示全部楼层 |阅读模式
一、 项目简介
本制作是踩在前人的肩膀上走过来的,在清风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显示播放状况,曲目多少等等,希望大家有更好的方案或者更好的改进,可与大家共同学习研究。

二、所用材料
  • 1ARDUINO_MIMI(也可以用其他的ARDUINO)一块
  • 2N9200B,语音(MP3)模块一块
  • 3esp82866_12F 一块(后缀F以后的都可以)
  • 4:WS2812B彩条20-30粒(多少看自已喜好了)
  • 5:小音箱一对或者8欧姆3W喇叭一个
  • 6:导线若干;5v/2-3A电源一个(本制作所需要的总电流在600MA左右)

三、开发环境
  • 1Arduino  IDE 184版本(当然从106185的都可以,我用的184版本的)
  • 2esp烧写软件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

程序里有详细的注释,本人文笔有限不对的地方请见谅,谢谢大家观赏。

效果图



制作文档说明
N200_WS2812音乐频谱文档.zip (336.45 KB, 下载次数: 38)

完整的ARDUINO程序,程序里有详细的注释
N9200MP3_ws2812.zip (33.48 KB, 下载次数: 56)


发表于 2018-1-14 08:59 | 显示全部楼层
我写的没想到转发到中文社区来了,顶下
 楼主| 发表于 2018-1-17 10:58 | 显示全部楼层
Peter58 发表于 2018-1-14 08:59
我写的没想到转发到中文社区来了,顶下

让更多小伙伴看看
发表于 2018-4-12 10:52 | 显示全部楼层
我看了程序,有些地方不是很懂,貌似灯带的闪烁情况和频率,没什么关系,只和电平高低有关系?怎么做到频率分析?
发表于 2021-4-11 00:01 | 显示全部楼层
66666,非常的奈斯
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 09:23 , Processed in 0.080342 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表