点击打开连接 转载请注明出处:http://blog.csdn.net/ruoyunliufeng/article/details/37929733html
这个LED音乐频谱是我在学51单片机的时候作的一个小项目。今天再看此代码仍有很是多不规范之处,但由于硬件已经送人,无法继续调试,但愿小伙伴们引觉得戒。写此文主要是想让你们知道当中的原理,知道怎么作当然重要,更重要的是知道为何要这样作。spa
一.效果展现.net
有可能有的人第一次据说过这个东西,但实际上这个东西很是早就有人作出来了。调试
为了让小伙伴们能有一个感性的认识先发下个人成品链接和图片。视频
效果:http://v.youku.com/v_show/id_XNjU3NDEwOTAw.htmlhtm
二.实现功能blog
功能 实现 原理
图片
a.开机LOGO : 就是再视频中开机显示的“若云MCU” LED点阵get
b.频谱显示 : 随着音乐输出跳动的LED FFT(高速傅氏变换)源码
A/D转换
c.四种显示效果: 我按下按键切换频谱的显示模式 位运算
d.亮度切换 : 我按下按键音乐频谱的亮度会发生变化 PWM调光
e.声音输出 : 视频中的音乐输出 TDA2822功放
LED音乐频谱说通俗一点,就是将声音信号经过FFT从时域转换为频域(说的可能仍是有点麻烦)。当中的转换是经过A/D来实现的。咱们经过16*16的点阵观察到的图像就是他的频域信号。由左到右逐渐频率添加。LED点阵就是咱们在大街上看到的滚动的广告牌。显示的效果是经过位运算的转换,转化为不一样的显示模式。
亮度则直接使用STC12单片机自带的D/A。声音的输出用的是一个TDA2822功放芯片。我曾经用他作太小音箱。5V的输入,效果还可以。
看到这里,你仍有可能对当中的细节实现不是很是清楚,别操心,我会负责究竟。接下来的博客我会继续带小伙伴们分析这个东东的。
三.软件框图