当前位置:文档之家› 音频信号分析仪设计

音频信号分析仪设计

音频信号分析仪设计学院:电子信息学院专业:电子信息工程姓名:学号:指导老师:摘要本音频信号分析仪由STM32为主控制器,通过AD转换,对音频信号进行采样,把连续信号离散化,然后通过FFT快速傅氏变换运算,在时域和频域对音频信号各个频率分量以及功率等指标进行分析和处理,然后通过高分辨率的LCD对信号的频谱进行显示。

该系统能够精确测量的音频信号频率范围为20Hz-10KHz,其幅度范围为50mVpp-5Vpp,分辨力分为20Hz和100Hz两档。

测量功率精确度高达5%,并且能够准确的测量周期信号的周期,是理想的音频信号分析仪的解决方案。

关键词:FFT STM32 音频信号分析AbstractThe audio signal analyzer is based on a STM32 microprocessor, through the AD converter for audio signal sampling, the continuous signal discrete, and then through the FFT fast Fourier transform computing, in the time domain and frequency domain of the various audio frequency signal weight and power, and other indicators for analysis and processing, and then through the high-resolution LCD display signals in the spectrum. The system can accurately measure the audio signal frequency range of 20 Hz-10KHz, the range of 50mVpp-5Vpp,resolution of 20 Hz and 100 Hz correspondent. Power measurement accuracy up to5%, and be able to accurately measuring the periodic signal cycle is the ideal audio signal analyzer solution.Key words:FFT STM32 audio signal analyzing目录一、系统设计方案与论证 (1)1.1 系统总体设计 (1)1.2 CPU的选择 (1)1.3 前端信号调理电路 (2)1.4 AD转换模块 (2)1.5 LCD液晶显示模块 (2)二、硬件设计 (2)2.1 阻抗匹配电路 (2)2.2 峰值检测电路 (3)2.3 电压抬高电路 (4)2.4 可变增益放大电路 (4)2.5 低通滤波电路 (6)三、软件设计 (6)3.1 FFT程序 (7)3.2 功率谱测量方法 (8)3.3 周期性判断方法 (9)3.4 ADC采样程序 (9)3.5 LCD显示程序 (10)四、系统调试 (10)4.1 硬件调试 (10)4.2 软件调试 (13)4.3 总体调试 (14)五、测试结果 (15)六、总结 (16)附录 (16)参考文献 (20)一、系统设计方案与论证1.1 系统总体设计总体设计思路:信号经过电压跟随器后进入峰值检测然后经过两个电压比较器把输入信号分2段,然后分别进入不同的增益放大电路进行放大,经过电压抬升后进入ADC进行采样,然后利用STM32进行软件编程来进行FFT计算,判断是否为周期信号,求出输入信号的频率、功率、频谱等,然后在同步显示在液晶屏上。

总体设计框图如下:图1-1 系统总体框图1.2CPU的选择本设计中MCU使用的CPU是STM32F103xx增强型系列。

STM32系列微控制器是由ST意法半导体公司一ARM Cortex-M3为内核开发生产的32位微控制器(单片机),专为高性能、低成本、低功耗的嵌入式应用专门设计。

工作频率为72MHz,内置高速存储器(最高可达512K字节的内存和64K字节的SRAM),可以用于存储程序和节点在工作过程中采集到的数据。

具有丰富的增强型I/O端口和连接到两条高性能外设总线(Advanced Peripheral Bus,APB)的外设。

该系列单片机还内置了快速的中断控制器,使得中断间的延迟时间大大降低。

因此系统设计中选用STM32F103微处理器拥有如下如下优点:7组16位GPIO口、5组USART串口、多个外部中断口;外设包含多个定时器、SPI通信口、FSMC液晶控制口、12位ADC转换口;最大功耗118mW,待机功耗7uW,属于高性能低功耗微处理器。

1.3 前端信号调理电路由于设计指标要求输入阻抗为50欧姆,所以在前端电路信号输入处加了一个跟随电路,利用一个50欧姆的电阻与一运放的输入端并联,满足50欧姆输入阻抗的要求,在选择运放方面,可选择带宽增益积较高、输入失调电压较小比较适合音频信号的NE5532。

直接利用运放电路来搭建各种增益放大电路,利用比较器和继电器来选择不同的信号的不同放大倍数,可以满足要求,电路元件较小且较容易控制,实现了小信号大增益,大信号小增益。

音频信号的频率范围是20Hz 到10KHz,为了有效的滤除各种干扰信号,可加入一个10KHz的低通滤波器,利用OP07及其外围元件设计一种有源低通滤波器。

1.4AD转换模块STM32F10XXX微控制器产品系列,内置最多3个先进的12位A/D转换模块,转换时间最快为1us,这个ADC模块还具有自校验功能,能够在环境条件变换时提高转换精度。

ADC基本参数为12位分辨;输入范围0至3.6V。

完全可以满足本次设计的需要。

1.5 LCD液晶显示模块采用3.2寸TFT模块ILI9320,具有8080时序16bit并行总线接口,分辨率320乘以240,显示面板16M色彩。

具有很高的稳定性。

二、硬件设计2.1阻抗匹配电路在NE5532的同相端,也即信号输入端并联一50欧姆的电阻,满足50欧姆的输入阻抗。

图2-1 阻抗匹配电路图2-2 阻抗匹配电路仿真结果2.2峰值检测电路为了很好的实现不同信号的不同放大倍数,在比较电路前加了一峰值检测电路,如图所示,利用的是二极管的单向导电性和电容的充放电特性来检测并保持峰值的。

当输入信号大于二极管的导通电压时,二极管导通给电容充电,当信号达最大后开始变小时,利用电容的电压不突变特性保持峰值且输出到后级电路,利用场效应管和三极管电路在一定时间内释放掉所保持的峰值,接着检测随后的峰值。

图2-3 峰值检测电路图2-4 峰值检测电路仿真结果2.3 电压抬高电路由于STM32的ADC负参考电压为0,故需将电压抬升到0以上,该电路实现了1.5V的电压抬升。

图2-5 电压抬高电路2.4 可变增益放大电路放大电路同时设置了×5,×0.5两个放大通道,分别对50mv到300mv,300mv 到5V的峰峰值范围内的信号进行不同放大,这样将可测量信号的动态范围扩展到了50mV;控制器通过继电器来选择不同的放大通道。

图2-6 5倍放大电路及仿真结果图2-7 0.5倍放大电路及仿真结果2.5 低通滤波电路本滤波电路的截止频率为10KHz。

图2-8 低通滤波电路图2-8 低通滤波电路仿真结果三、软件设计在本设计中,控制及计算部分都由STM32来实现。

其中STM32完成液晶显示、FFT算法实现、功率计算、A/D 转换控制,增益选择控制等,系统流程图如下:图3-1 程序流程图3.1 FFT 程序采用FFT 实现采集的音频信号频域分析,得到音频信号中各频率分量的大小。

FFT 运算主要分为位倒置和蝶形运算两个功能部分。

其中位倒置程序流程如图3-2。

蝶形运算设计:由X1(k)、X 2(k)表示X(k)的运算是一种特殊的运算-碟形运算{)()()()()()(2121k X W k X k X k X W k X k X k N k N -=+=实现上式运算的流图称作蝶形运算(N/2个蝶形)。

由上式可以看出蝶形运算主要是系数k N W 的确定。

而第L 级的系数因子为(L=1,2,3...,M )。

图3-2 位倒置程序流程图J L W 2,(J=0,1,2,...,121--L )即第L 级的蝶形运算系数因子类型数为12-L 个。

设系统共有M 级,可得L M MML M LJ JJWWW--==2*22*22即有M N 2=,L M J k -=2*。

3.2 功率谱测量方法本设计采用直接的经典功率谱估计法:它是把抽样序列)(n x 的N 个观测数据视为一能量有限的序列,直接计算)(n x 的离散傅立叶变换,得)(k X ,然后再取其幅值的平方,并除以N ,作为序列)(n x 真实功率谱的估计。

有限长序列的傅立叶变换定义为: 正变换:∑-=--==1021,...,1,0,)()(N n nk Nj N k en x k X π (1)反变换:∑-=-==121,...,1,0,)(1)(N n nk N j N k e k X N n x π(2)根据Parseval 定理:一个序列在时域计算的能量与在频域计算的能量是相等的。

即:∑∑-=-==10212|)(|1|)(|N k N n k X N n x ,可得到各个频谱对应的功率与在时域测量功率之间的关系。

⎰-=222)(1)(TT dt t f T t v ⎰⎰--+++==22222221122]sin sin sin [1)(1)(T T TT n n dt t u t u t u T dt t f T t v ωωω T u u uT n ]222[122221+++= 222112)(2n u u u t v ++=∴式中,)(t v 为信号的有效值,n u u u ,,21 为各频点的幅值。

3.3 周期性判断方法信号周期性的判断可利用周期信号所具有的自相关特征。

假设采样所得的时间序列N i T i x i x s 2,1),()(=⋅=,其中s T 为采样周期,利用一长为n 的滑窗来计算该采样序列的结构函数)(n F ,即式中,max 1n n ≤≤,n N M -=,一般取5/max N n ≈,以保证上式中即使在max n n =时,也有较多的数据差值求平均。

)(n F 可以用来表征时间间隔为s nT 的两个时间点处信号的相似性。

假设时间序列是周期性的,其周期s p T n T ⋅=。

当p n n =或p n 的整数倍时,0)(=n F ;即使信号被噪声污染,0)(≠n F ,但在一定的信噪比范围内,在pn n =处,)(n F 仍然会取得最小值,从而也可识别信号的周期性并测量其周期。

相关主题