STM32--DSP库使用(1)

16 篇文章 4 订阅
7 篇文章 0 订阅

STM32--DSP库使用

       数字信号处理(DigitalSignal Processing,简称 DSP)是一门涉及许多学科而又广泛应用于许多领 域的新兴学科。20 世纪 60 年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并 得到迅速的发展。在过去的二十多年时间里,数字信号处理已经在通信等领域得到极为广泛的应用。 数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估值、增强、 压缩、识别等处理,以得到符合人们需要的信号形式。

输入信号的形式

          在 DSP 系统中,输入信号可以有各种各样的形式。例如,它可以是麦克风输出的语音信号或是电话 线来的已调数据信号,可以是编码后在数字链路上传输或存储在计算机里的摄像机图像信号等。

        输入信号首先进行带限滤波和抽样,然后进行 A/D(Analog toDigital)变换将信号变换成数字比特 流。根据奈奎斯特抽样定理,为保证信息不丢失,抽样频率至少必须是输入带限信号最高频率的 2 倍。

         DSP 芯片的输入是 A/D 变换后得到的以抽样形式表示的数字信号,DSP 芯片对输入的数字信号进行 某种形式的处理,如进行一系列的乘累加操作(MAC)。数字处理是 DSP 的关键,这与其他系统(如电 话交换系统)有很大的不同,在交换系统中,处理器的作用是进行路由选择,它并不对输入数据进行修改。 因此虽然两者都是实时系统,但两者的实时约束条件却有很大的不同。最后,经过处理后的数字样值再经 D/A(Digital toAnalog)变换转换为模拟样值,之后再进行内插和平滑滤波就可得到连续的模拟波形。

        必须指出的是,上面给出的 DSP 系统模型是一个典型模型,但并不是所有的 DSP 系统都必须具有模 型中的所有部件。如语音识别系统在输出端并不是连续的波形,而是识别结果,如数字、文字等;有些输 入信号本身就是数字信号(如 CD:Compact Disk),因此就不必进行模数变换了。

数字信号处理系统

(1) 接口方便。DSP 系统与其他以现代数字技术为基础的系统或设备都是相互兼容的,与这样的系统 接口以实现某种功能要比模拟系统与这些系统接口要容易得多;

(2) 编程方便。DSP 系统中的可编程 DSP 芯片可使设计人员在开发过程中灵活方便地对软件进行修改 和升级;

(3) 稳定性好。DSP 系统以数字处理为基础,受环境温度以及噪声的影响较小,可靠性高;

(4) 精度高。16 位数字系统可以达到 10^(-5)的精度;

(5) 可重复性好。模拟系统的性能受元器件参数性能变化比较大,而数字系统基本不受影响,因此数 字系统便于测试、调试和大规模生产;

(6) 集成方便。DSP 系统中的数字部件有高度的规范性,便于大规模集成。

       当然,数字信号处理也存在一定的缺点。例如,对于简单的信号处理任务,如与模拟交换线的电话接 口,若采用 DSP 则使成本增加。DSP 系统中的高速时钟可能带来高频干扰和电磁泄漏等问题,而且 DSP 系统消耗的功率也较大。此外,D SP 技术更新的速度快,数学知识要求多,开发和调试工具还不尽完善。 虽然 DSP 系统存在着一些缺点,但其突出的优点已经使之在通信、语音、图像、雷达、生物医学、工业 控制、仪器仪表等许多领域得到越来越广泛的应用。

       ARM 公司推出的 Cortex-M4F 内核是带有 FPU,DSP 和 SIMD 单元的,针对这些单元也增加了专用指令,指 令如下:

ARM官方DSP库的移植

DSP库的下载

         DSP 库是包含在 CMSIS(Cortex Microcontroller Software Interface Standard)里面的,所以下 载 DSP 库也就是下载 CMSIS。有两个地方可以下载 CMSIS,一个是 ARM 官网,一个是 ST 官网。首先 说一下如何在 ARM 官网下载。 

第一步:登陆 ARM 官方网址:http://www.arm.com/zh/ 

第二步:注册一个 ID 号,ARM 官网不像 ST 官网,不注册就可以下载大部分资料,在 ARM 官网下 载资料一定要注册一个 ID。

第三步:具体注册过程就不多说了,按照提示步骤走即可。注册后可以简单的熟悉一下 ARM 官网的结构,然后查询我们需要下载的 CMSIS,也可以直接在这里检索 CMSIS 即可。

检索后打开界面如下:

点击进去后,如下就是我们要找的CMSIS

DSP库的说明

打开固件库里面的CMSIS文件,可以看到如下几个文件:

其中DSP_Lib中的文件如下:

Examples中的文件如下(这些是ARM官方提供的DSP实例):

Source中的文件如下(这些是DSP库的源文件):

一般情况下不建议将源文件加到工程里面,直接将ARM官方整理好的DSP库文件加入到工程中即可。不过需要查看库文件源码实现的话,可以加入源文件。
 Lib文件夹中就是DSP库文件
打开后主要有以下三个文件夹:

其中ARM文件夹中是我们可以加入到MDK中的DSP库,主要有以下几个版本:

其中最后一个arm_cortexM4lf_math.lib是用于Cortex-M4系列带FPU的DSP库文件(l表示小端格式,b表示大端格式)。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

甜航一直在

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值