STM32下flash的读写

本文介绍了STM32中的Flash作为数据存储的用途,详细阐述了如何在STM32CUBEMX和Keil环境下配置工程,包括芯片选择、时钟配置、引脚配置、时钟设置和堆栈大小调整。接着讲解了在Keil中添加代码并进行编译、调试的过程,包括添加内存观察窗口和变量观察,验证了Flash数据的成功读写。
摘要由CSDN通过智能技术生成


一、STM32中的flash是什么?

在我们应用开发时,经常会有一些程序运行参数需要保存,如一些修正系数。这些数据的特点是:数量少而且不需要经常修改,但又不能定义为常量,因为每台设备可能不一样而且在以后还有修改的可能。将这类数据存在指定的位置,需要修改时直接修改存储位置的数值,需要使用时则直接读取,会是一种方便的做法。考虑到这些数据量比较少,使用专门的存储单元既不经济,也没有必要,而STM32F103内部的Flash容量较大,而且ST的库函数中还提供了基本的Flash操作函数,实现起来也比较方便。

以大容量产品STM32F103VE为例,其Flash容量达到512K,可以将其中一部分用作数据存储。如下是大容量的Flash组织模式:
在这里插入图片描述
如下图是Flash写的过程:
在这里插入图片描述

如下为Flash全擦除过程:
在这里插入图片描述
参考博客:https://blog.csdn.net/qq_41069421/article/details/90179965

二、STM32CUBEMX和KEIL下的相关配置

1.STM32CUBEMX下的工程配置

我们首先进行芯片的选择,在这里我选择的是F103C8:
在这里插入图片描述
之后我们进行定时器的配置,在此处选择SysTick:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值