实验6 音频信号处理实验
目录

  1. 实验目的 1
  2. 实验设备 1
  3. 算法实现原理与仿真结果 1
    3.1 参量均衡器的LowShelf和HiShelf通道模式 1
    3.1.1 参量均衡器 1
    3.1.2 LowShelf和HiShelf通道模式 4
    3.1.3 LowShelf和HiShelf均衡的Matlab仿真 5
    3.2 巴特沃斯滤波器 8
    3.2.1 特性 8
    3.2.2 传递函数 12
    3.2.3 巴特沃斯滤波器的Matlab仿真 13
    3.3 音频的反相 15
    3.3.1 反相的概念 15
  4. 界面设计与通信协议 16
    4.1 界面设计 16
    4.2 通信协议 26
  5. 算法的DSP程序设计 27
    5.1 系统的软件设计流程 27
    5.2 系统时钟及必要外设的初始化 28
    5.3 上位机和DSP板接收命令的判定 30
    5.4 解析串口通信数据 32
    5.5 音频算法软件处理 35
  6. 实验结果分析 52
    6.1 界面设计展示 52
    6.2 音频算法处理结果与分析 53
    6.2.1 直通处理 53
    6.2.2 静音/反相处理 55
    6.2.3 低架处理 57
    6.2.4 高架处理 61
    6.2.5 巴特沃斯低通处理 65
    6.2.6 巴特沃斯高通处理 68
  7. 参考文献 71

——————————————————————————————————

  1. 实验目的
    1、复习巩固数字信号处理和音频DSP的基本原理和应用方法;
    2、掌握在DSP上实现数字音频信号处理算法的方法。
  2. 实验设备
    PC机一台,操作系统为Windows,安装VisualDSP++5.12软件, ADSP-21489 EZ –Board 一套。
  3. 算法实现原理与仿真结果
    3.1 参量均衡器的LowShelf和HiShelf通道模式
    3.1.1 参量均衡器
    (一) 均衡器的分类
    均衡器分为三类:图示均衡器,参量均衡器和房间均衡器。
    (1) 图示均衡器
    亦称图表均衡器,通过面板上推拉键的分布,可直观地反映出所调出的均衡补偿曲线,各个频率的提升和衰减情况一目了然,它采用恒定Q值技术,每个频点设有一个推拉电位器,无论提升或衰减某频率,滤波器的频带宽始终不变。常用的专业图示均衡器则是将20Hz~20kHz的信号分成10段、15段、27段、31段来进行调节。这样人们根据不同的要求分别选择不同段数的频率均衡器。一般来说10段均衡器的频率点以倍频程间隔分布,使用在一般场合下,15段均衡器是2/3倍频程均衡器,使用在专业扩声上,31段均衡器是1/3倍频程均衡器,多数有在比较重要的需要精细补偿的场合下,图示均衡器结构简单,直观明了,故在专业音响中应用非常广泛。
    (2) 参量均衡器
    亦称参数均衡器,对均衡调节的各种参数都可细致调节的均衡器,多附设在调音台上,但也有独立的参量均衡器,调节的参数内容包括频段、频点、增益和品质因数Q值等,可以美化(包括丑化)和修饰声音,使声音(或音乐)风格更加鲜明突出,丰富多彩达到所需要的艺术效果。
    (3) 房间均衡器
    用于调整房间内的频率响应特性曲线的均衡器,由于装饰材料对不同频率的吸收(或反射)量不同以及简正共振的影响造成声染色,所以必须用房间均衡器对由于建声方面的频率缺陷加以客观地补偿调节。
    频段分得越细,调节的峰越尖,即Q值(品质因数)越高,调节时补偿得越细致,频段分的越粗则调节的峰就比较宽,当声场传输频率特性曲线比较复杂时较难补偿。
    (二) 参量均衡器的重要参数
    频率(frequency)参数:设定了你要对声音频带中进行均衡的具体频段。
    提升(boost)和衰减(cut)参数:决定了你要对选定频段进行提升或是衰减的程度。
    带宽,共振或是Q值参数:这个参数决定了提升或是衰减曲线是窄而尖还是宽而平缓。较窄的带宽设置(即较高的共振或是Q值)使得均衡器只能对非常窄的一个音频段进行操作,而较宽的设定值则可以对较宽的音频段进行操作。
    参量均衡算法实际上是一种二阶IIR滤波器,参量均衡器一般用于补偿声音信号中不足的频率成分,衰减过多的频率成分。使用过程中有三个参数可以调:中心频率fC、Q值、增益值Gain。下图为参量均衡器的示意图。

界面设计


```c
1.  %% 串口配置全局变量
2.  global popBaudRate;
3.  global popDataBits;
4.  global popStopBits;
5.  global popParity;
6.
7.  popBaudRate = [9600, 19200, 38400, 57600, 115200];     % 波特率
8.  popDataBits = [8, 9];                                  % 数据位
9.  popStopBits = [1, 2];                                  % 停止位
10. popParity = {'none', 'even', 'odd'};                   % 校验位
11.
12. %% 音频命令全局参数
13. global  CH_IN;       CH_IN =0;      % 输入声道
14. global  CH_OUT;      CH_OUT=1;      % 输出声道
15.
16. global  CH_NUM;     CH_NUM = 16;     %输入、输出声道各8个,其中输入声道目前的21489开发板只有4个,另外4个保留
17. global  IN_CH1;     IN_CH1 = 1 ;     %输入声道1
18. global  IN_CH2;     IN_CH2 = 2 ;     %输入声道2
19. global  IN_CH3;     IN_CH3 = 3 ;     %输入声道3
20. global  IN_CH4;     IN_CH4 = 4 ;     %输入声道4
21.
22. global  OUT_CH1;    OUT_CH1 = 9;      %输出声道1
23. global  OUT_CH2;    OUT_CH2 = 10;     %输出声道2
24. global  OUT_CH3;    OUT_CH3 = 11;     %输出声道3
25. global  OUT_CH4;    OUT_CH4 = 12;     %输出声道4
26. global  OUT_CH5;    OUT_CH5 = 13;     %输出声道5
27. global  OUT_CH6;    OUT_CH6 = 14;     %输出声道6
28. global  OUT_CH7;    OUT_CH7 = 15;     %输出声道7
29. global  OUT_CH8;    OUT_CH8 = 16;     %输出声道8
30.
31. global  HEAD1;      HEAD1 = 170;   %参数的帧头1 0xaa
32. global  HEAD2;      HEAD2 = 85;    %参数的帧头2 0x55
33.
34. global  MUTELEN;           MUTELEN          = 4;      % 静音命令参数个数
35. global  BYPASSLEN;         BYPASSLEN        = 3;      % 直通命令参数个数
36. global  PHASELEN;          PHASELEN         = 4;      % 反相命令参数个数
37. global  DELAYLEN;          DELAYLEN         = 6;      % 延时命令参数个数
38. global  LOWSHELFLEN;       LOWSHELFLEN      = 8;      % lowshelf命令参数个数
39. global  HIGHSHELFLEN;      HIGHSHELFLEN     = 8;      % highshelf命令参数个数
40. global  BUTTERLEN;         BUTTERLEN        = 8 ;     % 巴特沃斯命令参数个数
41. global  MUTEID  ;          MUTEID         = 2;   % 静音命令ID
42. global  BYPASSID;          BYPASSID       = 3;   % 直通命令ID
43. global  PHASEID  ;         PHASEID        = 4;   % 反相命令ID
44. global  DELAYID  ;         DELAYID        = 5;   % 延时命令ID
45. global  LOWSHELFID;        LOWSHELFID     = 6;   % lowshelf命令ID
46. global  HIGHSHELFID ;      HIGHSHELFID    = 7;   % highshelf命令ID
47. global  BUTTERID  ;        BUTTERID       = 9;   % 巴特沃斯命令ID

主要的DSP实现代码:

```c
```c
1.  // Sets the UART0 receive interrupt to P13
2.      *pPICR2 &= ~(0x3E0);
3.      *pPICR2 |= (0x13<<5);
4.
5.
6.      initPLL_SDRAM(); //Initialize the PLL and SDRAM controller
7.
8.      // UART 设置
9.      *pUART0LCR=0;
10.     *pUART0IER   = UARTRBFIE;    // enables UART0 receive interrupt
11.     interrupt(SIG_P13,UARTisr);
12.     initDPI();
13.     initUART();
14.
15.
16.     // Initialize DAI because the SPORT and SPI signals
17.     // need to be routed
18.     InitDAI();
19.
20.     // This function will configure the AD1939 codec on the 21489 EZ-KIT
21.     Init1939viaSPI();
22.
23.     // Turn on SPORT0 TX and SPORT1 RX for Multichannel Operation
24.     InitSPORT();
25.
26.     // Unmask SPORT1 RX ISR Interrupt
27.     interrupt(SIG_SP1,TalkThroughISR);
28.
29.     Init_LEDs();
30.
31.     Init_PushButtons();
32.
33.     NewCmdFlag = 0;            // 初始化命令标志, 当前无新命令  

处理算法图

实验结果分析:

完整代码以及工程、设计报告(word,近2w字分析讨论)如下:
https://download.csdn.net/download/weixin_39589455/18656041

【DSP实验】实验6音频信号处理实验-实现参量均衡器+滤波器+反相器的总和DSP处理交互系统相关推荐

  1. matlab音频信号处理实验报告,matlab音频信号处理实验报告.docx

    matlab音频信号处理实验报告 MATLAB音频信号处理实验 南昌航空大学信息工程学院 课程实验报告 实验名称:实验时间:2014年4月23日 指导教师: 班级: 学号: 姓名: 成绩: 南昌航空大 ...

  2. 声音信号预处理matlab,实验一 MATLAB音频信号处理实验

    实验一MATLAB音频信号处理实验 一.实验目的 1.进一步加深DFT算法原理和基本性质的理解: 2.熟悉FFT算法原理: 3.理解掌握音频信号各参数的意义: 二.实验内容 1.对一个音频信号用FFT ...

  3. MATLAB课程设计音频信号处理,MATLAB音频信号处理实验

    南昌航空大学信息工程学院 课程实验报告 实验名称: 实验时间: 2014年4月23日 指导教师: 班 级 : 学 号 : 姓 名 : 成 绩 : 南昌航空大学实验报告 2014 年 4 月 23 日 ...

  4. 实验六|MPEG音频编码实验

    MPEG-1 Audio LayerII编码器原理 多相滤波器组(Polyphase Filter Bank):将PCM样本变换到32个子带的频域信号 心理声学模型(Psychoacoustic Mo ...

  5. 东南大学数字信号处理实验_数字与信号处理实验1 离散时间信号分析

    实验一 离散时间信号分析 一.实验目的 掌握两个序列的相加.相乘.移位.反褶.卷积等基本运算. 二.实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列来表示,其中代表序列的第n个数字,n代 ...

  6. 实验一 视频/图像信号处理实验

    一.实验目的 掌握视频/图像文件输入输出. 掌握视频信号亮度方程原理和实现方法. 了解视频信号的存储方式. 了解视频信号不同分量的关系和存储关系. 二.实验器材 电脑 Matlab软件/或其他 三.实 ...

  7. 音频信号处理(一)均衡器

    均衡器 概述 均衡器实现 全通滤波器 搁架滤波器(斜坡滤波器) 峰值滤波器 概述 低通.高通滤波器.带通.带阻滤波器都是通过衰减了高于或低于截止频率的频谱,但均衡器是通过增强某些频带,而别的频带不受影 ...

  8. 实验六 MPEG音频编码

    一.MPEG音频编码原理 1.1 基本思想 分析信号,去掉不能被感知的部分[声音压缩算法可以确立这种特性的模型来取消更多的冗余数据] 子带分析滤波器组:使信号具有高的时间分辨率[短暂冲击信号情况下,编 ...

  9. 离散卷积的c语言编程实验,数字信号处理实验一离散卷积c语言编程.ppt

    数字信号处理实验一离散卷积c语言编程 实验一 离散卷积的C语言编程实验 DSP实验室 2005 实验性质 综合设计性实验 实验目的 1 了解和认识常用的各种信号: 2 掌握卷积的定义和计算方法: 3 ...

最新文章

  1. python利器怎么用-Python爬虫利器二之Beautiful Soup的用法
  2. SQL Server-事务处理(Tansaction)与锁(Lock)
  3. eclipse启动了tomcat,但是浏览器打不开欢迎页
  4. acwing199.余数之和(除法分块)
  5. OAuth2.0授权协议的一个简单解释
  6. [3月25日]《编辑部的外传》
  7. Vue的生命周期和钩子函数
  8. scratch 控制、侦测、数据和数字逻辑模块  教案
  9. 实现LAYERED窗口
  10. 【笨嘴拙舌WINDOWS】Dj,oh!nonono,It is about DC
  11. 百度竞价点击系统,互动点击软件【胖虎图图-互动点击专家】
  12. 基于Android手机开发平台的移动数字图书馆服务系统研究
  13. 禁用Android底部虚拟按键
  14. 手机邮箱中的邮件里的链接的打开方式/app更改方法
  15. [WINDOWS]多个文本文件内容合并到一个文本文件中
  16. [渝粤教育] 西南科技大学 材料力学 在线考试复习资料(1)
  17. idea加密解密C++实现
  18. 实验四 SQL语言的数据更新和视图
  19. 乐游TGapi接口平台(接口商)
  20. Js核心技术——待补充

热门文章

  1. 视听说教程(第三版)4 quiz 6
  2. 创业者的技能树 -上篇
  3. 生活娱乐 VERYCD的T恤设计大赛
  4. CSS带箭头的提示框实现
  5. c语言十进制转二进制两种方法
  6. 杭州前端阿里线下聚会(下)
  7. android xml ignore,工具:ignore =“UselessParent”是什么意思在Android XML布局文件中?...
  8. 项目【QT5.13频谱分析软件】(五)——总篇
  9. VMware Horizon 8 2111 下载 -- 用于管理虚拟桌面 (VDI)、应用和在线服务的领先平台
  10. 不可思议!乌克兰国防军队的系统账号和密码分别是 admin 和 123456!