基于单片机的音频信号分析仪的设计王 平,江华丽,王 毅,郑孔华(福建师范大学物理与光电信息科技学院 福建福州 350007)摘 要:着重介绍音频信号分析仪的软硬件结构、特征及其工作原理,设计采用DSP IC30F 6014A 单片机为主控制器,基于A /D 转换和快速傅里叶变换方法对采集的音频信号进行频谱分析,能检测20Hz~10kH z,100mV ~5V 的音频输入信号,频率分辨率达到20H z,检测出的各频率分量的功率之和不小于总功率值的95%,单个频率功率误差小于10%,因此在嵌入式系统方面具有较好的应用价值。
关键词:音频信号;DSP;FF T ;DSP IC30F 6014A中图分类号:T H89 文献标识码:A 文章编号:1004-373X(2009)19-122-03Design of Audio Frequency Analyzer Based on Single Chip ComputerWA N G P ing ,JIA N G H uali,WA N G Y i,ZH EN G K o ng hua(Scho ol o f P hy si cs and Optoelect ronics T echno log y,F ujian No rm al University,Fuzho u,350007,China)Abstract :T he audio frequency analyzer c s so ftwa re and hardwar e str ucture,the character istics and the principle of wo rk are intr oduced.T his design uses DSPIC30F6014A mo no lit hic integ rat ed circuit as the contr oller,it bases on the A /D transfor -mat ion and FF T tr ansfo rmatio n to analyze the audio frequency signal,w hich can examine 20Hz~10kH z and 100mV ~5V audio frequency input sig na l,f requency dist ing uish can reach to 20H z,the var ious fr equency co mpo nent's sum of pow er is not smaller than the to tal perfo rmance 95%,the sing le fr equency pow er er ror is smaller than 10%,ther efor e it has g ood aspect in the embedded sy st em c s application.Keywords :audio frequency sig nal;DSP ;F FT ;DSPIC30F6014A收稿日期:2009-04-21基金项目:福建省科技厅/基于嵌入式的网络便携式终端的研究0(2007F5039)0 引 言目前,大多数音频信号处理仪不但体积大而且价格贵,在一些特殊方面难以普及使用,而嵌入式系统分析仪具有小巧可靠的特点,所以开发基于特殊功能单片机的音频分析仪器是语音识别的基础,具有很好的现实意义。
信号分析原理是将信号从时间域转换成频率域,使原始信号中不明显特性变得明显,便于分析处理。
对于音频信号来说,其主要特征参数为幅度谱、功率谱。
该音频信号分析仪的工作过程为:对音频信号限幅放大、模数转换、快速傅里叶变换(FFT ,时域到频域的转换)、特征值提取;从到音频信号的幅度谱,进而得到音频信号的功率谱[1]。
1 硬件设计/智能家居0(Smart H ome)也称智能住宅。
家居网络智能控制系统就是利用先进的计算机技术、通讯技术和嵌入式技术,将家中的各种设备通过家庭网络连接成系统。
整个智能家居系统的构成如图1所示。
在该系统中,对于某些家用电器设备的监测与控制需要进行音频信号的分析[2]。
图1 智能家居系统框图本设计选用Microchip 公司的DSPIC30F6014A 单片机为核心处理器,该芯片是MCU 技术与DSP 技术的结合,既包含了16位MCU 的控制功能,又融合了DSP 的高速运算技术,实际上就是数字微处理器、可方便地实现音频信号分析的各种功能。
音频系统框图如图2所示,包括电源模块、预制电路、A/D 转换模块、DSP 模块、LCD 显示模块等几个部分。
各模块以及接口的具体设计和实现功能如下:122自动化技术王 平等:基于单片机的音频信号分析仪的设计(1)电源模块:采用直流三端稳压电源设计,220V 交流电经降压、整流、滤波和稳压后,转换成系统需要的?5V 、?12V 电源电压。
(2)预制电路:为保证输入频宽在音频范围,前端直流偏置电路采用OP07放大器,第一级的加法器将输入信号与2.5V 电压值相加,第二级的反相器将信号转移到A/D 转换能处理的0~5V 范围。
因输入端508电阻的接地,故系统输入阻抗近似为508[3]。
(3)A/D 转换模块:因为音频信号的输入只有一路,所以在12位可配置的A/D 模块的16个模拟输入引脚中只用到AN6,初始化时,将该引脚配置为模拟输入引脚,同时,因为处理后的音频信号电压为0~5V,将A/D 模块的参考电压设置为0V,5V 。
转换输出速率高达200KSPS [4]。
(4)DSP 模块:该数字微处理器是改良的哈佛结构设计,可实时分析,具有很高的分辨率。
通过M icrochip 公司的M PLAB C30C 编译器调用DSP 模块,该编译器中提供49个DSP 处理函数,可以完成全部的数字信号处理[5]。
(5)LCD 显示模块:用于直观显示频谱波形。
(6)ICD2调试接口:选用M icrochip 公司的ICD2在线调试器,为此预留了ICD2调试接口[6]。
(7)RC 振荡器:此单片机可工作在外部时钟输入、外部RC 输入、内部快速RC 振荡器、内部低功耗(RC)振荡器四种模式,以及在低功耗时使用的后分频器。
本设计采用内部快速RC 振荡器,它能提供7.37MH z 的时钟,由于要实现对音频信号实时处理,所以没有用到后分频器[7]。
图2 音频系统框图2 软件设计音频系统主循环如图3所示。
(1)经过采样、A/D 转换完成后,清除A/D 使能标志,得到离散化的数字信号。
(2)调用周期判定函数,实现对信号周期性的分析。
(3)调用FFT 变换函数,对离散信号的快速傅里叶变换,实现时域到频域的变换。
(4)显示输入信号的频谱。
(5)计算信号的功率谱及计算最大功率。
(6)显示信号的功率谱及最大功率。
图3 主程序流程图2.1 A/D 采样理论分析:因12位的A/D 模块,故量化单位为1/212,因频率分辨率$f =100H z 、FFT 的子样本点数N =512,故采样频率f s =51200H z(f s [N $f )、采样周期T s =1/51200s (采样周期=采样时间+转换时间)。
因振荡频率为7.37MH z,故指令周期T CY =(1/7.37)@4=0.5L s 。
实际控制:转换时间为14个T AD (为正确A/D 转换,T A D =333.33ns)。
所以,配置A/D 自动采样时间为6个T AD ,A/D 转换时钟为16T CY ,则A/D 转换总时间为0.092m s,采样频率为10.87kH z 。
A/D 模块工作在系统时钟源、自动转换模式,每完成一次转换进入一次中断。
在程序中应该定义一个采样点数的结构体,用于存放A/D 采集到的数据,每个结构体内包括一个实部和一个虚部。
在中断服务子程序中,由A/D 模块采集到的数字量存储到结构体的实部,共进行采样点数次转换,中断服务子程序的流程如图4所示。
图4 A /D 中断服务子程序流程图2.2 周期判定音频信号的频率分量不但多,而且不具周期性。
测1235现代电子技术62009年第19期总第306期þ测试#测量#自动化ü量周期可以在时域也可以在频域,但是由于频域测量周期性时要求某些频率点具有由规律的零点或接近零点出现,所以对于较为复杂的、频率分量较多且功率分布较均匀且低的信号就无法正确地分析其周期性。
因此,对于信号的周期性判定,应该在对信号进行FFT 变换之前,直接调用周期判断函数[8]。
周期性判定子程序流程图如图5所示。
图5 周期性判定子函数流程图2.3 FFT 变换由于直接傅里叶变换的计算量与子样本点数N 的平方成正比,在N 较大时,计算量太大,不适合在资源有限的嵌入式系统中实现。
所以最常用基2FFT 算法,其主要思想是将N 点直接傅里叶变换分解成多个较短的直接傅里叶变换,再利用旋转因子的周期性、对称性,在很大程度上节省了系统资源。
MPLAB C30C 编译器内部提供了几乎全部的数字信号处理软件工具,通过DSPIC30F 系列微处理器[9],只需调用M icrochip 公司提供的库函数,即可方便的实现数字信号处理。
对于基2FFT 变换来说,其软件流程图如图6所示。
图6 FF T 变换软件流程图2.4 特征值提取对频域分析起决定作用的量包括采样频率、采样点数。
通过FFT [10]变换,得到离散化的幅度谱X (k),先将离散化的幅度值平方,再除于子样本点数N,就可得到该频率点对应的功率值(功率=X (k)*X (k)/N )。
3 结 语系统的主要性能指标为:输入阻抗508;输入信号电压范围(峰-峰值)100mV ~5V;输入信号包含的频率成分范围为200H z~10kH z;频率分辨力为100Hz (可正确测量被测信号中,频差不小于100H z 的频率分量的功率值);输入信号的总功率和各频率分量的功率,检测出的各频率分量的功率之和不小于总功率值的95%;各频率分量功率测量的相对误差的绝对值小于10%,总功率测量的相对误差的绝对值小于5%;以5s 周期刷新分析数据,信号各频率分量应按功率大小依次存储并可回放显示,同时实时显示信号总功率和至少前两个频率分量的频率值和功率值,并设暂停键保持显示的数据。
基于DSP 单片机技术的音频信号分析具有性能稳定、电路简单、速度快、成本低、体积小的特点,适用于需要音频信号分析的嵌入式系统中,可以在更多领域进一步推广和应用,如环境监测、语音识别、智能系统的控制等。
参 考 文 献[1]胡航.语音信号处理[M ].哈尔滨:哈尔滨工业大学出版社,2000.[2]王平,程明传.嵌入式无线家庭网关的设计与实现[J].微计算机应用,2008,24(29):53-56.[3]夏宇闻.V erilo g 数字系统设计教程[M ].北京:北京航空航天大学出版社,2003.[4]谢自美.电子线路设计#实验#测试[M ].2版.武汉:华中科技大学出版社,2000.[5]刘文波,张弓.混沌信号中隐含周期信号的一种识别方法[J].雷达与对抗,2001(1):46-49.[6]杨素行.模拟电子技术基础简明教程[M ].北京:高等教育出版社,2006.[7]何立民.单片机高级教程[M ].北京:北京航空航天大学出版社,2001.[8]丁玉美,高西全.数字信号处理[M ].2版.西安:西安电子科技大学出版社,2006.[9]代红权,陈海燕.基于M at lab 的大学物理实验数据处理系统[J].重庆工学院学报:自然科学版,2007,21(3):32-34.[10]梅海清,冯毅.数字变频FF T 在频谱分析中的应用[J].石油化工自动化,2003(1):57-58.作者简介 王 平 男,高级工程师,硕士生导师,省电子学会理事。