当前位置: 首页 > news >正文

STM32使用DSP库 Keil方式添加

文章目录

  • 前言
  • 一、添加DSP库
  • 二、使能FPU及配置
    • 1. 使能FPU
    • 2. 增加编译的宏
    • 3.增加头文件的检索路径
  • 三. 验证
    • 1. 源码中添加
    • 2.代码测试


前言

添加DSP有两种方案,本文采用的是是Keil 中添加。


一、添加DSP库

在创建好的工程中添加DSP库:步骤如下:
在这里插入图片描述
步骤1:选择运行环境管理;
步骤2:选择需要添加DSP库,此处使用Library的方式添加。

添加成功后,在工程中的显示如下:
在这里插入图片描述
注意:添加库的名称必须是arm_cortexM4lf_math.lib,否则会有问题。
注:‘b’表示大端格式(Big Endian),‘l’表示小端格式(Little Endian),‘f’表示带浮点数。

二、使能FPU及配置

1. 使能FPU

选择魔法棒,配置FPU。
在这里插入图片描述

2. 增加编译的宏

在这里插入图片描述
增加编译选项,ARM_MATH_CM4 根据对应的芯片进行修改:F1是M3,F4是M4,H7是M7

ARM_MATH_CM4

注意:如果没有添加ARM_MATH_CM4,则在编译的时候会出现如下错误:

..\Drivers\CMSIS\DSP\Include\arm_math.h(341): error:  #35: #error directive: "Define according the used Cortex core ARM_MATH_CM7, ARM_MATH_CM4, ARM_MATH_CM3, ARM_MATH_CM0PLUS, ARM_MATH_CM0, ARM_MATH_ARMV8MBL, ARM_MATH_ARMV8MML"#error "Define according the used Cortex core ARM_MATH_CM7, ARM_MATH_CM4, ARM_MATH_CM3, ARM_MATH_CM0PLUS, ARM_MATH_CM0, ARM_MATH_ARMV8MBL, ARM_MATH_ARMV8MML"
..\Core\Src\App\AppTaskMain.c: 0 warnings, 1 error

注意:新版CMSIS库可能需要定义__TARGET_FPU_VFP=1和ARM_MATH_CM4等宏来启用FPU。如果提示错误缺少FPU,则需要添加如下宏:

__TARGET_FPU_VFP,__FPU_PRESENT=1U

3.增加头文件的检索路径

在这里插入图片描述
在这里插入图片描述
增加DSP的头文件检索路径,注意该路径为:…\Drivers\CMSIS\DSP\Include
否则会出现大量的错误,如下所示:

C:\Users\qinbo\AppData\Local\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS\DSP\Include\arm_math.h(6491): error:  #65: expected a ";"int32_t i;                                   

相关文章:

STM32使用DSP库 Keil方式添加

文章目录 前言一、添加DSP库二、使能FPU及配置1. 使能FPU2. 增加编译的宏3.增加头文件的检索路径三. 验证1. 源码中添加2.代码测试前言 添加DSP有两种方案,本文采用的是是Keil 中添加。 一、添加DSP库 在创建好的工程中添加DSP库:步骤如下: 步骤1:选择运行环境管理; 步…...

【机器学习实战入门项目】MNIST数字分类机器学习项目

Python 深度学习项目:手写数字识别 为了使机器更加智能,开发者们正在深入研究机器学习和深度学习技术。人类通过不断练习和重复来学习执行某项任务,从而记住如何完成这些任务。然后,大脑中的神经元会自动触发,他们能够…...

利用 LNMP 实现 WordPress 站点搭建

部署MySQL数据库 在主机192.168.138.139主机部署数据库服务 包安装数据库 apt-get install mysql-server 创建wordpress数据库和用户并授权 mysql> create database wordpress;#MySQL8.0要求指定插件 mysql> create user wordpress192.168.138.% identified with mys…...

模块化架构与微服务架构,哪种更适合桌面软件开发?

前言 在现代软件开发中,架构设计扮演着至关重要的角色。两种常见的架构设计方法是模块化架构与微服务架构。它们各自有独特的优势和适用场景,尤其在C#桌面软件开发领域,模块化架构往往更加具有实践性。本文将对这两种架构进行对比&#xff0…...

2025.1.17——1200

2025.1.17——1200 Q1. 1200 Jellyfish has n n n green apples with values a 1 , a 2 , … , a n a_1, a_2, \dots, a_n a1​,a2​,…,an​ and Gellyfish has m m m green apples with values b 1 , b 2 , … , b m b_1,b_2,\ldots,b_m b1​,b2​,…,bm​. They will …...

vite工程化

Vite 通过直接利用浏览器的模块加载能力、将 CommonJS 模块转换为 ES 模块并缓存结果、基于原生 ES 模块的 HMR 以及对 TypeScript 的直接支持,提供了更快的开发体验和更高的开发效率。 1.直接利用浏览器模块加载功能 更快加载速度:不需要打包&#xf…...

Mysql常见问题处理集锦

Mysql常见问题处理集锦 root用户密码忘记,重置的操作(windows上的操作)MySQL报错:ERROR 1118 (42000): Row size too large. 或者 Row size too large (> 8126).场景:报错原因解决办法 详解行大小限制示例:内容来源于网…...

Android SystemUI——CarSystemBar添加到窗口(十)

上一篇文章我们看到了车载状态栏 CarSystemBar 视图的创建流程,这里我们继续分析将车载状态栏添加到 Windows 窗口中。 一、添加状态栏到窗口 前面我们已经分析了构建视图对象容器和构建视图对象内容,接下来我们继续分析 attachNavBarWindows() 方法将视…...

《重生到现代之从零开始的C++生活》—— 类和对象1

类 我嘞个豆,类可是太重要了,简直是重中之重 class为定义类的关键字,stack为类的名字,{}为类的主题 class stack {void add (int a,int b){return ab;}//类的方法,成员函数int _c;int _d;//类的属性,成…...

《FMambaIR:一种基于混合状态空间模型和频域的方法用于图像恢复》学习笔记

paper:(PDF) FMambaIR: A Hybrid State Space Model and Frequency Domain for Image Restoration 目录 摘要 一、引言 二、相关工作 1、图像恢复 2、频率学习 3、状态空间模型(SSM) 三、框架 1、基本知识 2、整体框架 3、F-Mamba…...

每日十题八股-2025年1月18日

1.服务器处理并发请求有哪几种方式? 2.讲一下io多路复用 3.select、poll、epoll 的区别是什么? 4.epoll 的 边缘触发和水平触发有什么区别? 5.redis,nginx,netty 是依赖什么做的这么高性能? 6.零拷贝是什么…...

海康威视摄像头RTSP使用nginx推流到服务器直播教程

思路: 之前2020年在本科的时候,由于项目的需求需要将海康威视的摄像头使用推流服务器到网页进行直播。这里将自己半个月琢磨出来的步骤给大家发一些。切勿转载!!!! 使用网络摄像头中的rtsp协议---------通…...

搭建一个基于Spring Boot的书籍学习平台

搭建一个基于Spring Boot的书籍学习平台可以涵盖多个功能模块,例如用户管理、书籍管理、学习进度跟踪、笔记管理、评论和评分等。以下是一个简化的步骤指南,帮助你快速搭建一个基础的书籍学习平台。 — 1. 项目初始化 使用 Spring Initializr 生成一个…...

Go 语言的slice是如何扩容的?

Go 语言中的 slice 是一种灵活、动态的视图,是对底层数组的抽象。当对 slice 进行追加元素等操作导致其长度超过容量时,就会发生扩容。 一、扩容的基本原理 当 slice 需要扩容时,Go 语言会根据当前的容量来确定新的容量。一般来说&#xff…...

Apache Hive--排序函数解析

在大数据处理与分析中,Apache Hive是一个至关重要的数据仓库工具。其丰富的函数库为数据处理提供了诸多便利,排序函数便是其中一类非常实用的工具。通过排序函数,我们能够在查询结果集中为每一行数据分配一个排名值,这对于数据分析…...

Java 接口安全指南

Java 接口安全指南 概述 在现代 Web 应用中,接口(API)是前后端交互的核心。然而,接口的安全性常常被忽视,导致数据泄露、未授权访问等安全问题。本文将详细介绍 Java 中如何保障接口安全,涵盖以下内容&am…...

合合信息名片全能王上架原生鸿蒙应用市场,成为首批数字名片类应用

长期以来,名片都是企业商务沟通的重要工具。随着企业数字化转型,相较于传统的纸质名片,数字名片对于企业成员拓展业务、获取商机、提升企业形象等方面发挥着重要作用。近期,合合信息旗下名片全能王正式上线原生鸿蒙应用市场&#…...

38.【3】CTFHUB web sql 报错注入

进入靶场 按照提示输入1 显示查询正确 既然是报错注入,先判断整形还是字符型注入 先输入1 and 11 再输入1 and 12 都显示查询正确,可知此为字符串型注入,不是数字型注入 然后就不会了 求助AI和其他wp 由以上2张搜索结果知updatexml是适用…...

RC2在线加密工具

RC2是由著名密码学家Ron Rivest设计的一种传统对称分组加密算法,它可作为DES算法的建议替代算法。RC2是一种分组加密算法,RC2的密钥长度可变,可以从8字节到128字节,安全性选择更加灵活。 开发调试上,有时候需要进行对…...

NVIDIA 下 基于Ubuntun20.04下 使用脚本安装 ros2-foxy 和 使用docker安装 ros2-foxy

一、前提介绍: 本文主要采用两种方式在NVIDIA 下基于 Ubuntun20.04安装 ros2-foxy。 使用环境: NVIDIA 为 Jetson 系列下 Jetson Xavier NX; Ubuntun版本:20.04 二、安装方法: 1、使用脚本编译方式: 使…...

GraphRAG v2.7.0实战:用《圣诞颂歌》小说快速构建你的第一个知识图谱问答系统

GraphRAG v2.7.0实战:用《圣诞颂歌》构建知识图谱问答系统 狄更斯的《圣诞颂歌》不仅是一部经典文学作品,更是一个充满丰富人物关系和情节转折的完美知识图谱样本。当技术爱好者第一次接触GraphRAG时,最迫切的需求往往不是理论讲解&#xff0…...

前端使用AI试水报告旁

1 实用案例 1.1 表格样式生成 本示例用于生成包含富文本样式与单元格背景色的Word表格文档。 模板内容: 渲染代码: # python-docx-template/blob/master/tests/comments.py from docxtpl import DocxTemplate, RichText # data: python-docx-temp…...

ComfyUI-Inpaint-CropAndStitch终极指南:掌握图像智能修复与拼接的5个核心技巧

ComfyUI-Inpaint-CropAndStitch终极指南:掌握图像智能修复与拼接的5个核心技巧 【免费下载链接】ComfyUI-Inpaint-CropAndStitch ComfyUI nodes to crop before sampling and stitch back after sampling that speed up inpainting 项目地址: https://gitcode.com…...

Onekey Steam Depot清单下载工具:技术原理与实战指南

Onekey Steam Depot清单下载工具:技术原理与实战指南 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey Steam游戏清单获取不再是技术难题——Onekey工具通过自动化流程简化Depot清单下…...

高效解密网易云音乐NCM格式的专业解决方案

高效解密网易云音乐NCM格式的专业解决方案 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 在数字音乐版权保护的背景下,网易云音乐采用的NCM加密格式为用户带来了跨平台播放的挑战。这种专有格式虽然有效保护了音乐版权&…...

Kandinsky-5.0-I2V-Lite-5s开源镜像实操:offload+sdpa显存优化部署指南

Kandinsky-5.0-I2V-Lite-5s开源镜像实操:offloadsdpa显存优化部署指南 1. 开篇介绍 Kandinsky-5.0-I2V-Lite-5s是一款轻量级图生视频模型,它能够将静态图片转化为动态视频。只需上传一张首帧图片,再补充一句运动或镜头描述,就能…...

DDrawCompat:让经典Windows游戏在现代系统上焕发新生的终极兼容性方案

DDrawCompat:让经典Windows游戏在现代系统上焕发新生的终极兼容性方案 【免费下载链接】DDrawCompat DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11 项目地址: https://gitcode.com/gh_mi…...

Pyenv vs Miniconda vs Anaconda:Python环境管理实战对比

1. Python环境管理工具全景概览 刚接触Python开发时,最让我头疼的就是环境配置问题。同一个项目在不同电脑上跑出不同结果,安装包时各种依赖报错,这些经历相信很多开发者都遇到过。Python环境管理工具就是为解决这些问题而生的,它…...

intv_ai_mk11应用场景:产品经理用它输出PRD大纲、用户故事、竞品功能对比表

intv_ai_mk11在产品管理中的应用:PRD大纲、用户故事与竞品分析实战 1. 产品经理的AI助手新选择 作为产品经理,每天都要处理大量文档工作:撰写产品需求文档(PRD)、梳理用户故事、进行竞品分析...这些工作既重要又耗时。传统方式下&#xff0…...

Wan2.2-I2V-A14B开发环境配置:Windows系统下利用WSL2搭建Linux开发环境

Wan2.2-I2V-A14B开发环境配置:Windows系统下利用WSL2搭建Linux开发环境 1. 为什么选择WSL2进行开发 对于Windows系统下的开发者来说,WSL2(Windows Subsystem for Linux 2)提供了一个近乎完美的Linux开发环境解决方案。相比传统的…...