一、固件介绍1、先从网站上找到STM32F4xx固件文件 (文件名为STM32F4xx_DSP_StdPeriph_Lib_V1.4.0),这里我上传到了。 2、解压打开。 3、Libraries文件夹,里面有CMSIS、和STM32F4xx_StdPeriph_Driver两个文件夹,CMSIS 文件夹存放的是符合 CMSIS 规范的一些文件。包括 STM32F4 核内外设访问层代码,DSP
引言  使用STM32Cube开发东西最怕的就是写的代码太多,为什么呢?因为不会写,我深有体会。SPI通讯是一种常用的常用的通讯方式,同步、串行。同步代表着实时性好,串行代表着接线少,很多的设备愿意采用这种方法,废话少说,关于SPI通讯的由来,基本的原理可以百度,我这里介绍用STM32F103ZET6和W25Q64开发SPI通讯。使用的工具SMT32F103的开发板,SPI连接了W25Q
STM32F4 的定时器功能十分强大,有TIME1 和 TIME8 等高级定时器,也有 TIME2-TIME5,TIM9-TIM14 等通用定时器,还有 TIME6 和 TIME7 等基本定时器,总共达 14 个定时器之多。STM32F4 定时器分类(共14个):高级定时器:TIME1 、TIME8通用定时器: TIME2-TIME5,TIM9-TIM14基本定时器: TIME6 、 TIME7S
文章目录摘要创建工程配置外设与IO配置RCC与Debug选择GPIO引脚与功能配置GPIO时钟配置工程输出设置编写用户代码插入用户代码编译下载代码进入单片机 摘要  本章讲解STM32 GPIO的输入与输出,以使用一个按键控制一个LED灯的亮与灭。创建工程   打开STM32CubeMX,新建工程,选择单片机型号,这里以STM32F411CEU6为例。新建工程可参考 STM32CubeMX系列教
第25章       DSP变换运算-快速傅里叶变换原理(FFT)在数字信号处理中常常需要用到离散傅立叶变换(DFT),以获取信号的频域特征。尽管传统的DFT算法能够获取信号频域特征,但是算法计算量大,耗时长,不利于计算机实时对信号进行处理。因此导致DFT被发现以来,在很长的一段时间内都不能被应用到实际工程项目中,直到一种快速的离散傅立叶
转载 2024-05-20 22:17:34
392阅读
第33章       STM32H7不限制点数FFT实现本章主要讲解不限制点数FFT的实现。目录33.1 初学者重要提示33.2 不限制点数FFT移植33.2.1 移植FFT相关文件33.2.2 添加路径33.3 不限制点数FFT应用说明33.3.1 支持的点数范围33.3.2 函数InitTableFFT33.3.3 函数cfft33.
转载 4月前
127阅读
STM32开发1. 简介2. STM32启动文件3. CMSIS3.1 CMSIS结构3.2 CMSIS框架4. STM32CubeG04.1 STM32CubeG0固件结构4.1.1 Level 04.1.2 Level 14.2.2 Level 2 1. 简介STM32CubeG0 githubCMSIS on GitHubSTM32CubeG0:为STM32G0 Series提供封装官方从
目录1、准备材料2、实验目标3、实验流程3.0、前提知识3.1、CubeMX相关配置3.1.0、工程基本配置3.1.1、时钟树配置3.1.2、外设参数配置3.1.3、外设中断配置3.2、生成代码3.2.0、配置Project Manager页面3.2.1、外设初始化调用流程3.2.2、外设中断调用流程3.2.3、添加其他必要代码4、常用函数5、烧录验证6、注释详解参考资料1、准备材料开发板(正点原
转载 2024-08-31 23:32:47
636阅读
简介:本文分两种方法添加DSP:1.CubeMX直接配置ioc添加; 2.KEIL内添加;一、MX直接配置DSP简述:补齐全部lib->添加DSP包->使能DSP勾选->添加头文件及魔术棒配置->测试 1.补齐lib。( 如果使用直接默认添加,是不支持FPU的,所以需要补齐后找到所需的lib文件进行替换,在MX的工程管理栏,选择复制所有)。此处添加DSP文件
本篇记录KEIL调用GCC编译STM32  需要准备的工具有 GCC编译器;我的版本5.4 下载地址https://launchpad.net/gcc-arm-embedded/  KEIL;我的版本是5.23  STM32对应的固件;我的版本是F10x3.5  一个已经配置好的STM32工程,led闪烁什么的都行,具体可参照正点原子的教程。 &
转载 5月前
86阅读
一.再userr文件夹里创建一个自己要写程序的文件夹一个c文件一个头文件添加进去之后(不要忘记了指定寻找的路径)例如:使用gpio开控制led的亮灭。主要操作的就是着三个函数。二.在bsp_led_c里面要包含对应的h文件,main.c文件里面也需要添加而且也还需要添加stm3210x.h文件。如果没有上图那些h文件编译一下就有了。硬件相关的可以定义成宏使用起来方便(提高程序的可读性)。三.我们使
STM32CubeMX 真的不要太好用由于工作内容的变动,我已经很久没有正经的玩过单片机了,近期又要用它做个小玩意了,还是选 stm32 吧,外设开发不要太方便,哈哈哈先去 stm32 社区逛了逛,发现了一个新字眼 STM32CubeMX,简单看了下,大概明白是个 ST 公司新推出的一个配置工具,直接由图形界面简单配置下,生成初始化代码,并对外设做了进一步的抽象,让开发人员更只专注应用的开发,挺
转载 2024-06-19 19:44:29
461阅读
多级流水线结构类似并行运算,取指、解码、运算在同一时刻进行,加快程序运行速度。Cortex-M3 内核三个特殊的寄存器R13、R14、R15 R13:堆栈; R14 :LR寄存器,链接寄存器。保存调用子程序的地址。 R15:程序计数器。 另外还有一个特殊的寄存器 状态寄存器,通常用在操作系统中。时钟时钟是同步电路的心脏,要让时钟先振动起来,然后才能工作。所以分析电路,不论是板级电路,还是某个外设,
前言博文基于ARM Cortex-M3内核的STM32F103ZET6芯片和标准3.5.0;博文介绍标准中个文件夹的含义和以及一个简单工程的建立;如有不足之处还请博友多多指教;标准的下载标准的获取方式: 第一步:第二步:依次进行下列操作 在下面这个表格里,能看到很多系列的标准,可以根据自己需求选择;这里我选择STM32F10x系列; (下面这个表格是根据芯片选择的,或许有人会有一个疑问:
第六章STM32Cube固件包第四章我们通过STM32CubeIDE在线下载了一个STM32Cube固件包,STM32CubeMX插件就是利用这个固件包来生成初始化代码的,大家肯定好奇这个固件包里有什么?是做什么用的?和HAL有什么关系?本章节我们就来分析这个固件包。 本章将分为如下几个小节: 6.1、获取STM32Cube固件包; 6.2、STM32CubeMP1固件包目录结构; 6.3、CM
关于STM32F407芯片结构的个人认知1.芯片内部结构(不深究)* 内核就相当于我们电脑中的CPU,它通过总线矩阵与Flash,SRAM,等相连。而FLASH, RAM 和片上外设,这些功能部件共同排列在一个 4GB 的地址空间内(也就是存储器),我们在编程的时候,操作的也正是这些功能部件。 那么我们就会不禁想到,存储器是怎么给Flash,SRAM分配空间的呢?存储器映射存储器本身不具有地址信息
开发板:秉火-霸道V1 芯片:STM32F103ZET6 GPIO: PB0配置GPIO在右下角搜索框内输入对应的GPIO,图中会闪烁显示,我们配置成输出模式 我们进一步完成GPIO的设置,点击System Core选择GPIO,接着点击图中序号3的位置,会出来GPIO的标签属性 配置 PB0 的默认电平,开漏输出,无上下拉,低速模式。引脚标签为 LED 接着选择 Project Manager
LL(Low Layer)是ST最近新增的,更接近硬件层,直接操作寄存器。其支持所有外设。今天我们通过STM32CubeMX建立一个LL工程,使用小熊派BearPi开发板,芯片型号为STM32L431RCT6。一、工程建立步骤1、工程初步建立和保存 2、配置时钟源(RCC设置) 3、GPIO引脚功能设置 4、外设初始化配置 5、生成工程源码 6、编写用户程序二、工程建立1、工程初步建立和保存
STM32的官方工程模板 修改为我们这套教材的:STM32 C++工程模板我使用的 STM32 的版本 : V3.5.0注意:想学习本套 STM32 C++编程 的专栏是有点门槛的。你需要有一点点 STM32 基础 和 一点点 C++ 语言基础。完整的STM32 C++工程模板 的下载地址可以在本篇博客的最下面找到。下面是:将 STM32的官方工程模板 修改为我们这套教材的 STM32 C+
搭建工程1、配置工程属性2、确认时钟源3、配置系统时钟4、配置定时器这里选择的定时器为TIM3,定时时间为1ms 把定时器设置自动重装载寄存器 ARR 的值为 1000,设置时钟预分频器为 71,则驱动计数器的时钟: CK_CNT = CK_INT / (71+1)=1M,则计数器计数一次的时间等于: 1/CK_CNT=1us,当计数器计数到 ARR 的值 1000 时,产生一次中断,则中断一次的
  • 1
  • 2
  • 3
  • 4
  • 5