STM32-DSP库的使用一.CMSIS-DSP1.1DSP库简介1.2支持的函数类别1.3宏定义二、操作2.1STM32CubeMX配置基本工程2.2Lib库的方式实现(推荐)2.3手动添加DSP文件(可以下载官方最新库,功能齐全)三、MFCC测试DSP加速效果为验证语音识别MFCC用到快速傅里叶变换FFT,在工程中应用DSP库时对着网上各种教程暴雷难受,希望给大家提供帮助;并且以lib库、手动src移植两种方式分别实现;测试环境Crotex-M4实测有效(相比于Cortex-M3增加了浮点运算单元和数字信号处理(DSP)指令集,适用于需要处理复杂算法的应用);一.CMSIS-DSP1.1D
时间记录:2024/1/5一、USART/UART介绍协议介绍(1)起始位,一位逻辑电平0表示(2)数据位,8-9位,逻辑高低电平,一般使用8位(3)校验位,分为奇校验、偶校验、无校验(4)停止位,0.5、1、1.5、2个逻辑电平1表示(5)波特率,数据传输的速度,1S发送接收的比特位数,常用的115200、9600串口介绍串口1: TX:PA9RX:PA10串口2: TX:PA2RX:PA3串口3: TX:PB10RX:PB11二、以串口1为例实现数据的收发(1)使能GPIO时钟,配置GPIO端口RCC_APB2PeriphClockCmd(RCC_APB2Periph_G
STM32工程模板没有统一的格式,可以参考ST官方的示例模板或者根据自己的开发经验和使用习惯总结。ProjectTemplate文档以库函数工程模板为例,HAL库工程模板对应参考即可。OfficialProjectTemplateST发布的标准外设库(STM32StandardPeripheralLibraries)中都会包含示例工程模板。以笔者正在使用的STM32L151RET6为例,截止在写这篇文档的时候最新的版本为1.4.0。示例工程模板路径为en.stsw-stm32077_v1-4-0\STM32L1xx_StdPeriph_Lib_V1.4.0\Project\STM32L1xx_
文章目录一:OLED调试工具1.1OLED显示屏介绍1.2实验:在OLED显示屏的使用1.3自己新增功能测试道友:今天没有开始的事,明天绝不会完成。一:OLED调试工具1.1OLED显示屏介绍学习任何一门语言就需要进行调试,stm32调试方式主要有以下三种:串口调试:通过串口,将调试信息发送到电脑端,电脑端使用串口调试助手显示调试信息。显示屏调试:直接将显示屏连接到单片机,将调试信息打印在显示屏上。Keil调试模式:借助Keil软件的调试模式,可使用单步运行、设置断点、查看寄存器及变量等功能。点灯调试法:在程序的某个关键位置设置点灯的代码,用于指示程序是否运行到该位置。注释调试法:将可能有问题
1什么是GPIO GPIO就是通用输入输出端口的简称,GPIO是一种灵活的引脚(或针脚)配置,允许微控制器与外部世界进行数字输入和输出的通信。每个GPIO引脚可以被配置为输入或输出,从而使它们能够执行各种不同的任务。STM32芯片的GPIO被分成很多组,每组有16个引脚(也有可能少于16个),如型号为STM32F103VET6型号的芯片有GPIOA、GPIOB、GPIOC至GPIOE共5组GPIO,该芯片一共100个引脚,其中GPIO引脚就占了一大部分,所有的GPIO引脚都有基本的输入输出功能。最基本的输出功能是由STM32控制引脚输出高、低电平,实现开关控制,如把GPIO引脚接
本程序是在keil5软件下使用标准库编程的,纯自己手打,包含详细的代码注释。首先就是PWM模块,次模块用于改变小车的转速,本项目用一个L98N电机驱动模块,将左边的两个轮子连接在一个L98N电机驱动模块输出引脚,将坐标的两个轮子连接在L298N的另外一个输出引脚,由此控制四个轮子的转动。下面是PWM模块的代码PWM.c#include"stm32f10x.h"//Deviceheader//用两个定时器产生PWM波形,分别控制两侧电机//PA6、PA7、PA8、PA9四个引脚分别产生四个PWM波形控制左轮前进调速、左轮后退调速、右轮前进调速、右轮后退调速//其中轮子的前进和后退输出的PWM波形
文章目录1.STM32程序升级方法1.1ST-Link/J-link下载1.2ISP(InSystemPrograming)1.3IAP(InApplicatingPrograming)1.3.1正常程序运行流程1.3.2有IAP时程序运行流程2.STM32Bootloader实现2.1方式一:Boot_App(已实现)2.1.1Bootloader2.1.2APP2.1.3测试2.2方式二:其他接口/USB拖拽等(未完成)====>>>文章汇总1.STM32程序升级方法1.1ST-Link/J-link下载这个应该是最基本的方法,只要自己写过程序的应该都会,将编译生成的hex文件使用ST-L
1、准备材料开发板(正点原子stm32f407探索者开发板V2.4)STM32CubeMX软件(Version6.10.0)野火DAP仿真器keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动XCOMV2.6串口助手2、实验目标使用STM32CubeMX软件配置STM32F407开发板的PWR电源管理,并了解STM32的睡眠、停止和待机模式3、实验流程3.0、前提知识3.0.1、睡眠模式睡眠模式可以立即进入,也可以在退出优先级最低的中断时再进入,在进入睡眠模式前可以通过HAL_PWR_EnableSleepOnExit()/HAL_PWR_DisableSleepOnExi
文章目录输出比较单元特点高级定时器:均有4个通道PWM简介PWM(PulseWidthModulation)脉冲宽度调制输出比较通道PWM基本结构基本定时器参数计算捕获/比较通道的输出部分详细介绍如下:舵机介绍硬件电路直流电机介绍:直流电机驱动代码输出比较(库函数)输出比较单元名词解释ICinputcapture输入捕获OCoutpucompare输出比较CCcapturecompare输入捕获和输出比较的单元OC(OutputCompare)输出比较:用来输出PWM波形特点输出比较可以通过比较CNT(计数器)与CCR(捕获/比较)寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输
00.目录文章目录00.目录01.I2C简介02.MPU6050参数03.软件I2C接线图04.I2C模拟应答时序示例05.I2C读取MPU6050程序示例06.程序下载07.附录01.I2C简介I2C(Inter-IntegratedCircuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。串行的8位双向数据传输位速率在标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s。I2C是一个多主机的总线