STM32F407: CMSIS-DSP库的移植(基于源码)

news/2024/6/3 16:38:26 标签: stm32, arm开发, 嵌入式硬件, CMSIS-DSP

上一篇:STM32F407: CMSIS-DSP库的移植(基于库文件)-CSDN博客

1. 拷贝源码

仿照官方源码目录,新建一个source目录:\Drivers\CMSIS\DSP\Source

将所有源文件拷贝过来,如下:

然后在每个目录下新建一个总的c文件,包含同个目录下的其他所有源文件,比如BasicMathFunctions下新建一个BasicMathFunctions.c:

其内容如下:

#include "arm_abs_f32.c"

#include "arm_abs_q7.c"

#include "arm_abs_q15.c"

#include "arm_abs_q31.c"

#include "arm_add_f32.c"

#include "arm_add_q7.c"

#include "arm_add_q15.c"

#include "arm_add_q31.c"

#include "arm_dot_prod_f32.c"

#include "arm_dot_prod_q7.c"

#include "arm_dot_prod_q15.c"

#include "arm_dot_prod_q31.c"

#include "arm_mult_f32.c"

#include "arm_mult_q7.c"

#include "arm_mult_q15.c"

#include "arm_mult_q31.c"

#include "arm_negate_f32.c"

#include "arm_negate_q7.c"

#include "arm_negate_q15.c"

#include "arm_negate_q31.c"

#include "arm_offset_f32.c"

#include "arm_offset_q7.c"

#include "arm_offset_q15.c"

#include "arm_offset_q31.c"

#include "arm_scale_f32.c"

#include "arm_scale_q7.c"

#include "arm_scale_q15.c"

#include "arm_scale_q31.c"

#include "arm_shift_q7.c"

#include "arm_shift_q15.c"

#include "arm_shift_q31.c"

#include "arm_sub_f32.c"

#include "arm_sub_q7.c"

#include "arm_sub_q15.c"

#include "arm_sub_q31.c"

其他目录下类似(详细过程略)。

注:比较新的库版本,已经自带了这个文件,就不需要去做这份工作了,如果是移植比较旧的版本,就需要去做这部分的工作。

2. 关联KEIL工程

新建目录:Drivers/CMISIS/DSP,将包含各自源码的总文件添加进来。

注:要把库文件移掉(现在是直接使用源码)。

3. 测试

跟库文件移植同样的测例。


http://www.niftyadmin.cn/n/5175017.html

相关文章

Java15新增特性

前言 前面的文章,我们对Java9、Java10、Java11、Java12 、Java13、Java14 的特性进行了介绍,对应的文章如下 Java9新增特性 Java10新增特性 Java11新增特性 Java12新增特性 Java13新增特性 Java14新增特性 今天我们来一起看一下Java15这个版本的一些重要…

STM32一

0.前言 在B站经常看见有人用stm32做出了有趣的电子小玩艺儿,感到很羡慕,于是想了解一下。 1.什么是stm32 STM32 是一系列由STMicroelectronics(意法半导体)公司设计和制造的32位ARM Cortex-M微控制器。这一系列的微控制器广泛用…

Doris:读取Doris数据的N种方法

目录 1.MySQL Client 2.JDBC 3. 查询计划 4.Spark Doris Connector 5.Flink Doris Connector 1.MySQL Client Doris 采用 MySQL 协议,高度兼容 MySQL 语法,支持标准 SQL,用户可以通过各类客户端工具来访问 Doris。登录到doris服务器后&a…

【Python】Matplotlib-多张图像的显示

一,情景描述 大家在写论文或者实验报告的时候,经常会放多张图片或数据图像在一起形成对比。比如,我现在有一张经过椒盐噪声处理的图像,现在进行三种滤波,分别是均值,高斯,中值滤波,…

【c++随笔12】继承

【c随笔12】继承 一、继承1、继承的概念2、3种继承方式3、父类和子类对象赋值转换4、继承中的作用域——隐藏5、继承与友元6、继承与静态成员 二、继承和子类默认成员函数1、子类构造函数 二、子类拷贝构造函数3、子类的赋值重载4、子类析构函数 三、单继承、多继承、菱形继承1…

如何把一个接口设计好?

如何把一个接口设计好? 如何设计一个接口?是在我们日常开发或者面试时经常问及的一个话题。很多人觉得这不就是CRUD,能实现不就行了。单纯实现来说,并非难事,但要做到易用、易扩展、易维护并不是一件简单的事。这里并…

Java实现音频转码,WAV、MP3、AMR互转

1.背景 最近在集成一款产品支持语音双向对讲,首先是采集小程序的音频下发给设备端,然后可以控制设备录音生成音频链路让小程序播放。在这个过程中发现,设备除了AMR格式的音频外,其他的音频都不支持,而微信小程序有不支…

9 Go的结构体

概述 在上一节的内容中,我们介绍了Go的函数,包括:函数定义、函数声明、函数调用、可变参数函数、匿名函数、递归函数、高阶函数等。在本节中,我们将介绍Go的结构体。在Go语言中,结构体是一种用户定义的数据类型&#x…