基于ARM Cortex-M4的DSP系统开发 本书特色
本书介绍了数字信号处理(DSP)的一种实践教学方法。书中的实时示例基于ARMCortex-M432位微处理器,采用模拟输入/输出信号(可以使用信号发生器或音频信号源如iPods来提供实验用输入信号),并通过示波器和扬声器或耳机展示视觉和听觉效果。除此之外,本书还涵盖了数字信号处理的一些基本概念,如模数和数模转换,FIR和IIR滤波,傅里叶变换,自适应滤波,等等。本书可作为大学进行DSP实验教学的辅助教材,也适合打算使用廉价的ARMCortex-M4学习DSP的学生和工程师阅读。
基于ARM Cortex-M4的DSP系统开发 目录
目录 Contents
译者序 前言 第1章ARM Cortex?M4开发系统 1?1简介 1?1?1音频接口 1?1?2德州仪器TM4C123 LaunchPad和STM32F407 Discovery开发套件 1?1?3硬件和软件工具 参考文献 第2章模拟输入和输出 2?1简介 2?2用作音频输入和输出的AIC3104立体声信号编解码器 2?3用作音频输入和输出的WM5102音频插孔板信号编解码器 2?4编程示例 2?5使用查询、中断和DMA进行实时输入和输出 2?5?1TM4C123的I2S仿真 2?5?2程序操作 2?5?3运行程序(例程tm4c123_loop_poll.c) 2?5?4将输入连接改为LINE IN 2?5?5改变抽样频率 2?5?6使用沃尔夫森声卡上的数字MEMS麦克风 2?5?7运行程序(例程stm32f4_loop_poll.c) 2?5?8运行程序(例程tm4c123_loop_intr.c) 2?5?9TM4C123处理器的DMA 2?5?10运行程序(例程tm4c123_loop_dma.c) 2?5?11监测程序执行 2?5?12测量由基于DMA的I/O方式引入的时延 2?5?13STM32F407处理器的DMA 2?5?14运行程序(例程stm32f4_loop_dma.c) 2?5?15测量由基于DMA的I/O方式引入的时延 2?5?16运行程序(例程stm32f4_loop_buf_intr.c) 2?6实时波形生成 2?6?1运行程序(例程stm32f4_sine 48_intr.c) 2?6?2AIC3104信号编解码器输出中的带外噪声(例程tm4c123_sine48_intr.c) 2?6?3运行程序(例程stm32f4_sine_intr.c) 2?6?4运行程序(例程stm32f4_square_intr.c) 2?6?5运行程序(例程tm4c123_am_poll.c) 2?7利用伪随机噪声识别DAC的频率响应 2?7?1AIC3104信号编解码器的可编程去加重滤波器 2?7?2AIC3104信号编解码器的可编程数字特效滤波器 2?8混叠 2?9利用自适应滤波器识别DAC的频率响应 2?10STM32F407的12位DAC的模拟输出 参考文献 第3章有限冲激响应滤波器 3?1数字滤波器简介 3?1?1FIR滤波器 3?1?2z变换简介 3?1?3z变换的定义 3?1?4z变换的性质 3?1?5z传递函数 3?1?6s平面到z平面的映射 3?1?7差分方程 3?1?8频率响应和z变换 3?1?9z反变换 3?2理想滤波器响应分类:LP、HP、BP、BS 3?2?1采用窗口法设计FIR滤波器 3?2?2窗函数 3?2?3采用窗口法设计理想高通、带通和带阻FIR滤波器 3?3编程示例 3?3?1改变滑动平均滤波器的系数 3?3?2使用MATLAB生成FIR滤波器系数头文件 第4章无限冲激响应滤波器 4?1简介 4?2IIR滤波器结构 4?2?1直接I型结构 4?2?2直接II型结构 4?2?3直接II型转置 4?2?4级联型结构 4?2?5并联型结构 4?3冲激不变法 4?4双线性变换 4?5编程示例 参考文献 第5章快速傅里叶变换 5?1简介 5?2基2 FFT算法的开发 5?3频率抽取基2 FFT算法 5?4时间抽取基2 FFT算法 5?5频率抽取基4 FFT算法 5?6快速傅里叶反变换 5?7编程示例 5?8基于帧或者块的编程 5?8?1运行程序(例程tm4c123_dft128_dma.c) 5?8?2频谱泄露 5?9快速卷积 5?9?1运行程序(例程tm4c123_fastconv_dma.c) 5?9?2以快速卷积法实现FIR滤波器的执行时间 参考文献 第6章自适应滤波器 6?1简介 6?2自适应滤波器布局 6?2?1自适应预测 6?2?2系统识别或者直接建模 6?2?3噪声消除 6?2?4均衡 6?3性能函数 6?4搜索*小值 6?5*小均方算法 6?5?1LMS演化 6?5?2归一化LMS算法 6?6编程示例
|