文档库 最新最全的文档下载
当前位置:文档库 › 基于Arduino的音乐频谱显示器方案概述

基于Arduino的音乐频谱显示器方案概述

基于Arduino的音乐频谱显示器方案概述
基于Arduino的音乐频谱显示器方案概述

【方案概述】

在家庭影院、卡拉OK等音响系统中,实时显示音乐信号的频谱将为音乐系统增添不少色彩。这里采用Arduino来实现这一效果,具体系统设计原理图如图1:

整个系统分前端放大、ADC采集转换、FFT频谱计算、LED点阵驱动四部分组成。下面分不分对各个不分进行说明:

1.前端放大电路

直接从电脑音频孔取出的音频信号是个交流信号,电压幅值约

100mv~500mv左右,而ADC只能采样正电压,为了充分利用ADC的采样精度,需要将音频信号放大并叠加一个直流分量(有点类似数字示波器的前端电路),在设计中我直接用了一个音频集成功放LM386,原理图如下(参数以网上实际参数为准):

测试从386的5脚取出信号,刚好有2.5V的直流电压,另外放大倍数约20倍。

2.ADC采样

直接接入atmega8的模拟输入端即可。这里要注意采样频率,按照采样定理,采样频率要大于信号频率的两倍,这些上课时大家都学过,就不展开了。而我们音频信号频率范围在20Hz~20kHz之间,按照最大的频率来算,要求ADC 采样频率不得小于40kHz。

在Arduino的教程中介绍其ADC完成一次采样转换的时间要100μ秒,约10K的采样率,不符合上述对音频信号采样最低频率的要求,在网上找到解决办法如下:

复制内容到剪贴板

代码:

#define FASTADC 1

// defines for setting and clearing register bits

#ifndef cbi

#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))

#endif

#ifndef sbi

#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))

#endif

//。。。。。。。。

//在setup()函数中添加

#if FASTADC

//set prescale to 16

sbi(ADCSRA,ADPS2) ;

cbi(ADCSRA,ADPS1) ;

cbi(ADCSRA,ADPS0) ;

#endif

如此转换频率理论达到60K左右,添加一些其他处理代码后测试得到的一次采样率约为48K,符合要求。

3.LED点阵屏驱动

为了美观,采用方形发光二极管(蓝色)来焊接的一个8*13的LED点阵屏,原理图跟常见的8*8的一样。由于开发板IO口的限制,只有14个数字IO 口,所以采用2块74HC595串转并,用来扫描13个公共端,数据段直接由数字IO驱动,这里要注意限流:一是LED的最大电流,二是595最大灌电流,三是atmega8的最大输出电流。

【制作步骤】

以下是制作过程中的一些贴图:

#define FASTADC 1

// defines for setting and clearing register bits

#ifndef cbi

#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))

#endif

#ifndef sbi

#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))

#endif

//设置595的控制IO脚

int SCLK = 8;

int LCLK = 9;

int SDI = 10;

int SN = 64;

int analogPin=0;

int offset=500;

struct compx //定义复数结构体

{

float re;

float im;

};

struct compx s[ 64 ];

unsigned char tab[9]={0x00,0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff}; unsigned int tab2[13]={0xfffe,0xfffd,0xfffb,0xfff7,

0xffef,0xffdf,0xffbf,0xff7f,

0xfeff,0xfdff,0xfbff,0xf7ff,0xefff};

struct compx cpx_multiplication(struct compx,struct compx); //复数乘法函数的声明

void FFT(struct compx xin[],int N); //FFT函数的声明

void ADC_SAMPLE();

void init595()

{

digitalWrite(SCLK,LOW);

digitalWrite(LCLK,LOW);

digitalWrite(SDI,LOW);

}

void send_led(unsigned char dat)

{

for(int i=0;i<8;i++)

digitalWrite(i,dat&0x01);

dat = dat>>1;

}

}

void send_595(unsigned int dat)

{

unsigned char i;

for(i=0;i<13;i++)

{

//SDI = dat&0x01;

digitalWrite(SDI,dat&0x01);

digitalWrite(SCLK,HIGH);

digitalWrite(SCLK,LOW);

dat = dat>>1;

}

}

void setup(){

unsigned char i;

#if FASTADC

//set prescale to 16

sbi(ADCSRA,ADPS2) ;

cbi(ADCSRA,ADPS1) ;

cbi(ADCSRA,ADPS0) ;

#endif

for(i=0;i<=10;i++){//依次设置1~6个数字引脚为输出模式 pinMode(i,OUTPUT);//设置第i个引脚为输出模式

digitalWrite(i,LOW);

}

init595();

}

void loop(){

int val[64];

unsigned char i,j;

ADC_SAMPLE();

FFT(s,SN);

for(i=0,j=0,m=0;i

val[j]=int(sqrt(pow(s[i].re,2)+pow(s[i].im,2))/40); if(j<13){

if(val[j]>8)

val[j] = 8;

send_led(tab[val[j]]);

send_595(tab2[j]);

digitalWrite(LCLK,HIGH);

digitalWrite(LCLK,LOW);

}

j+=1;

}

}

/*复数乘法*/

struct compx cpx_multiplication (struct compx a1,struct compx b2)

{

struct compx b3;

b3.re=a1.re*b2.re-a1.im*b2.im;

b3.im=a1.re*b2.im+a1.im*b2.re;

return(b3);

}

/*FFT函数*/

void FFT(struct compx xin[],int N) {

int f,m,nv2,nm1,i,k,j=1,l;

struct compx v,w,t;

int le,lei,ip;

float pi=3.14159265;

nv2=N/2;

f=N;

for(m=1;(f=f/2)!=1;m++){;}

nm1=N-1;

for(i=0;i

{

if(i

{

t=xin[j];

xin[j]=xin[i];

xin[i]=t;

}

k=nv2; //k为倒序中相应位置的权值

while(k

{

j=j-k;

k=k/2;

}

j=j+k;

}

/***************************************************/ for(l=1;l<=m;l++)

{

le=pow(2,l); //乘方

lei=le/2;

v.re=1.0;

v.im=0.0;

w.re=cos(pi/lei); //旋转因子

w.im=(-1)*sin(pi/lei);

for(j=1;j<=lei;j++) //控制蝶形运算的级数

{

for(i=j-1;i

{

ip=i+lei;

t=cpx_multiplication(xin[ ip ] ,v);

xin[ ip ].re=xin[ i ].re-t.re; //蝶形计算

xin[ ip ].im=xin[ i ].im-t.im; xin[ i ].re=xin[ i ].re+t.re; xin[ i ].im=xin[ i ].im+t.im; }

v=cpx_multiplication(v,w);

}

}

}

/*ADC采样*/

void ADC_SAMPLE()

{

int i;

for(i=0;i

{

s[i].re=float((analogRead(analogPin)-offset))/6; // read the input pin

s[i].im=0;

}

}

【物料清单】

【参考资料】

fft.rar (14.31 KB)

FFT结果的物理意义.rar (2.9 KB)

或者参考其他网友的资料:

https://www.wendangku.net/doc/db13858559.html,/tlptotop/blog/item/386c4ca3924086a2caefd0c5.html

https://www.wendangku.net/doc/db13858559.html,/showtopic-326062.html

https://www.wendangku.net/doc/db13858559.html,/bbs/bbs_content.jsp?bbs_sn=4542340&bbs_id=9999

https://www.wendangku.net/doc/db13858559.html,/bbs/redirect.php?tid=8451&goto=lastpost#lastpost

单片机音乐频谱..

题目:单片机LED音乐频谱的设计院(系): 专业: 学生姓名: 学号: 指导教师: 2011年07月07日

摘要 该系统采用增强型8051单片机STC12C5A60S2为主控制器,通过单片机内置的ADC对音频信号进行采样、量化,然后通过快速傅里叶变换运算,在频域计算出音频信号各个频率分量的功率,最后通过双基色LED单元板进行显示。该方案具有电路结构简洁,开发、生产成本低的优点。 关键词:单片机;傅里叶;LED;

目录 1. 引言 (1) 2. 方案设计 (2) 2.1设计要求 (2) 2.2总体方案设计 (3) 2.3总体方案组成 (6) 3. 系统电路设计 (6) 3.1单片机主控电路设计主控制器 (6) 3.2LED显示模块电路设计 (7) 4. 软件设计 (8) 4.1软件设计流程图 (8) 5.系统的测试 (8) 6.结论 (9) 7.参考文献 (11) 8. 附录 (14)

1. 引言 本文介绍的音乐频谱显示器可对mp3、手机、计算机输出的音乐信号进行实时的频谱显示。系统采用增强型8051单片机STC12C5A60S2为主控制芯片,通过单片机内置的ADC对音频信号进行采样,把连续信号离散化,然后通过快速傅里叶变换(FFT)运算,在频域计算出音频信号各个频率分量的功率,最后通过双基色LED单元板进行显示。在显示的频率点不多的情况下,本系统比采用DSP或ARM作为主控制芯片的设计方案具有电路结构简洁,开发、生产成本低的优点。

2. 方案设计 2.1设计要求 1. 单片机自带AD 转换,这样省去外围AD 电路。 2. 控制LED 随着音乐跳动,需要理解傅里叶原理。 2.2总体方案设计 经分析,将系统分为两个部分,一个是由单片机组成的主控。另一部分是LED 显示部分,单片机对接收到的音频进行处理经过傅里叶换算后在LED 显示,5V 稳压电源给各个部分供电。 该系统实现的方法有很多种,下面将列出大家最经常用到的实现方案。系统框图如图1所示 图1 音乐频谱总体系统框图 该系统由音频信号预处理电路、单片机STC12C5A60S2控制电路、LED 频谱显示电路等部分组成。图l 为系统整体设计原理框图。 图1 系统整体设计原理框图 系统各组部分的功能:(1)音频信号预处理电路主要对输入的音频进行电压放大和电平提升。(2)单片机STC12C5A60S2控制电路采用内置的ADC 对音频信号进行采样量化,然后对量化后的音频数据采用FFT 算法计算其频谱值,再将各频谱值进行32级量化。(3)LED 频谱显示电路在单片机的控制下,负责将FFT 计算得到的音频信号的各个频点的大小进行直观显示。 1.音频信号预处理电路 图2 音频信号预处理电路 音频信号预处理电路见图2所示,对输入的音频进行电压放大和电平提升。手机、计算机输出的音频信号Vin 经过RP1进行电压调节后,经集成运放LMV358反相放大10倍(Av=-R3/R2=-10),提高系统的灵敏度。选用单电源供电的运放LMV358,一方面可以简化系统电源电路的设计,直接采用系统的+5V 供电即可;另一方面其输出端静态电压为VCC/2,即2.5V 。放大后的音频信号和这2.5V 叠加后变为直流电压信号,满足后面单片机内置的ADC 对输入电压量程的要求。另外,LMV358为轨到轨输出运放,它可在+5V 单电源供电条件下仍具有较大的动态输出范围。 2.单片机STC12C5A60S2控制电路 显示电路 音频信号 单片机 电源

基于51单片机的音乐播放器设计

题目:音乐播放器 课程设计(论文)任务书

摘要 随着电子技术的发展和计算机越来越普遍的使用,单片机作为这两项技术的有机结合也得到了广泛的应用,在某些领域具有不可替代的作用。音乐播放功能随处都会用到,如,在开发儿童智力的玩具中,等等。目前,基于单片机实现音乐播放,其体积小、价格低、编程灵活等特点在这一领域独领风骚。 单片机的英文名称为single chip microcomputer,最早出现在20世纪70年代,国际上现在已逐渐被微控制器(Microcontroller Unit 或MCU)一词所取代。它体积小,集成度高,运算速度快,运行可靠,功耗低,价格廉,因此在数据采集、智能化仪表、通讯设备等方面得到了广泛应用。而8051单片机在小到中型应用场合很常见,已成为单片机领域的实际标准。随着硬件的发展,8051单片机系列的软件工具也有了C级编译器和实时多任务操作系统RTOS,为单片机编程使用C语言提供了便利的条件;并针对单片机常用的接口芯片编制通用的驱动函数,可针对常用的功能模块,算法等编制相应的函数;C语言模块化程序结构特点,可以使程序模块大家共享,不断丰富,这样就使得单片机的的程序设计更简单可靠,实时性强,效率高。作为测控技术与仪器的学生,掌握8051单片机硬件基础及其相关软件操作,将其应用于现代电子产品中是必要而且重要的,这次课程设计我们的题目是用单片机实验箱系统制作音乐播放器。 本次课程设计主要内容是通过单片机C51语言进行编程,以产生乐曲音符和节拍,把乐谱翻译成计算机语言(音符转换诚成相对应的方波频率即定时器装载初值,节拍转换成相对应的延长时间),并将其预先存储到单片机里,然后根据按键调用再由单片机进行信息处理,在经过信号放大,由喇叭放出乐曲声,实现音乐播放的功能。其主要表现在可以播放十首歌曲,可以用十个数字键控制播放的歌曲,并且能在LCD液晶屏显

基于单片机的音频频谱显示器设计

目次 1 绪论-----------------------------------------------------------1 2 系统功能-------------------------------------------------------1 3 系统设计-------------------------------------------------------2 3.1 主控单元----------------------------------------------------2 3.2 STC12C5A60S2 系列单片机单片机的A/D转换器-------------------10 3.3 STC12C5A60S2 系列单片机单片机的I/O口结构-------------------11 3.4 频谱显示单元-----------------------------------------------14 4 音频频谱显示相关问题-------------------------------------------16 4.1 频谱及频谱显示---------------------------------------------16 4.2 FFT运算规则及编程思想--------------------------------------17 5 总结-----------------------------------------------------------22 参考文献-------------------------------------------------------24 致谢-----------------------------------------------------------23 附录A 源程序-------------------------------------------------25 附录B 系统电路图---------------------------------------------32

音乐频谱

音乐频谱 摘要:我们知道,一切声音都是有震动产生的。声音之所以千变万化各不相同,是因为它们振动各不相同。频率的单位是赫兹(简写Hz),是德国物理学家,他发现了电磁波,人们用他的名字来作为频率的单位。我们耳朵能听到的频率范围,是20Hz—20KHz,根据傅立叶分析,任何声音都可以分解为数个甚至无限个正弦波,而它们往往又包含无数的谐波分量,又往往是时刻变化。音乐频谱是利用微型麦克风来采集声音信号,并通过8050、8550三极管的分频,又有傅里叶变换来得出通过二极管来显示效果。 随着科学技术的不断进步,现在我们所见到的音乐频谱也是各式各样,效果也是越来越创新,以前每当看到家里的音箱功放的记牌小灯,随着播放的音乐如波浪般跳跃,或者在电脑上打开千千静听这个音乐播放软件时,伴随着音箱里传来的美妙音乐,看到那动感的频谱跟随音乐节奏优美的舞动着时,原来只能“听”的音乐,现在却还能“看”,给人类视觉上的炫酷感受,不禁思绪万千,要是把自己某天能亲手用普通的,那将是多么有成就感的事情,至少对我们电子爱好者来说,这是许多人曾经梦想的。 关键词:三极管电位器电解电容 Abstract

We know that all sounds are generated by vibration. The reason why the sound is varied, is because of their different vibration. Frequency unit is Hz (abbreviated Hz), the German physicist, he found that the electromagnetic waves, people use his name as a frequency unit. Our ears can hear the frequency range is 20 Hz - 20 kHz. The according to Fourier analysis, any sound can is divided into several or even an infinite number of sine wave often contains many harmonic components, and is often varies from hour to hour. Music spectrum is the use of micro microphone to capture the sound signal, and through 8050, 8550 transistor frequency, and Fu Liye transform to come out through the diode to display results. With the continuous progress of science and technology, now the music spectrum we see is every kind of effect is also more and more, innovation, before every time I see the speaker amplifier home note card lights, music such as wave like jumping, or on the computer to open thousands of static listen to the music player software, with the speaker heard the wonderful music, see the dynamic spectrum to follow the rhythm of the music beautiful dance, the original can only "hear" music, now they can "see", to the human visual sense of cool feeling, can not help thinking of thousands, if their day can personally use

ae音乐频谱模板

竭诚为您提供优质文档/双击可除 ae音乐频谱模板 篇一:音乐频谱原理 音乐频谱原理 该频谱显示器是采用频谱扫描法,只显示频谱的幅度,不显示相位,分别用红、绿、黄三种led来显示信号的高、中、低频幅度采用动态来显示各个频率点的动态瞬时值。(由于本件采用的是5v电压,因此二极管用的是4148型。)电路是通过小咪头为输入端,右边的发光led灯作为最终的负载,电路主要有音频电压放大器、带通滤波电路等组成。 电位器、电阻等组成三个带通滤波器。带通滤波的作用就是把信号的频率限制在一定的频率范围内,达到该频率的通过否则被阻止,一般都是有R/l/c等无源器件组成,若有晶体管、集成运放组成的称为有源带通滤波,输入阻抗高、输出阻抗低、体积小、重量轻、输出阻抗好等特点。信号由小咪头接受音频信号转化为电信号并和电阻等组成有源带 通滤波,且电容与电阻又组的被阻止。然后传输到后级电路,可通滑动电阻器来改变其阻值调节其阻值,进而改变电阻之

间的比值进而调节q点进而得到不同的频率和不同q值带通滤波器。 频率信号的电平经过带通滤波后经过三极管分别将电压传送到发光二极管,电压的强弱来控制着发光二极管发亮的个数及导通的时间,由于音频的频率比较短暂且起伏所以在转化电平后依旧类似也就形 成那种炫目动态的led闪烁的效果。 篇二:有关音乐频谱的程序 上程序 ====================== #include//要调入数学(和谐)运算的头文件 #include //定义复数结构 structcompx { floatreal; floatimag; }; //定义复数乘法 structcompxee(structcompxa,structcompxb) { structcompxc;

基于单片机的数字音乐盒

山东建筑大学 课程设计说明书 题目:基于单片机的数字音乐盒 课程:单片机原理及应用B课程设计院(部):信息与电气工程学院 专业:电子信息工程 班级: 学生姓名: 学号: 指导教师:高焕兵张君捧 完成日期: 2013年6月

目录 摘要 .................................................................... I 1 设计目的 (2) 2 设计要求 (2) 3 设计内容 (3) 3.1 设计原理 (3) 3.2 方案设计 (3) 3.3 电路各模块说明 (4) 3.4 器件选择 (6) 3.5.系统设计 (8) 3.6 软件设计 (8) 3.7 仿真调试及操作说明 (9) 总结与致谢 (10) 参考文献 (11) 附录 (12) 附录一:基于单片机的数字音乐盒总电路图 (12) 附录二:音乐程序 (12)

山东建筑大学信息与电气工程学院学院课程设计说明书 摘要 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,基于单片机制作的电子式音乐盒,控制功能强大,可根据需要选歌,使用方便。所放歌曲的节奏可以根据需要进行设置,根据存储容量的大小,可以尽可能多的存储歌曲。 本设计由由单片机AT80C51芯片和LCD显示器为核心,辅以必要的电路,构成的一个单片机电子数字音乐盒。本设计采用4*4键盘,用Protel99来画系统硬件图,采用C语言进行编程,编程后利用KEIL C51来进行编译,再生成的HEX文件装入芯片中,采用proteus软件来仿真,检验功能得以正常实现。 关键词:单片机;音乐盒;电路;播放

音频频谱分析仪设计

信号处理实验 实验八:音频频谱分析仪设计与实现

一、实验名称:音频频谱分析仪设计与实现 二、实验原理: MATLAB是一个数据信息和处理功能十分强大的工程实用软件,其数据采集工具箱为实现数据的输入和输出提供了十分方便的函数和命令。本实验可以用MATLAB进行音频信号频谱分析仪的设计与实现。 1、信号频率、幅值和相位估计 (1)频率(周期)检测 对周期信号来说,可以用时域波形分析来确定信号的周期,也就是计算相邻的两个信号波峰的时间差、或过零点的时间差。这里采用过零点(ti)的时间差T(周期)。频率即为f = 1/T,由于能够求得多个T值(ti有多个),故采用它们的平均值作为周期的估计值。 (2)幅值检测 在一个周期内,求出信号最大值ymax与最小值ymin的差的一半,即A = (ymax - ymin)/2,同样,也会求出多个A值,但第1个A值对应的ymax和ymin不是在一个周期内搜索得到的,故以除第1个以外的A值的平均作为幅值的估计值。 (3)相位检测 采用过零法,即通过判断与同频零相位信号过零点时刻,计算其时间差,然后换成相应的相位差。φ=2π(1-ti/T),{x}表示x的小数部分,同样,以φ的平均值作为相位的估计值。 频率、幅值和相位估计的流程如图所示。

其中tin表示第n个过零点,yi为第i个采样点的值,Fs为采样频率。 2、数字信号统计量估计 (1) 峰值P的估计 在样本数据x中找出最大值与最小值,其差值为双峰值,双峰值的一半即为峰值。P=0.5[max(yi)-min(yi)] (2)均值估计 式中,N为样本容量,下同。 (3) 均方值估计

用51单片机实现电脑音频信号的频谱显示(在LCD上显示)

如何用51单片机实现音频信号的频谱显示(在LCD上显示) 思路:外来音频信号经过51单片机,在单片机中进行频谱分析,并将结果显示在LCD(12864或1602)上 要求:频谱显示如同千千静听播放音乐时的频谱显示 希望各位高手能给出详细的解决方案,感激。。。。。。 51做FFT有些困难,可以使用增强型(RAM)的51机子进行 参考程序: #include #define uchar unsigned char #define uint unsigned int #define channel 0x01 //设置AD通道为 P1.1 //--------------------------------------------------------------------- sbit SDA_R=P1^2; sbit SDA_R_TOP=P1^3; sbit SDA_G=P1^4; sbit SDA_G_TOP=P1^5; sbit STCP=P1^6; sbit SHCP=P1^7; //--------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------------- //放大128倍后的sin整数表(128) code char SIN_TAB[128] = { 0, 6, 12, 18, 24, 30, 36, 42, 48, 54, 59, 65, 70, 75, 80, 85, 89, 94, 98, 102, 105, 108, 112, 114, 117, 119, 121, 123, 124, 125, 126, 126, 126, 126, 126, 125, 124, 123, 121, 119, 117, 114, 112, 108, 105, 102, 98, 94, 89, 85, 80, 75, 70, 65, 59, 54, 48, 42, 36, 30, 24, 18, 12, 6, 0, -6, -12, -18, -24, -30, -36, -42, -48, -54, -59, -65, -70, -75, -80, -85, -89, -94, -98, -102, -105, -108, -112, -114, -117, -119, -121,

电子音乐盒(单片机课程设计)

^ 电子音乐盒 1、设计任务和要求 (1) 2、总体设计 (1) 3、硬件设计 (2) 硬件电路 (2) 原理说明 (2) 4、软件设计 (3) 5、仿真、安装和调试 (3) 【 6、收获与体会 (4) 参考文献 (5) 附件1:元件清单 (6) 附件2: 总电路图 (7) 附件3:音乐程序 (8) ,

音乐盒设计 1、设计任务和要求 (1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而 演乐曲(内存两首乐曲)。 (2)采用七段数码管显示当前播放的歌曲序号。 (3)可通过功能键选择乐曲,暂停,播放,上一曲,下一曲。 2、总体设计 (1)要产生音频脉冲,只要算出某一音频的周期(1/音频),然后将此周期除以2,即为半周期的时间,利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O口反相,就可在I/O脚上得到此频率的脉冲 (2)利用8051的内部定时器使其工作在计数器模式MODE1下,改变记数值TH0及TL0以产生不同频率的方法。例如频率为523HZ,其周期T=1/523=1912微秒,因此只要令计数器定时956/1=956在每记数9次时将I/O口反相,就可得到中音D0(523HZ)。 记数脉冲值与频率的关系公式如下: N=Fi/2/Fr N:记数值 Fi:内部计时一次为1微秒.故其频率为1MHZ Fr;要产生的频率 (3):起记数值的求法如下: T=65536-N=65536-Fi/2/Fr 例如:设K=65536,F=1000000=Fi=1MHZ,求低音D0(523HZ),高音的D0(1046HZ)的记数值。 T=65536-N=65536-Fi/2/Fr=65536-1000000/2/Fr=65536-500000/Fr

音乐频谱-电路图

1122334455667 78 8 D D C C B B A A Title Number Revision Size A2Date: 2012/12/15Sheet of File: E:\\..\MusicSpectrum.SchDoc Drawn By: MusicSpectrum 1 5hao 1 Change06_ RXD TXD 1 234 P1ISP VBUS 1 D-2D+3NC 4GND 5 J1MinUSB C3220uF L1 LED L2LED L3 LED L4 LED L5 LED L6 LED L7LED L8 LED L9LED L10 LED L11 LED L12 LED L13LED L14 LED L15 LED L16 LED L17 LED L18LED L19 LED L20LED L21 LED L22 LED L23 LED L24LED L25 LED L26 LED L27 LED L28 LED L29LED L30 LED L31LED L32 LED L33 LED L34 LED L35LED L36 LED L37 LED L38 LED L39 LED L40LED L41 LED L42LED L43 LED L44 LED L45 LED L46LED L47 LED L48 LED L49 LED L50 LED L51LED L52 LED L53LED L54 LED L55 LED L56 LED L57LED L58 LED L59 LED L60 LED L61 LED L62LED L63 LED L64LED L65 LED L66 LED L67 LED L68LED L69 LED L70 LED L71 LED L72 LED L73LED L74 LED L75LED L76 LED L77 LED L78 LED L79LED L80 LED L81 LED L82 LED L83 LED L84LED L85 LED L86LED L87 LED L88 LED L89LED L90LED L91 LED L92LED L93LED L94LED L95LED L96LED L97LED L98LED L99 LED L100 LED L101LED L102 LED L103 LED L104 LED L105 LED L106LED L107 LED L108LED L109 LED L110LED X0X1R4470R VCC Music_L Music_R GND VCC R5470R R6470R R7470R R8470R R9470R R10470R R11470R R3 470R R2470R R1470R P1.5/ADC5/MOSI 1 P1.6/ADC6/MISO 2 P1.7/ADC/SCLK 3P4.7/RST 4 P3.0/RxD/INT 5 P4.3/CCP1/TxD2/SCLK 6P3.1/TxD 7P3.2/INT08P3.3/INT19P3.4/T0/INT/CLKOUT010P3.5/T0/INT/CLKOUT111P3.6/WR 12P3.7/RD 13 XTAL214XTAL215GND 16 P4.0/SS 17 P2.0/A818P2.1/A919P2.2/A1020P2.3/A1121P2.4/A1222P2.5/A1323P2.6/A1424P2.7/A1525P4.4/NA 26P4.5/ALE 27P4.1/ECI/MOSI 28 P4.6/EX_LVD/RST229 P0.730P0.631P0.532P0.433P0.334P0.235P0.136P0.037VCC 38 P4.2/CCP0/RxD2/MISO 39 P1.0/ADC0/CLKOUT240 P1.1/ADC141 P1.2/ADC2/ECI/RxD242 P1.3/ADC3/CCP0/TxD243P1.4/ADC4/CCP1/SS 44U1STC12C5A60S2 P20 P21P22P23P24P25P26P27 P35P36P37VCC VCC X1 X0P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20 P21 P22 P23P24 P25P26 P27 P36P37P35 P20P21P22P23P24P25P26P27P36P37P35P00 P01 P02 P03 P04 P05 P06 P07 P45P46 12Y124MHz C2 47pF C5 104 C622pF C722pF 1 STAND1Φ3-5mm 1 STAND2Φ3-5mm RXD TXD L111 LED L112LED L113 LED L114 LED L115 LED L116 LED L117LED L118 LED L119LED L120 LED L121LED L122 LED L123LED L124 LED L125 LED L126 LED L127 LED L128LED L129 LED L130LED L131 LED L132LED L133 LED L134LED L135 LED L136 LED L137 LED L138 LED L139LED L140 LED L141LED L142 LED L143LED L144 LED L145LED L146LED L147 LED L148LED L149LED L150LED L151LED L152LED L153LED L154LED L155 LED L156LED L157 LED L158 LED L159 LED L160 LED L161LED L162 LED L163LED L164 LED L165LED P20P21P22P23P24P25P26P27P36P37P35P20P21P22P23P24P25P26P27P36P37P35P20P21P22P23P24P25P26P27P36P37P35P20P21P22P23P24P25P26P27P36P37P35P20P21P22P23P24P25P26P27P36P37P35Music_L P10P11P12P13P14P15P16P00 P01 P02 P03 P04 P05 P06 P07 P10 P11 P12 P13 P14 P15 P16 1 STAND3Φ3-5mm 1 STAND4Φ3-5mm

基于51单片机的音乐程序

基于51单片机的按键切换播放音乐 原理图: 引脚说明:共5个按键,分别接51单片机的P0~P4引脚,前4个按键控制播放设置好的四首音乐,第5个按键用来关闭音乐。按键采用中断方式,任意时刻按下任意按键则立即进入所按按键的功能;蜂鸣器接单片机的P3.6口。 仿真说明:使用proteus仿真,晶振:12MHZ。 程序代码如下: /*12Mhz晶振工作*/ #include #define uint unsigned int #define uchar unsigned char sbit voice=P3^6; uchar code sound1[]={0xff, 0x40,0x80,0x30,0x40,0x2b,0x40,0x26,0x80,0x24,0x10,0x26,0x40,0x30,0x40, 0x2b,0x80,0x30,0x40,0x39,0x40,0x30,0xc0,0x40,0x80,0x30,0x40,0x2b,0x40, 0x26,0x40,0x26,0x20,0x24,0x20,0x20,0x40,0x30,0x40,0x24,0x80,0x26,0x10,

0x20,0x40,0x19,0x40,0x19,0x80,0x1c,0x10,0x1c,0x80,0x20,0x40,0x20,0x20, 0x1c,0x20,0x19,0x40,0x1c,0x20,0x20,0x20,0x26,0xc0,0x24,0x80,0x24,0x10, 0x20,0x40,0x1c,0x40,0x20,0x40,0x24,0x20,0x26,0x20,0x2b,0x80,0x33,0x40, 0x33,0x20,0x39,0x20,0x40,0x40,0x39,0x40,0x30,0xc0,0x18,0x80,0x1c,0x80, 0x24,0x80,0x20,0x10,0x1c,0x80,0x19,0x40,0x19,0x20,0x19,0x20,0x19,0x40, 0x1c,0x20,0x20,0x20,0x26,0xc0,0x18,0x80,0x1c,0x80,0x24,0x80,0x20,0x10, 0x1c,0x80,0x1c,0x40,0x1c,0x20,0x1c,0x20,0x1c,0x40,0x24,0x20,0x26,0x20, 0xff,0x20,0x00};//同一首歌*/ uchar code sound2[]={0xff, 0x18,0x40,0x1c,0x20,0x18,0x20,0x13,0x40,0x13,0x20,0x15,0x20,0x13,0x20, 0x15,0x20,0x13,0x20,0x15,0x20,0x18,0x20,0x19,0x20,0x1c,0x20,0x20,0x20, 0x1c,0x40,0x19,0x20,0x18,0x20,0x15,0x40,0x10,0x80, 0x13,0x10,0x10,0x40,0x15,0x10,0x13,0x10,0x18,0x10,0x1c,0x10,0x26,0x10, 0x13,0x10,0x18,0x10,0x1c,0x10,0x26,0x10,0x13,0x10,0x18,0x10,0x1c,0x10, 0x26,0x10,0x13,0x10,0x18,0x10,0x1c,0x10,0x26,0x10,0x15,0x10,0x19,0x10, 0x20,0x10,0x2b,0x10,0x15,0x10,0x19,0x10,0x20,0x10,0x2b,0x10,0x15,0x10, 0x19,0x10,0x20,0x10,0x2b,0x10,0x15,0x10,0x19,0x10,0x20,0x10,0x2b,0x10, 0x18,0x10,0x1c,0x10,0x24,0x10,0x30,0x10,0x18,0x10,0x1c,0x10,0x24,0x10, 0x30,0x10,0x19,0x10,0x20,0x10,0x2b,0x10,0x19,0x10,0x19,0x10,0x20,0x10, 0x2b,0x10,0x19,0x10,0x18,0xc0,0xff,0x40,0x40,0x10,0x39,0x20,0x30,0x20, 0x2b,0x20,0x30,0x20,0x2b,0x20,0x26,0x20,0x26,0x20,0x26,0x20,0x26,0x20, 0x26,0x20,0x2b,0x20,0x30,0x20,0x2b,0x20,0x26,0x20,0x26,0x20,0x26,0x20, 0x26,0x20,0x26,0x20,0x2b,0x20,0x30,0x20,0x2b,0x40,0x30,0x10,0x30,0x20, 0x39,0x20,0x30,0x40,0x2b,0x10,0x2b,0x20,0x26,0x20,0x26,0x80,0x40,0x10, 0x39,0x20,0x30,0x20,0x2b,0x20,0x30,0x20,0x2b,0x20,0x30,0x20,0x30,0x20, 0x20,0x20,0x20,0x20,0x26,0x20,0x2b,0x20,0x26,0x20,0x2b,0x20,0x30,0x20, 0x30,0x20,0x26,0x20,0x26,0x20,0x26,0x20,0x2b,0x20,0x30,0x20,0x2b,0x40, 0x2b,0x10,0x2b,0x20,0x2b,0x20,0x2b,0x40,0x30,0x10,0x30,0x20,0x39,0x20,

数据的采集与音频信号的频谱分析 课程设计

中北大学 课程设计说明书 学生姓名:谢航飞学号:1305014126 学院:信息与通信工程学院 专业:电子信息工程 题目:信息处理信息实践: 数据的采集与音频信号的频谱分析 指导教师:王玉职称:副教授 2016 年 1 月 22 日

中北大学 课程设计任务书 15/16 学年第一学期 学院:信息与通信工程学院 专业:电子信息工程 学生姓名:关炜学号:1305014102 学生姓名:谢航飞学号:1305014126 学生姓名:李庆学号:1305014140 课程设计题目:信息处理信息实践: 数据的采集与音频信号的频谱分析起迄日期:2016年1月4日~2016年1月22日 课程设计地点:学院楼201实验室 指导教师:王玉 负责人:王浩全 下达任务书日期: 2016 年1月 4 日

1.设计目的: (1)掌握USB总线或PCI总线的基本结构,了解基于USB总线或PCI总线A/D卡的通用结构; (2)掌握数据采集卡采集数据的过程和原理; (3)了解MATLAB的信号处理技术; (4)掌握MATLAB 实现音频信号的读取、保存、拼接与频谱分析。 2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等): (1)查阅相关资料,撰写关于基于USB总线或PCI总线A/D卡的报告; (2)采用A/D卡采集信号发生器产生的信号; (3)采用MATLAB读取两个以上音频信号,截取各信号中的一段进行拼接,并进行频谱分析,并讨论不同的采样频率对频谱的影响; (4)保存拼接后的音频信号,并进行播放证实存储的正确性,同时对拼接后的信号进行频谱分析,并与原有信号的频谱作对比; (5)要求3位同学完成。 3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、实物样品等〕: (1)要求设计组的每个成员都要了解设计的要求和思路; (2)MATLAB数据处理部分要求有正确的运行结果及结果分析; (3)数据处理部分要求每位同学有自己的理解; (4)每位同学针对上述内容撰写设计说明书(每人1份)。

LED音乐频谱设计与制作

LED音乐频谱设计与制作 摘要:电子信息技术几乎主宰了整个电器行业的发展,随着电子技术的进步发展在功率放大器的设计上功能也不断更新。功率放大器在家电、数码产品中的应用也越来越广泛,与我们日常生活有着密切关系。随着生活水平的提高,人们越来越注重视觉,音质的享受。音频频谱显示器不但能够直观的显示信号输入的状况,而且在美学方面给予人好的视觉享受和,在某一方面来说频谱显示器赋予了音乐的动态美,让原本抽象的电信号,具体化,实质化。 本文通过使用单片机和数字信号处理技术,实现了单片机控制的音乐频谱显示系统。系统分为,声音采集单元,声音处理单元和显示单元。其中声音采集单元包括声音接收和 A/D 转换系统。声音接收单元接收到的音频模拟信号,经过 A/D 转换为数字信号,送给下一级处理单元处理。声音处理单元采用C52单片机进行快速傅立叶变换处理。显示单元接收处理后的信号,控制16*16LED板进行显示。软件方面使用单片机进行DFT,从而判断出该时间段音频信号的主谱,跟随着音乐节拍和强弱的变化来控制LED亮度和暗灭的实时变化,实现音乐的频谱分析并加以灯光显示。 关键字:单片机功率放大器 A/D转换快速傅立叶变换

LED Design and Production of the Music Spectrum Abstract:Electronic information technology has occupied almost the entire appliance industry, with the advances and development of electronic technology on the design of power amplifier features are constantly updated. Closely related to our daily life, power amplifiers in applications of home appliances and digital products are increasingly widespread. With the improvement of living standards, there is a growing emphasis on visual and audio enjoyment. Audio spectrum display can not only show the situation of the signal input but also bring people a perfect visual enjoyment in aspect of aesthetics. In other words, audio spectrum displays are endowed with musical beauty of dynamic, which make abstract electric signal to be reification and substantiation. This paper discusses that using the single-chip and digital signal processing technology could make music spectrum display system controlled by single-chip microcomputer possible. The system is divided into voice acquisition unit, the voice processing unit and display unit. V oice acquisition unit includes the sonic receiving and A/D conversion system. The audio analog signal which is received by sonic receiver unit is transformed by A/D conversion system to be a digital signal and, after that, is sent to the next level of processing. V oice processing unit takes C52 single-chip microcomputer for Fast Fourier Transform Algorithm processing. Display unit receives the final signal to display by controlling 16*16 LED Display Board. In the aspect of software, take the single-chip microcomputer to have DFT, in order to determine the main audio signal spectrum during this period and to control the real time changes of LED brightness and antique with the music beats and the strength, which can make the music spectrum analysis and light show possible. Keywords: SCM singlechip power amplifier A/D conversion Fast Fourier Transform Algorithm

音频信号频谱分析MATLAB

[y,Fs,bits]=wavread('DSP(1213)_A.wav'); % read sound file N=round(5.56/0.001); % set the order of the filter %F1=0.07; F2=0.29; %óéD?o?DSP(1213)_C.wavμ??μ?ê3é·??¨500-2000%wp=fp/(Fs/2); Fs=14000 %F1=0.10;F2=0.38; %êêóúDSP(1213)_B.wav òò?a??D?o?μ??μ?ê′ó???a600?a?a2300 Fs=12000 F1=0.12;F2=0.33;%êêóúDSP(1213)_A.wav òò?a??D?o?μ??μ?ê′ó???a700?a?a1900/19 Fs=11250 b=fir1(N,[F1,F2],blackman(N+1)); % using blackman window to implement FIR filter %b=fir1(N,[F1,F2],hanning(N+1)); Y=filter(b,1,y); % output te signal after filtering %freqz(b,1,512,Fs); figure freqz(b,1);%normalized frequency title('the filter response(magnitude and Phase)without using scaling factor after using blackman window'); %title('the filter response(magnitude and Phase)without using scaling factor');%after using blackman window'); t=(0:length(y)-1)/Fs; figure; subplot(2,1,1); plot(t,y); % plot original signal in time domain title('Input signal in time domain'); xlabel('Time(second)'); ylabel('Magnitude'); subplot(2,1,2); plot(t,Y); % plot output signal in time domain title('Output signal in time domain'); xlabel('Time(second)'); ylabel('Magnitude'); figure; fft_y=fft(y); fft_Y=fft(Y); f=Fs*(0:length(y)-1)/length(y); subplot(2,1,1); plot(f,20*log10(abs(fft_y(1:length(y))))); % plot original signal in frequency domain %plot(f,abs(fft_y(1:length(y)))); title('Input signal in frequency domain'); xlabel('Frequency(Hz)'); ylabel('Amplitude(dB)'); subplot(2,1,2); plot(f,20*log10(abs(fft_Y(1:length(y))))); % plot output signal in frequency domain %plot(f,abs(fft_Y(1:length(y)))); title('Output signal in frequency domain'); xlabel('Frequency(Hz)'); ylabel('Amplitude(dB)');

相关文档
相关文档 最新文档