音频信号分析仪毕业设计论文资料-论文

合集下载

音频信号分析仪

音频信号分析仪

音频信号分析仪本系统基于离散傅立叶变换原理,以单片机和FGPA为控制核心,在FPGA内部完成了2048点浮点型FFT,能准确判断频率成分在20Hz~10kHz、幅值范围在0.1mV~10V的输入信号的功率谱及其总功率,频率分辨力最高可达10Hz。

利用相关原理准确检测信号的周期性并测量其周期,达到了较高的性能指标。

AbstractThe system,mainly controlled by the Single-Chip Microcomputer and FPGA,is based on discrete Fourier transform theory.This design ,which implements 2048 floating point FFT algorithm in FPGA,can accurately detect the power spectrum and the total power of the input signal whose frequency components raging from 20Hz to 10kHz,amplitude raging from 0.1mV to 10V. Frequency resolution reaches up to 10 ing correlation theory ,the system detects the periodicity of the input signal and measures the period of the periodic signal.一、方案论证与选择题目要求设计制作一台可分析音频信号频率成分并可测量正弦信号失真度的仪器。

该仪器能够检测的输入信号的范围(峰峰值)为100mV 5V,可进一步扩展输入信号的动态范围。

对输入信号进行频率和功率的检测,其中对信号频率的分辨力为100Hz,可扩展至20Hz。

音频信号分析仪毕业论文

音频信号分析仪毕业论文
4. 4功率计算11
4.5 周期计算12
4 系统调试12
5.1总硬件焊接图12
5.2电压跟随电路7
5.3程控放大电路8
5.4峰值检测电路8
5.5电压抬升电路18
5.6液晶屏显示图13
5.7测试结果14
5 总结15
参考文献15
附录1:元器件明细表和仪器设备清单15
附录2:FFT程序15
附录3:周期计算程序17
音频信号分析仪利用频谱分析原理来分析被测信号的频率、频谱及波形。常用的频谱分析方法有:扫频法、数字滤波法、FFT法。这里提出一种基于FFT方法的音频信号分析仪设计方案,通过快速傅里叶变换(FFT)把被测的音频信号由时域信号转换为频域信号,将其分解成分立的频率分量,在此基础上对其进行各种分析,达到与传统频谱分析仪同样效果。该系统设计可应用于音频制作、信号分析等领域,具有一定的科学价值和实用价值。
音频信号分析仪
指导老师:邓晶
年纪专业:11信息工程
成员: 丽梅(1128401039)
东飞(1128401014)
罗兰(1128401128)
日期:2014年6月
摘 要:本音频信号分析仪基于快速傅里叶变换的原理,以32位CPU STM32构成的最小系统为控制核心,由电压跟随、程控放大、峰值检测、抗混叠滤波等模块组成。本音频信号分析仪由STM32控制,通过AD转换,对音频信号进行采样,把连续信号离散化,然后通过FFT运算,对音频信号各个频率分量以及功率等指标进行分析和处理,然后通过高分辨率的LCD对信号的频谱进行显示。该系统能够精确测量的音频信号频率围为50Hz-10KHz,其幅度围为5mVpp-5Vpp,分辨力为50Hz。
关键词:FFT 嵌入式系统 前级信号处理 功率谱

[论文]语音信号分析课程设计报告-语音信号处理系统设计

[论文]语音信号分析课程设计报告-语音信号处理系统设计

信号与线性系统课程设计报告课题三语音信号处理系统设计班级:姓名:学号:成绩:指导教师:日期:目录摘要---------------------------------------------------------------------------------------------- 2关键词 ------------------------------------------------------------------------------------------- 2 1课程设计的目的、意义----------------------------------------------------------------- 3 2设计任务及技术指标 -------------------------------------------------------------------- 3 3 设计方案论证 ----------------------------------------------------------------------------- 3 3.1 设计理论依据----------------------------------------------------------------------------------- 33.1.1 采样定理 -------------------------------------------------------------------------------- 33.1.2 采样频率 -------------------------------------------------------------------------------- 33.1.3 采样位数与采样频率 ---------------------------------------------------------------- 4 3.2 语音信号的分析及处理方法 --------------------------------------------------------------- 43.2.1 语音的录入与打开 ------------------------------------------------------------------- 43.2.2 时域信号的FFT分析 ---------------------------------------------------------------- 43.2.3 滤波器设计 ----------------------------------------------------------------------------- 53.2.4 IIR滤波器与FIR滤波器的性能比较---------------------------------------------- 73.2.5语音信号特征参数提取-------------------------------------------------------------- 74 设计内容------------------------------------------------------------------------------------ 8 4.1语音信号分析 ----------------------------------------------------------------------------------- 84.1.1 原始语音信号分析 ------------------------------------------------------------------- 84.1.2对原始信号重采样并回放----------------------------------------------------------- 94.1.3对原始信号加入干扰噪声并分析----------------------------------------------- 114.1.4滤波器设计及其特性分析--------------------------------------------------------- 124.1.5对带噪信号滤波并分析------------------------------------------------------------ 13 4.2 图形用户界面--------------------------------------------------------------------------------- 154.2.1图形用户界面概念 ------------------------------------------------------------------ 154.2.2图形用户界面设计 ------------------------------------------------------------------ 154.2.3图形用户界面制作 ------------------------------------------------------------------ 154.2.4图形用户界面的设计程序--------------------------------------------------------- 16 4.3 对语音信号部分时域参数计算 ---------------------------------------------------------- 234.3.1对语音信号进行分帧 --------------------------------------------------------------- 234.3.2计算语音信号的短时能量--------------------------------------------------------- 244.3.3计算语音信号的短时平均过零率----------------------------------------------- 254.3.4计算语音信号的短时自相关函数----------------------------------------------- 265 实验结果与分析 ------------------------------------------------------------------------- 276 总结----------------------------------------------------------------------------------------- 28参考文献 -------------------------------------------------------------------------------------- 28课题三语音信号处理系统设计摘要:数字信号处理是将信号以数字方式表示并处理的理论和技术。

基于声卡的音频信号分析仪的设计

基于声卡的音频信号分析仪的设计

基于声卡的音频信号分析仪的设计————————————————————————————————作者:————————————————————————————————日期:2an基于声卡的音频信号分析仪的设计摘要本文主要介绍如何用普通的计算机声卡代替商用数据采集卡,利用声卡的DSP技术和LabVIEW的多线程技术实现音频信号的数据采集,开发基于PC机声卡的虚拟音频信号分析仪.该系统能够正确采集声卡设计频率范围内的信号,实现音频信号时域分析和频谱分析功能.关键词声卡数据采集信号分析LabVIEW- I -A general audio classifier based on human perception motivated modelAbstractThe audio channel conveys rich clues for content—based multimedia indexing。

Interesting audio analysis includes, besides widely known speech recognition and speaker identification problems,speech/music segmentation, speaker gender detection,special effect recognition such as gun shots or car pursuit, and so on。

All these problems can be considered as an audio classification problem which needs to generate a label from low audio signal analysis。

While most audio analysis techniques in the literature are problem specific,we propose in this paper a general framework for audio classification。

多媒体音频信号分析与处理论文素材

多媒体音频信号分析与处理论文素材

多媒体音频信号分析与处理论文素材多媒体音频信号分析与处理多媒体音频信号分析与处理是近年来受到广泛研究和应用的领域之一。

音频信号处理是指对音频信号进行采集、变换、分析和处理的过程,旨在提取音频中的有用信息,改善音质并满足特定的应用需求。

本文将介绍多媒体音频信号的特点、分析方法以及常见的音频处理技术。

一、多媒体音频信号的特点多媒体音频信号是指通过麦克风等设备采集的声音信号,其特点在于具有时域和频域两个方面的特征。

在时域上,音频信号可表示为一个连续的波形,用于描述声音的变化过程;在频域上,音频信号可通过傅里叶变换将时域波形转换为频谱图,用于表示声音在不同频率上的能量分布。

同时,音频信号还具有高度的时变性和非线性特性,这使得音频信号的分析和处理更加复杂。

二、音频信号分析方法为了从音频信号中提取有用信息,需要对其进行分析。

常见的音频信号分析方法包括时域分析和频域分析。

1. 时域分析时域分析是通过对音频信号的波形进行观察和分析来了解音频信号的特征。

常用的时域分析方法包括:(1)波形显示:将音频信号的波形通过图像显示出来,直观地展示声音的振幅和波动情况;(2)能量分析:通过计算音频信号的能量,分析音频信号的强弱;(3)自相关分析:通过计算音频信号与其自身的相关性,了解音频信号的周期性和重复性。

2. 频域分析频域分析是通过将音频信号转换为频谱图,进而观察和分析音频信号的频率成分。

常用的频域分析方法包括:(1)傅里叶变换:将音频信号从时域转换为频域,得到音频信号的频谱图;(2)谱分析:通过对音频信号频谱图的分析,了解音频信号在不同频率上的能量分布;(3)频谱修复:通过基于频域的滤波技术,对音频信号的频率成分进行调整和修复。

三、音频信号处理技术音频信号处理技术旨在改善音频的音质和实现特定的应用需求。

常见的音频处理技术包括去噪、音频增强和音频编码等。

1. 去噪音频信号通常会受到环境噪声的干扰,影响音频的清晰度和可听性。

音频信号分析仪_范文

音频信号分析仪_范文

题目:音频信号分析仪(A题)作者:信鹏皓张玉霞邓杰辅导教师:王淑娟老师一、总体方案设计1.1 主处理器选择根据题目要求,需分析音频信号频率成分并可测量正弦信号失真度,很显然需要研究信号的频域特性。

在进行频域分析之前,必须使用AD采集一段离散的信号序列作为频域分析的原始数据,离散傅里叶变换(DF T)是分析离散周期序列的主要手段。

因此,可以采用数据采集及处理的方法分析信号的频率成分。

由于DF T计算过程需要完成大量的乘法和加法操作,而且随着采样点数的增加成指数性增长,尽管可以通过快速傅里叶变换(F F T)减少计算量,但其复杂程度对于普通微处理而言仍然相当可观。

因此本设计的关键是选择合适的微处理器作为系统的控制和处理芯片。

普通单片机、ARM、DS P都可完成此功能,其各项功能比较如表一所示。

表一三种微处理器的比较从上表可以看出,普通单片机最大缺点是其运行速度慢,完成FF T计算需花费较长时间;而DS P的开发周期较长,价格较贵。

因此,最终选择各项指标都比较均衡的ARM作为系统的主处理器。

1.2 总体方案设计选择ARM为主处理器后,设计系统总体框图如图1所示。

其中,程控放大器能够根据输入信号的幅值动态调节放大倍数以次提高系统灵敏度;滞回比较和过零比较电路用于将被测信号整形为标准的脉冲信号,用于主控器测量频率或周期。

图1 系统总体框图二、理论分析与计算2.1 放大器的设计(1) 输入信号先经过跟随放大器以保证输入阻抗50欧姆。

(2) 为了对不同幅值的信号进行功率测量分析,对信号进行不同倍数的放大。

我们利用模拟开关把运算放大器的放大倍数设计为150倍,15倍和1倍三档。

其放大倍数利用软件来控制。

(3) 为了对不同幅值的信号进行频率测量分析,将通过跟随放大器的输出信号放大一定的倍数,再经过一系列整形得到ARM 需要的信号。

2.2 周期性测量方法利用ARM 对整形后的波形信号进行计时采样,通过定时100毫秒ARM 捕捉到的上升沿个数即可测得此信号的频率,取频率的倒数就是周期。

基于DSP的音频信号分析仪的设计毕业论文基于TMS320C5402的音频信号分析仪的设计及实现

基于DSP的音频信号分析仪的设计毕业论文基于TMS320C5402的音频信号分析仪的设计及实现

目录前言 (1)第一章系统描述 (3)§1.1 系统方案选择 (3)§1.1.1 系统总体方案选择 (3)§1.1.2 各模块的方案选择 (6)§1.2 总体方案描述 (6)第二章信号频谱分析仪的硬件设计 (7)§2.1 DSP芯片 (8)§2.1.1 DSP芯片特点 (8)§2.1.2 电路设计时应注意的问题 (10)§2.2 串行口McBSP (11)§2.2.1 McBSP简介 (11)§2.2.2 McBSP的作用 (12)§2.3 主机接口HPI (13)§2.3.1 主机接口的传统解决方案 (13)§2.3.2 HPI的简介 (14)§2.3.3 HPI作用 (15)第三章信号频谱分析仪的外设 (17)§3.1 89c51芯片 (17)§3.1.1 89c51简介 (17)§3.1.2 89c51的控制作用 (20)§3.2 A/D转换电路 (21)§3.3 串口描述 (22)第四章信号频谱分析仪设计的算法 (25)§4.1 FFT算法简介 (25)§4.2 快速傅里叶变换的原理 (25)§4.3 功率谱测量方法 (28)§4.4 采样参数的选择 (29)第五章系统软件设计 (31)§5.1 DSP程序设计 (31)§5.1.1 芯片选择 (31)§5.1.2FFT算法设计 (31)§5.2 单片机程序设计 (32)第六章系统调试 (34)§6.1 Keil调试程序 (34)§6.1.1 Keill 软件简介 (34)§6.1.2 Keil C51开发系统基本知识 (35)§6.1.3 Keil C51软件的使用方法 (35)§6.2 集成开发环境CCS (36)§6.2.1 CCS概述 (36)§6.2.2 用CCS制作下载程序文件 (37)§6.3 调试环境与测试结果 (42)§6.3.1 DSP程序转化为单片机程序 (42)§6.3.2 运行结果 (43)结论 (44)参考文献 (45)致谢 (46)附录 (47)附录1 DSK5402开发板 (47)附录2 DSP开发板原理图 (48)外文资料翻译 (49)基于TMS320C5402的音频信号分析仪的设计及实现摘要随着DSP技术的普及,DSP已越来越广泛地被应用于各个领域,例如:语音处理、图像处理、模式识别及工业控制等,并且日益显示出其巨大的优越性。

音频信号分析仪毕业设计论文

音频信号分析仪毕业设计论文

音频信号分析仪(A题)摘要:本音频信号分析仪由32位MCU为主控制器,通过AD转换,对音频信号进行采样,把连续信号离散化,然后通过FFT快速傅氏变换运算,在时域和频域对音频信号各个频率分量以及功率等指标进行分析和处理,然后通过高分辨率的LCD对信号的频谱进行显示。

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

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

关键词:FFT MCU 频谱功率目录1 系统方案论证与比较1.1 引言1.2 采样方法比较与选择方案一、用DDS芯片配合FIFO对信号进行采集,通过DDS集成芯片产生一个频率稳定度和精度相当高的信号作为FIFO的时钟,然后由FIFO对A/D转换的结果进行采集和存储,最后送MCU处理。

方案二、直接由32位MCU的定时中断进行信号的采集,然后对信号分析。

由于32位MCU -LPC2148是60M的单指令周期处理器,所以其定时精确度为16.7ns,已经远远可以实现我们的40.96KHz的采样率,而且控制方便成本便宜,所以我们选择由MCU直接采样。

1.3 处理器的比较与选择由于快速傅立叶变换FFT算法设计大量的浮点运算,由于一个浮点占用四个字节,所以要占用大量的内存,同时浮点运算时间很慢,所以采用普通的8位MCU 一般难以在一定的时间内完成运算,所以综合内存的大小以及运算速度,我们采用Philips 的32位的单片机LPC2148,它拥有32K的RAM,并且时钟频率高达60M,所以对于浮点运算不论是在速度上还是在内存上都能够很快的处理。

1.4 周期性判别与测量方法比较与选择对于普通的音频信号,频率分量一般较多,它不具有周期性。

测量周期可以在时域测量也可以在频域测量,但是由于频域测量周期性要求某些频率点具有由规律的零点或接近零点出现,所以对于较为复杂的,频率分量较多且功率分布较均匀且低信号就无法正确的分析其周期性。

音频信号分析仪的设计

音频信号分析仪的设计

2 系统 分析 计算及 软件流程
2 1功率 谱测量 方法 . 对 于 周期 信 号 , 确 定负 载 电 阻为 R, 其 因各 频 率分 量 为 正弦 波 , 各 频 率 分 量 之 间 积 的 T时 间 内 的 积 分 为 零 , 得 信 号 功 率 为 : 可
P _【 + ; “+・ f = _ (ห้องสมุดไป่ตู้“+ ’)
能 , 用灵活。 文选用方案二。 运 本 1 2 系统 设计 思路 . 根 据设 计 要 求 , 文通 过 傅 立 叶 变 换得 到 信 号 的 各频 谱 分 量 , 本 进而测量音频信号的功率 , 频率 成分 , 周期 性 及 失 真 度 , 系统 工作 原理 如图1 示。 所 仪 器初 始 化 时 , 果信 号 偏 大 , 度检 测 器 检 测信 号 幅 度 后 增 如 幅 大 程 控 衰 减 器 衰减 ; 之 , 少 衰 减 。 终 可 使 得 送 给A/ 反 减 最 D的信 号 达 到 合理 的幅 度 , 时 通道 的增 益 和 信号 的幅 度 ( 于 正 弦 波 为有 同 对 效 值 ) 可以 确 定 。 / 也 A D将模 拟 信 号 变换 为 数 字 后 , US 经 B送入PC 机 中进 行 F T运 算 。 据 获 得 的通 道 增 益 , 以计 算 出信 号 的 各频 F 根 可 率分 量 的 绝 对 值 , 也就 推 算 出功 率 谱 的分 布 , 用 F T变换 所 得 数 利 F 据 经 过 分 析 处 理 完 成 失 真 度 分 析 , 周 期 信 号 判 断 功 能 及
i j 2 j 圈
—i 。 。 。 。 嚣 。 。
音 频信 号 分 析仪 的设 计
工程技术
丛海芳 杨超 苗莉莉 。 (. 1 长春 理工大 学 电子信 息工程 学院 长 春 1 0 2 ; 2 北 京航天 时代激光 导航技 术有 限责任公 司 02 3 . 北京 1 0 2 00 0 3 厦门市 冠准通讯 科技有 限公 司 . 福建 厦门 310) 6 8 0 摘 要: 本文 以单 片机 为基 础 , 用离散 傅里 叶变换 ( F ) 利 D T 对音频 信号进行 频 谱分析 。 系统 主要 由音频 信号放 大 , / 转 换 、 A D 频谱分析 、 结果显示 等部分组成 。 谱频率 分辨率 为2 H , 0 z 频谱测量频率 范 围为2 H ~1 0 0 z 0z 00H 。 关键 词 : 频谱分析 A D F T / F 中 图分 类 号 : TN9 l 文 献标 识码 : A 文章 编号 : 6 2 3 9 ( 0 0 I () 0 8 1 7 - 7 1 2 1 )2 e一0 2 —91 常用 频率分 析 方法有 : 扫频法 、 字滤 波法 、 F 法 。 数 F T 扫频 法 只适 方 案二 : 过US 接 I将 数据 传 送* P 机上 , 通 B Z l UC 在Pc 机上利 用快

音频信号分析仪的设计

音频信号分析仪的设计

域和频域的特性如图 1 所示。
图 1 汉宁窗(hanning)时域和频域特性曲线 2.4 相位差校正方法
提高信号功率测量精度,首先要精确获得信号的幅度信 息,当进行加窗傅立叶变换时,就会导致幅度计算结果误差很 大,需要做一些校正处理。相位差校正法相比与其它离散频 谱校正方法通用性好,对不同的窗函数可以用相同的公式进 行频率和相位校正,而且校准效果好,相位和幅度进行校正, 频率误差小于 0.0002 个频率分辨力,相位误差小于 0.1 度,幅 度误差小于 0.02%。 3 电路与程序设计 3.1 前级放大电路设计
参考文献: [1] 黄根春.电子设计教程[M].电子工业出版社,2007. [2] 夏宇闻.Verilog 数字系统设计教程[M].北京航空航天大学出
版社. [3] 马忠梅.单片机的 C 语言应用程序设计(第三版)[M].北京
航空航天大学出版社,2004. [4] 谢自美.电子线路设计·实验·测试[M].华中理工大学出
[J]. 电路与系统学报. 2005 年 4 月 第 10 卷 第 2 期: 112-116. [4] 马忠梅.单片机的 C 语言应用程序设计(第三版)[M].北京:
北京航空航天大学出版社,2004. [5] Schildt,H..C 语言大全(第四版)[M].北京:电子工业出版
社,2002. [6] Michael D. Ciletti.Verilog HDL 高级数字设计(英文版)[M].
使用 MATLAB 的 firpm 函数得到其系数。firpm 函数采 用 Parks-McClellan 算法来计算最优滤波器的系数。 ParksMcClellan 算法应用切比雪夫定理和 remez 迭代算法,通过加 权切比雪夫算法,设计 FIR 滤波器,并利用 remez 算法,使设 计的滤波器与理想滤波器之间的加权误差最小。该函数返回 值为相应的的最优等波纹滤波器的系数。

基于LabVIEW的音频信号分析仪设计

基于LabVIEW的音频信号分析仪设计

基于LabVIEW 的音频信号分析仪设计马骁,张广中国矿业大学信息与电气工程学院,江苏徐州(221008)E-mail :max05283091@摘要:本文基于“硬件的软件化”思想,在对信号分析、虚拟仪器技术和声卡的实用性进行理论分析的基础上,利用虚拟仪器专用语言LabVIEW 开发环境,设计了基于虚拟仪器技术的语音信号分析仪。

用普通的计算机声卡代替商用数据采集卡,利用声卡的DSP 技术和LabVIEW 的多线程技术实现音频信号的数据采集,开发基于PC 机声卡的虚拟音频信号分析仪。

该系统实现了数据采集,信号分析(时域分析和频域分析)等多种功能。

其中时域分析包括实时显示波形,测量信号电压、频率、周期等参数;频域分析包括幅值谱、相位谱、功率谱和FFT 变换等。

这类系统性价比高、通用性强、扩展性好、界面简单,在工程测量与实验室应用中具有广阔的前景。

关键词:声卡;LabVIEW;数据采集;信号分析中图分类号:TP3911.引言音频信号分析仪的发展是随着一般信号分析仪器的发展而不断改进的。

信号分析设备发展至今已经历了三个阶段,50年代发展的是以波的干涉、谐振和滤波原理制成的模拟式分析仪,它们功能少,分析速度慢,目前已经很少用了。

但是这类仪器分析时能量集中,分析精度高,其分析方法有特色。

因此,许多数字化仪器保留了模拟式分析仪的部分功能。

60年代,随着计算机技术的发展,信号处理由模拟式向数字式转化,发展的是以FFT 计算原理制成的数字式信号分析仪。

这类仪器功能多,分析速度快,是使用中的主流,第二代仪器的缺点是功能恒定,不能满足用户的特殊要求,同时分析功能无法更新换代。

近年来虚拟仪器的出现,为以通用计算机为主体的智能信号分析仪的产生和发展奠定了基础。

智能仪器分析功能由软件设定,可以不断的升级换代,用户也能自行修改,同时还能与人工智能技术和数据库技术等计算机技术相结合,使用起来十分方便[1]。

2.系统介绍2.1虚拟仪器概述虚拟仪器以PC 机为仪器统一的硬件平台,将测试仪器的功能和形象逼真的仪器面板控件均形成相应的软件并以文件形式存放于机内的软件库中,同时在计算机的总线槽内插入对应的、可实现数据交换的模块化硬件接口卡,若使库内仪器测试功能、仪器控件的软件和由中国科技论文在线接口卡输入至机内的数据,在计算机系统管理器的统一指挥和协调下运行,便构成了一类全新概念的仪器——虚拟仪器。

音频信号分析仪设计

音频信号分析仪设计

音频信号分析仪设计学院:电子信息学院专业:电子信息工程姓名:学号:指导老师:摘要本音频信号分析仪由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计算,判断是否为周期信号,求出输入信号的频率、功率、频谱等,然后在同步显示在液晶屏上。

山东建筑大学-音频信号分析系统论文

山东建筑大学-音频信号分析系统论文

全国大学生电子设计竞赛论文——山东赛区编号:A甲2313题目:音频信号分析仪学生姓名:张明李龙传太荣兵学校专业:山东建筑大学机械工程及自动化指导教师:张涵沈孝芹张超音频信号分析仪摘要:根据竞赛题目要求和现有条件的条件,本作品完成了以通用计算机的为核心的音频信号分析仪。

本仪器系统组成为:被测对象、传感器、信号调理、数据采集、虚拟仪器软件和计算机软件系统平台。

被测信号首先经传感器转化为电信号,然后由信号调理器进行去噪、滤波及前级放大等预处理,然后通过集成芯片进行音频信号的采集和模数转换并将数据通过单片机以串行通信的方式上传到PC机,经具有强大科学计算能力的软件LABVU分析处理,将分析结果下传到单片机并通过液晶和打印机进行输出,成功实现了对音频信号的频谱分析、功率分析和正弦信号失真度的测量。

关键词:信号采集;频谱分析;功率分析;虚拟仪器;正弦信号失真度1.系统方案选择与论证1.1总体设计方案本作品是以计算机为中心的音频信号分析仪,根据题目设计要求,采集的信号在几十赫兹到十千赫兹范围内,我们尽量利用现有技术与设备,采用转换速度几十微秒的AD转换芯片和通用计算机构成,原理如图1所示。

本音频信号分析仪以LPC938单片机为核心,声音模拟信号通过LM358进行信号放大,利用LPC938自带的A/D转换功能实现模拟数字信号的转换,由单片机通过串行口通信的方式将数字音频信号传给PC 机,通过PC机显示音频信号并分析结果。

利用LabVIEW强大的科学计算能力,对采集到的信号进行了自相关和互相关分析,并对确知信号和随机信号进行了频谱分析和功率谱分析,实现了音频信号分析仪的设计。

并将分析结果下传51单片机,由液晶显示、打印机打印。

1.2 方案的论证与比较1.2.1控制芯片的选择方案一:采用常用的STC89C51控制。

89C51为8位微控制器,内部有4KB程序存储器ROM,128B数据存储器RAM,工作频率0—40MHZ,4K的EEPROM存储器。

音频信号分析仪文档

音频信号分析仪文档

音频信号分析仪吴卫陈浩张艳平摘要:本系统是基于FPGA嵌入高性能的嵌入式IP核处理器软核,来代替传统的DSP芯片或者高性能单片机,实现了基于FFT算法的音频信号分析。

音频信号通过放大滤波后, A/D模块对其进行采样,采样点送FPGA处理。

利用FFT算法实现对信号的各种处理,求出了频率在200Hz—10kHz的信号的总功率及各频率分量的功率之和,且频率分量功率及总功率的相对误差都控制在5%内。

同时,还具有对各频率分量存储和回放显示的功能,可以同时实时的显示总功率和至少前两个频率分量的频率值和功率值。

还可对信号的失真度进行测量,判断信号周期性等,测量值可通过LCD液晶显示。

关键字:FPGA FFT 频率功率Abstract: This system is a high-performance based FPGA embedded soft-core embedded processor IP core, instead of the traditional high-performance DSP chip or chip, the FFT based algorithm to achieve the audio signal analysis. After filtering the audio signal through the amplification, A/D module be sampled at a point to send FPGA processing. FFT algorithm using vanity of signal processing, find the frequency of the signal at 200Hz-10kHz frequency components of the total power of the relative error is controlled within 5%. Also has the frequency components of the storage and playback display functions can display real-time total power and at least two frequency components before the frequency and power values. The signal distortion can be measured to determine the signal periodically, etc, measured by LCD display.Keyword: FPGA FFT frequency power1 方案选择与论证方案一:采用32位MCU为主控制器,通过AD转换,对音频信号进行采样,然后通过FFT运算,在时域和频域对音频信号各个频率分量以及功率等指标进行分析和处理,通过LCD对信号的频谱进行显示。

音频信号分析仪

音频信号分析仪

音频信号分析仪音频信号分析仪是一种用于分析声音信号的仪器,它可以帮助我们更好地理解和研究声音的特性。

本文将介绍音频信号分析仪的原理、应用领域以及其在科学研究和工程领域的重要性。

音频信号分析仪利用数字信号处理技术对声音信号进行分析和解析。

它主要由两部分组成:信号采集模块和信号分析处理模块。

信号采集模块用于将声音信号转化为电信号,然后经过模数转换器转化为数字信号;而信号分析处理模块则通过一系列算法对数字信号进行分析和处理。

音频信号分析仪广泛应用于各个领域,包括声学科学、音乐研究、语音识别、通信工程和音频设备测试等。

在声学科学领域,研究人员可以利用音频信号分析仪来测量和分析声音的频率、振幅、波形和谐波等信息,从而深入研究声音的产生和传播机理。

在音乐研究中,音频信号分析仪可以帮助研究人员分析音乐的音高、音质和音乐表现等特征,进一步了解音乐创作和演奏的规律。

在语音识别领域,音频信号分析仪是语音识别系统中不可或缺的重要组成部分,通过对语音信号进行分析和处理,可以实现语音识别和语音合成等应用。

在通信工程中,音频信号分析仪可以用于测试和调试通信设备,确保音频信号传输的质量和准确性。

此外,音频信号分析仪还广泛应用于音频设备测试,如音响、录音设备和音频处理器等的测试和评估。

音频信号分析仪在科学研究和工程领域中扮演着重要角色。

它可以帮助研究人员和工程师更深入地了解声音信号的特性和特征,从而实现对声音的精确控制和分析。

通过音频信号分析仪,我们可以更好地研究声音对人类听觉和认知的影响,甚至可以用于医学诊断,如听力评估和语音障碍的诊断等。

然而,虽然音频信号分析仪在许多领域都取得了显著的进展,但仍然存在一些挑战和限制。

例如,对于复杂的声音信号,如噪声信号和多音频信号,分析和处理过程可能较为困难。

此外,音频信号分析仪的精度和性能也是研究人员关注的焦点之一,他们不断努力改进算法和仪器,以提高分析的准确性和可靠性。

总的来说,音频信号分析仪是一种非常重要的科学研究和工程工具,它为我们深入了解声音信号的特性和特征提供了便利。

便携式音频信号分析仪的设计浅谈

便携式音频信号分析仪的设计浅谈

便携式音频信号分析仪的设计浅谈李忆燕【摘要】本文分析的便携式音频信号分析仪的设计过程包括系统设计和软件设计两个方面,采用AduC7026集成混合处理器和FFT技术来进行设计,设计系统经过实验测试后,可以精确的对功率、频谱结构、失真度等音频信号指标进行精确的分析,此系统具有电路简单、稳定性好,性能价格比高等一系列优点,可以供相关便携式音频信号仪设计领域进行参考.%Based on the analysis of the portable audio signal analyzer design process includes two aspects of system design and the software design,the AduC7026 integrated hybrid processor and the FFT technique to design and system design after the test,can accurately on the power and spectrum node structure, distortion of audio signal indicators for precise analysis,this system has simple circuit and good stability,performance and price ratio higher a series of merits can for portable audio signal analyzer design reference.【期刊名称】《电子测试》【年(卷),期】2016(000)017【总页数】2页(P17-18)【关键词】便携式;音频信号分析仪;设计;电子测试【作者】李忆燕【作者单位】国家新闻出版广电总局654台,新疆呼图壁,831200【正文语种】中文对便携式音频信号分析仪的设计是一个系统的设计过程,音频信号仪的设计是基于集成混合处理器AduC7026以及FFT技术,进行系统设计时采用了增益可编程放大器模拟前端,针对输入信号动态范围大的特点,系统可以满足此要求。

基于FPGA的音频信号分析仪设计(含完整程序)基于设计程序FPGA音频信号音频分析信号分析分析

基于FPGA的音频信号分析仪设计(含完整程序)基于设计程序FPGA音频信号音频分析信号分析分析

本科毕业论文(设计)题目基于FPGA的音频信号分析仪学生姓名专业名称电子信息科学与技术指导教师教师职称2009年12月10日基于FPGA的音频信号分析仪摘要:本音频信号分析仪以FPGA为核心,通过前级信号调理电路和12位A/D 转换芯片,对音频信号进行正确采样,把连续信号离散化。

然后通过基于Altera Cyclone II 系列FPGA嵌入高性能的NIOS II处理器,代替传统的DSP芯片和高性能MCU,实现了基于FFT的音频信号分析仪,并在时域和频域对音频信号各个频率分量以及功率等指标进行分析和处理。

最后采用高分辨率的彩色液晶对信号的功率谱等信息进行显示并通过触摸屏控制整个系统的运行。

该系统能够精确测量的音频信号频率范为100Hz-10KHz,其幅度范围为100mVpp-5Vpp,分辨力分为100Hz和20Hz两档,测量功率精确度高达5%,是理想的音频信号分析仪的解决方案。

关键词:FFT;FPGA;NIOS II ;频谱;信号功率;The Audio Signal Analyzer Based on FPGA Abstract: The audio signal analyzer is based on FPGA, through the signal processing circuit and12bit A / D converter chip for audio signal sampling, the continuous signal discrete. Instead of using DSP or MCU, we use high performance NIOS II Embedded Processor for FFT fast Fourier transform computing and in the time domain and frequency domain of the various audio frequency signal weight and power, and other indicators for analysis and processing. At last through the high-resolution Touch screen LCD display the signal power spectrum and control the operation of the entire system. The system can accurately measure the audio signal frequency range of 100Hz - 10 KHz, the range of 100mVpp-5Vpp, resolution of 100 Hz and 20 Hz correspondent. Power measurement accuracy up to 5%, is the ideal audio signal analyzer solution.Keyword: FFT;FPGA;NIOS II ;Spectrum;Signal Power;目录1 前言 (1)1.1音频分析原理 (1)1.2音频分析方法 (1)1.3音频参数测量及分析 (1)2 系统方案设计 (3)2.1系统设计要求 (3)2.2系统方案论证 (3)2.2.1 系统整体方案选择 (3)2.2.2 系统核心处理器的选择 (3)3 系统硬件设计 (5)3.1 FPGA与NIOS II介绍 (5)3.2 FPGA核心板电路设计 (5)3.2.1 FPGA电源电路 (6)3.2.2FPGA时钟电路 (7)3.2.3FPGA配置电路 (9)3.3前级信号调理电路 (10)3.4AD采样电路设计 (13)3.5系统电源电路设计 (14)3.6彩色液晶电路设计 (14)3.7触摸屏电路设计 (15)4系统软件设计 (17)4.1NIOSII集成开发环境介绍 (17)4.2系统主程序设计 (17)4.3AD转换驱动程序 (18)4.4触摸屏识别程序 (19)4.5 FFT算法的C语言实现 (20)4.5.1 FFT的MA TLAB仿真与分析 (20)4.5.2倒位序算法分析 (23)4.5.3实数蝶形运算算法 (23)4.5.4 DITFFT算法的基本思想分析 (24)5 系统调试与测试结果 (26)5.1系统调试 (26)5.2测试方案与测试结果 (26)5.2.1测试电路 (26)5.2.2两路信号总功率测量 (27)5.2.3单个频率分量测量 (27)5.3误差分析 (28)6结束语 (29)参考文献 (30)附录 (31)附录一 (31)附录二 (35)附录三 (36)附录四 (42)附录五 (43)附录六 (44)谢辞 (46)1前言1.1音频分析原理音频是多媒体中的一种重要媒体。

手持式音频信号分析仪的设计与实现

手持式音频信号分析仪的设计与实现

手持式音频信号分析仪的设计与实现发布时间:2021-12-31T02:29:32.186Z 来源:《中国建设信息化》2021年第17期作者:唐琳[导读] 本文介绍了音频信号分析仪的工作原理,设计了一个手持式音频信号分析仪,该音频信号分析仪可以测量频率,功率和信噪比,实时观测波形,满足一般场合下的音频信号分析使用。

唐琳(深圳湾实验室深圳 518107)摘要:本文介绍了音频信号分析仪的工作原理,设计了一个手持式音频信号分析仪,该音频信号分析仪可以测量频率,功率和信噪比,实时观测波形,满足一般场合下的音频信号分析使用。

关键词:音频信号分析仪,FFT,STM321.概述音频信号分析仪是常用的电子仪器,本文设计一款手持式音频信号分析仪,携带方便,可用于音频设备的现场测量。

本文设计的手持式音频信号分析仪,主要测量三个基本的音频参数,包括频率,电平和信噪比,输入信号频率范围20Hz-20kHz,电平范围为0V-5V。

2.硬件设计2.1系统设计手持式音频信号分析仪系统框图如图1所示,主要由信号分析单元和用户交互单元两部分组成。

信号分析单元是音频信号分析仪的核心,负责对音频信号进行预处理,采集信号与信号处理。

用户交互单元用于测量操作与测量结果的显示。

图1 系统框图2.2 信号分析单元设计信号分析单元框图如图2所示,包括信号预处理单元,信号采集单元与信号处理单元。

本文采用STM32F103ZET6作为信号采集和处理平台[1]。

图2 信号分析单元框图信号预处理单元,采用硬件电路上对前端输入信号进行处理,转换为处理器可接收的音频信号。

频率计预处理采用AD8611将音频信号转换为同频率的方波信号,然后将信号传入MCU中进行计数操作。

电平预处理采用AD8307将输入信号转换为电平信号。

信噪比预处理电路采用TL074运放电路,将输入信号幅度转换至单片机的电平采集范围。

信号采集单元对预处理后的信号进行信号采集。

频率预处理后的方波信号,通过单片机的GPIO中断口采集,中断口设置为上升沿触发,每触发一次中断,进行一次计数采样。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

音频信号分析仪(A题)摘要:本音频信号分析仪由32位MCU为主控制器,通过AD转换,对音频信号进行采样,把连续信号离散化,然后通过FFT快速傅氏变换运算,在时域和频域对音频信号各个频率分量以及功率等指标进行分析和处理,然后通过高分辨率的LCD对信号的频谱进行显示。

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

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

关键词:FFT MCU 频谱功率目录1 系统方案论证与比较** 引言** 采样方法比较与选择方案一、用DDS芯片配合FIFO对信号进行采集,通过DDS 集成芯片产生一个频率稳定度和精度相当高的信号作为FIFO 的时钟,然后由FIFO对A/D转换的结果进行采集和存储,最后送MCU处理。

方案二、直接由32位MCU的定时中断进行信号的采集,然后对信号分析。

由于32位MCU -LPC2148是60M的单指令周期处理器,所以其定时精确度为16.7ns,已经远远可以实现我们的40.96KHz的采样率,而且控制方便成本便宜,所以我们选择由MCU直接采样。

** 处理器的比较与选择由于快速傅立叶变换FFT算法设计大量的浮点运算,由于一个浮点占用四个字节,所以要占用大量的内存,同时浮点运算时间很慢,所以采用普通的8位MCU一般难以在一定的时间内完成运算,所以综合内存的大小以及运算速度,我们采用Philips 的32位的单片机LPC2148,它拥有32K的RAM,并且时钟频率高达60M,所以对于浮点运算不论是在速度上还是在内存上都能够很快的处理。

** 周期性判别与测量方法比较与选择对于普通的音频信号,频率分量一般较多,它不具有周期性。

测量周期可以在时域测量也可以在频域测量,但是由于频域测量周期性要求某些频率点具有由规律的零点或接近零点出现,所以对于较为复杂的,频率分量较多且功率分布较均匀且低信号就无法正确的分析其周期性。

而在时域分析信号,我们可以先对信号进行处理,然后假定具有周期性,然后测出频率,把采样的信号进行周期均值法和定点分析法的分析后即可以判别出其周期性。

综上,我们选择信号在时域进行周期性分析和周期性测量。

对于一般的音频信号,其时域变化是不规则的,所以没有周期性。

而对于单频信号或者由多个具有最小公倍数的频率组合的多频信号具有周期性。

这样我们可以在频域对信号的频谱进行定量分析,从而得出其周期性。

而我们通过先假设信号是周期的,然后算出频率值,然后在用此频率对信号进行采样,采取连续两个周期的信号,对其值进行逐次比较和平均比较,若相差太远,则认为不是周期信号,若相差不远(约5%),则可以认为是周期信号。

** 系统总体设计音频信号经过一个由运放和电阻组成的50 Ohm阻抗匹配网络后,经由量程控制模块进行处理,若是一般的100mV-5V 的电压,我们选择直通,也就是说信号没有衰减或者放大,但是若信号太小,12位的A/D转换器在2.5V参考电压的条件下的最小分辨力为1mV左右,所以如果选择直通的话其离散化处理的误差将会很大,所以若是采集到信号后发现其值太小,在20mV-250mV之间的话,我们可以将其认定为小信号,从而选择信号经过20倍增益的放大器后再进行A/D采样。

经过12位A/D转换器ADS7819转换后的数字信号经由32位MCU进行FFT 变换和处理,分析其频谱特性和各个频率点的功率值,然后将这些值送由Atmega16进行显示。

信号由32 位MCU分析后判断其周期性,然后由Atmegal6进行测量,然后进行显示。

图1-1 总体设计框架图2 各单元电路设计** 前级阻抗匹配和放大电路设计图2-1 阻抗匹配和放大电路信号输入后通过R5,R6两个100Ohm的电阻和一个高精度仪表运放AD620实现跟随作用,由于理想运放的输入阻抗为无穷大,所以输入阻抗即为:R5//R6=50Ohm,阻抗匹配后的通过继电器控制是对信号直接送给AD转换还是放大20倍后再进行AD转换。

在这道题目里,需要检测各频率分量及其功率,并且要测量正弦信号的失真度,这就要求在对小信号进行放大时,要尽可能少的引入信号的放大失真。

正弦信号的理论计算失真度为零,对引入的信号失真非常灵敏,所以对信号的放大,运放的选择是个重点。

我们选择的运放是TI公司的低噪声、低失真的仪表放大器INA217,其失真度在频率为1KHz,增益为20dB(100倍放大)时仅为0.004%,其内部原理图如图2-2所示。

其中放大器A1的输出电压计算公式为OUT1=1+(R1/RG )*VIN+同理, OUT2=1+(R2/RG )*VIN--R3、R4、R5、R6及A3构成减法器,最后得到输出公式VOUT=(VIN2-VIN1)*[1+(R1+R2)/RG]R1=R2=5K,取RG=526,从而放大倍数为20。

** AD 转换及控制模块电路设计采用12位AD 转换器ADS7819进行转换,将转换的数据送32位控制器进行处理。

** 功率谱测量功率谱测量主要通过对音频信号进行离散化处理,通过FFT 运算,求出信号各个离散频率点的功率值,然后得到离散化的功率谱。

由于题目要求频率分辨力为100Hz 和20Hz 两个档,这说明在进行FFT 运算前必须通过调整采样频率(fK)和采样的点数(N),使其基波频率f 为100Hz 和20Hz 。

根据频率分辨率与采样频率和采样点数的关系:f=fk/N;可以得知, fk=N*f ;又根据采样定理,采样频率fk 必须不小于信号频率fm 的2倍,即:fk>=2fm;图2-2 INA217内部原理图图2-3 AD 转换及控制模块电路设计题目要求的最大频率为10KHz,所以采样频率必须大于20KHz,考虑到FFT运算在2的次数的点数时的效率较高,所以我们在20Hz档时选择40.96KHz采样率,采集2048个点,而在100档时我们选择51.2KHz采样率,采集512个点。

通过FFT 分析出不同的频率点对应的功率后,就可以画出其功率谱,并可以在频域计算其总功率。

3 软件设计主控制芯片为LPC2148,测量周期为Atmega16实现,由于处理器速度较快,所以采用c语言编程方便简单.软件流程图如下:主流程图周期性分析和测量流程图图3-1 程序流程图4 系统测试** 总功率测量(室温条件下)表4-1 总功率测量结果(室温条件下)输入信号频率幅度测量时域总功率(w)测量频域总功率(w)理论值估算误差正弦波100Hz 1 Vpp ** 0.129 0.125 1.2% 1KH 1 Vpp 0.126 ** 0.125 1.3%音频信号20Hz-10KHz 20mVpp-5Vpp 0.783 0.761 X 《5%1.803 1.777 X 《5%结果分析:由于实验室提供的能够模仿音频信号的且能方便测量的信号只有正弦信号,所以我们用一款比较差点的信号发生器产生信号,然后进行测量,发现误差不达,在+-5%以内。

我们以音频信号进行测量,由于其实际值无法测量,所以我们只能根据时域和频域以及估计其误差,都在5%以内。

4.2单个频率分量测量(室温条件下)表4-2 单个频率分量测量结果(室温条件下)输入信号频率幅度最大功率频点最大功率频点功率次大功率频点次大功率频点功率正弦波500Hz 100mVpp 500Hz ** 520Hz **正弦波5KHz 1Vpp 5KHz 120mw 5.02KHz **音频信号20Hz-10K X 880Hz 23mw 600Hz 4.3mw结果分析:我们首先以理论上单一频率的正弦波为输入信号,在理想状况下,其频谱只在正弦波频率上有值,而由于有干扰,所以在其他频点也有很小的功率。

音频信号由于有多个频点,所以没有一定的规律性。

由于音频信号波动较大,没有一定的规律,且实验室没有专门配置测量仪器,所以我们只好以正弦波和三角波作为信号进行定量分析测量,以及对音频信号进行定性的分析和测量。

我们发现其数字和用电脑模拟的结果符合得很近。

5 结论由于系统架构设计合理,功能电路实现较好,系统性能优良、稳定,较好地达到了题目要求的各项指标。

参考文献:[1] ALAN V.OPPENHEIM.信号与系统.西安:西安交通大学出版社,1997年[2]元秋奇.数字图像处理学.北京:电子工业出版社,2000年[3] 吴运昌.模拟电子线路基础.广州:华南理工大学出版社,2004年[4] 阎石.数字电子技术基础.北京:高等教育出版社,1997年[5] 张晓丽等.数据结构与算法.北京:机械工业出版社,2002年[6] 马忠梅等.ARM&Linux嵌入式系统教程.北京:北京航空航天大学出版社,2004年[7] 李建忠.单片机原理及应用.西安:西安电子科技大学,2002年附录:附1:元器件明细表:1、LPC21482、ATMEGA163、AD6204、ADS78195、液晶320*240附2:仪器设备清单1、低频信号发生器2、数字万用表3、失真度测量仪4、数字示波器5、稳压电源附3:电路图图纸电源系统前级放大和AD转换Atmega16控制板附4:程序清单/*///////////////////////////////////////////////////////////////////////////////////////////////// FFT转换函数,dataR:实部,datai:虚部,////////////////////////////////////////////////////////////////////////////////////////////////*/ void FFT(float *dataR,float *dataI,int n){int i,L,j,k,b,p,xx,qq;int x[11]={0};float TR,TI,temp;float QQ;//////////////////////////////////位倒置//////////////////////////////////////////////////// for(i=0;i<count[n];i++){ xx=0;for(j=0;j<n;j++)x[j]=0;for(j=0;j<n;j++){x[j]=(i/count[j])&0x01;}for(j=0;j<n;j++){xx=xx+x[j]*count[n-j-1];}dataI[xx]=dataR[i];}for(i=0;i<count[n];i++){ dataR[i]=dataI[i];dataI[i]=0;}////////////////////////////////////蝶形运算////////////////////////////////////////for(L=1;L<=n;L++){b=1; i=L-1;while(i>0){ b=b*2;i--;}for(j=0;j<=b-1;j++){ p=1; i=n-L;while(i>0){ p=p*2; i--;}p=p*j;for(k=j;k<count[n];k=k+2*b){TR=dataR[k];TI=dataI[k];temp=dataR[k+b];QQ=2*pi*p/count[n];qq=p*count[11-n];dataR[k]=dataR[k]+dataR[k+b]*cos_tab[qq]+dataI[k+b]*sin_tab[qq];dataI[k]=dataI[k]-dataR[k+b]*sin_tab[qq]+dataI[k+b]*cos_tab[qq];dataR[k+b]=TR-dataR[k+b]*cos_tab[qq]-dataI[k+b]*sin_tab[qq]; //查表运算dataI[k+b]=TI+temp*sin_tab[qq]-dataI[k+b]*cos_tab[qq];}}}for(i=0;i<count[n];i++){w[i]=sqrt(dataR[i]*dataR[i]+dataI[i]*dataI[i]);w[i]=w[i]/count[n-1];}w[0]=w[0]/2;}///////////////////////////回放数据/////////////////////////void viewdata(void){unsigned int key,page,i;page=0;LCD_PenColor=0x1F; //红色LCD_WriteChineseString(font5,2,40,0);LCD_PenColor=0xFC; //蓝色while(1){key=getkey();if(key!=0xFF){if(key==4) {SystemState=fft_mode;return;} //返回if(key==2) {LCD_ClearScreen();LCD_WriteChineseString(font3,2,10,0);LCD_WriteChineseString(font4,2,60,0);i=page*4+1;p3510(Re[i],0,15); print3510(Im[i]*mode,50,15);p3510(Re[i+1],0,26); print3510(Im[i+1]*mode,50,25);p3510(Re[i+2],0,38); print3510(Im[i+2]*mode,50,35);p3510(Re[i+3],0,50); print3510(Im[i+3]*mode,50,50);if(page>0) page--;delay_nms(8000000);} //上翻页if(key==1) {LCD_ClearScreen();LCD_WriteChineseString(font3,2,10,0);LCD_WriteChineseString(font4,2,60,0);i=page*4+1;p3510(Re[i],0,15); print3510(Im[i]*mode,50,15);p3510(Re[i+1],0,26); print3510(Im[i+1]*mode,50,25);p3510(Re[i+2],0,38); print3510(Im[i+2]*mode,50,35);p3510(Re[i+3],0,50); print3510(Im[i+3]*mode,50,50);page++;if(page>=SampleNum/4) page=0;delay_nms(8000000);} //下翻页}}}////////////////////////////失真度计算///////////////////////void distortion(void){LCD_ClearScreen();LCD_WriteChineseString(font6,3,10,20);unsigned int key;int fr;while(1){////////////获取频率////////////////////log_2_N=11;SampleNum=SampleTab[log_2_N];reset_timer(0);init_timer0(40960);New_Flag=0;enable_timer(0);////////////////////等待采样完成///////////////////////////while(!FFT_Flag);disable_timer(0); //关定时器0//////////////////////FFT运算/////////////////////////////////FFT(Re,Im,log_2_N);////////////////频域功率////////////////////////////////////for(i=1;i<SampleNum/2;i++) {Re[i]=Re[i]*Re[i];Re[i]=Re[i]/2;}////////////////////总功率/////////////////////////////////Fp=0;for(i=1;i<SampleNum/2;i++) Fp+=Re[i];sort(&Re[1],&Im[1],SampleNum/2-1);fr=1000000/fre;if(Tflag) {LCD_WriteChineseString(font7,1,50,20);LCD_WriteEnglishString(" ",0,38);print3510(fr,10,38);LCD_WriteEnglishString("US",58,38);}else{LCD_WriteEnglishString(" ",0,38);LCD_WriteChineseString(font8,1,50,20);}////////////////////按键扫描/////////////////////////////key=getkey();if(key!=0xFF){if(key==1) {SystemState=fft_mode;mode=20;break;} //返回if(key==2) {SystemState=fft_mode;mode=100;break;} //返回}}}/////////////////按键扫描//////////////////////////////unsigned char getkey(void){if(IO1PIN_bit.P1_21==0) {delay_nms(200000);if(IO1PIN_bit.P1_21==0) return 1;}if(IO1PIN_bit.P1_22==0) {delay_nms(2000000);if(IO1PIN_bit.P1_22==0) return 2;}if(IO1PIN_bit.P1_23==0) {delay_nms(2000000);if(IO1PIN_bit.P1_23==0) return 3;}if(IO1PIN_bit.P1_24==0) {delay_nms(2000000);if(IO1PIN_bit.P1_24==0) return 4;}return 0xFF;}//////////////////排序处理//////////////////////////////void sort(float *a,float *b,int n) //a为待排序的量,b为起位置{int i,j,temp;for(i=0;i<n;i++) b[i]=i+1;for(j=0;j<=n-1;j++){for (i=0;i<n-j;i++)if (a[i]<a[i+1]){temp=a[i];a[i]=a[i+1];a[i+1]=temp;temp=b[i];b[i]=b[i+1];b[i+1]=temp;}}}//////////////////////显示///////////////////void p3510(int v,int x,int y){int x0;x0=v*157;x0=x0/100000000;LCD_WriteEnglishChar(x0+'0',x,y); x0=v*157;x0=x0/100;x0+=1000000;print3510(x0,x+6,y);LCD_WriteEnglishChar('.',x+6,y); }。

相关文档
最新文档