数字信号处理就是用数值计算的方式对信号进行加工的理论和技术。数字信号处理的目的
是对真实世界的连续模拟信号进行测量或滤波。
M453采用ARM Cortex-M4内核,相比ARM Cortex-M0/M3系列,除了内置硬件FPU单元外,在
数字信号处理方面还增加了DSP指令集,支持诸如单周期乘加指令(MAC)、优化的单指令多数据
指令(SIMD)、饱和算数等多种数字信号处理指令集。
1.DSP运行库的搭建:
在MDK里面搭建M453的DSP运行环境(使用.lib方式)是很简单的,分为两个步骤,具体如下:
(1)添加文件
首先将C:Keil_v5ARMCMSISLibARM路径下的arm_cortexM4lf_main.lib文件复制到工程目录下,如下图:
(2)设置宏定义:
单击下图按钮
然后切换到C/C++选项卡,在Define文本框中添加如下宏定义:
ARM_MATH_CM4=1, __FPU_PRESENT=1, __FPU_USED,__CC_ARM,ARM_MATH_MATRIX_CHECK,ARM_MATH_ROUNDING
如图:
2.FFT介绍:FFT即快速傅里叶变换,可以将一个时域信号变换为频域。因为有些信号在时域
上是很难看出有什么特征的,但是如果变换到频域,就很容易看出其特征了,这就是很多信号
分析采用FFT的原因。
3.源代码:
4.实验效果图:
数字信号处理就是用数值计算的方式对信号进行加工的理论和技术。数字信号处理的目的
是对真实世界的连续模拟信号进行测量或滤波。
M453采用ARM Cortex-M4内核,相比ARM Cortex-M0/M3系列,除了内置硬件FPU单元外,在
数字信号处理方面还增加了DSP指令集,支持诸如单周期乘加指令(MAC)、优化的单指令多数据
指令(SIMD)、饱和算数等多种数字信号处理指令集。
1.DSP运行库的搭建:
在MDK里面搭建M453的DSP运行环境(使用.lib方式)是很简单的,分为两个步骤,具体如下:
(1)添加文件
首先将C:Keil_v5ARMCMSISLibARM路径下的arm_cortexM4lf_main.lib文件复制到工程目录下,如下图:
(2)设置宏定义:
单击下图按钮
然后切换到C/C++选项卡,在Define文本框中添加如下宏定义:
ARM_MATH_CM4=1, __FPU_PRESENT=1, __FPU_USED,__CC_ARM,ARM_MATH_MATRIX_CHECK,ARM_MATH_ROUNDING
如图:
2.FFT介绍:FFT即快速傅里叶变换,可以将一个时域信号变换为频域。因为有些信号在时域
上是很难看出有什么特征的,但是如果变换到频域,就很容易看出其特征了,这就是很多信号
分析采用FFT的原因。
3.源代码:
4.实验效果图: