FLASH闪存(STM32)

发布时间:2026/10/6 14:11:44

FLASH闪存(STM32)
简介STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分通过闪存存储器接口外设可以对程序存储器和选项字节进行擦除和编程读写FLASH的用途利用程序存储器的剩余空间来保存掉电不丢失的用户数据通过在程序中编程IAP实现程序的自我更新在线编程In-Circuit Programming – ICP用于更新程序存储器的全部内容它通过JTAG、SWD协议或系统加载程序Bootloader下载程序在程序中编程In-Application Programming – IAP可以使用微控制器支持的任一种通信接口下载程序闪存非易失性掉电不丢失的存储器。闪存模块组织FLASH基本结构使用FPEC对程序存储器和选项字节的擦除和编程操作Flash需要先解锁。解锁向键寄存器里写入特定的值指针访问存储器stm32内部的存储器是直接挂在总线上的。这时再读取某个存储器就非常简单了。直接使用C语言的指针来访问即可。程序存储器编程操作片内 Flash 写入 16 位半字数据FLASH_CR的PG位FLASH写入功能的开关PG1开启半字编程模式允许向 Flash 地址写入 16 位数据PG0关闭写入仅可读。FLASH_SR的BSY位FLASH的状态寄存器BSY (Busy)1硬件正在执行烧写操作CPU 不能做任何 Flash 操作循环等待BSY0烧写动作硬件完成退出等待。1.解锁2.置FLASH_CR中的PG为1说明我要写入数据3.写入数据自动开启Flash_CR中的STRT为1触发开始条件4.等待BSY5.验证程序存储器页擦除1.解锁操作2.置Flash_CR中的PER位为1告诉他接下来进行页擦除操作3.在FLASH_AR地址寄存器中选择要擦除的页。4.置Flash_CR中的STRT为1触发条件5.等待BSY位6.验证程序存储器全擦除1.解锁操作2.置FALSH_CR中的MER 1;告诉他接下来我要进行全擦除操作3.置FLASH_CR中的STRT位1触发开始条件4.等待BSY位5.验证选项字节RDP写入RDPRT键0x000000A5后解除读保护USER配置硬件看门狗和进入停机/待机模式是否产生复位Data0/1用户可自定义使用WRP0/1/2/3配置写保护每一个位对应保护4个存储页中容量写入X的话要在nX里写入X对应的反码硬件自动执行选项字节编程选项字节的擦除快学完了有点激动。不想写了

相关新闻

PMP中文报名前必须搞定的5件事,现在就开始做!

PMP中文报名前必须搞定的5件事,现在就开始做!

2026/10/5 4:23:45

PM认证作为项目管理领域的“黄金证书”,含金量和职场认可度毋庸置疑。但很多人不知道的是,PMP报名分两步——先英文报名,再中文报名,顺序绝对不能乱。一旦通道关闭无补报机会。想要一次顺利报名、稳稳占住考位,中文报名…

Python操作电子表格和数据库实战

Python操作电子表格和数据库实战

2026/10/5 12:57:06

本次实战以VSCode为开发平台,系统讲解了Python在电子表格与数据库操作中的核心应用。在电子表格处理方面,借助openpyxl库实现了成绩表的自动化计算(总分、平均分、排名)与销售表的数据清洗(删除无效行、新增销售额字段…

个人博客搭建过程

个人博客搭建过程

2026/9/26 18:45:47

个人博客搭建过程 记录使用AtomCode搭建个人博客过程 提示词 怎样做一个开发人员自我介绍的个人博客帮我建一个个人博客添加简历信息将实际技能和经验更新到页面上检查并按自己需求完善界面将博客免费发布到公网后续根据Ai提示操作将博客发布到 GitHub Pages 摘要 本文详细…

CANN/GE ACL数据集缓冲区添加函数

CANN/GE ACL数据集缓冲区添加函数

2026/10/5 14:25:36

aclmdlAddDatasetBuffer 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、Te…

用ffmpeg高效批量调整图片尺寸的实战指南

用ffmpeg高效批量调整图片尺寸的实战指南

2026/10/5 16:54:26

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱

2026/10/5 11:17:40

Transformers 音频特征提取工具库 audio_utils 全解析:从 Mel 刻度换算到对数 Mel 频谱 【免费下载链接】transformers 🤗 Transformers: the model-definition framework for state-of-the-art machine learning models in text, vision, audio, and mu…

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南

2026/10/5 21:04:58

RustFS 多节点集群重启与滚动升级实战:Readiness、Quorum 与 Degraded 模式完全指南 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system sup…

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

Java Integer缓存揭秘:128陷阱原理、避坑与面试全解

2026/10/5 15:05:44

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据

2026/10/5 15:05:44

RustFS Scanner 数据用量发布权威性决策:配额准入如何获得可用的权威依据 【免费下载链接】rustfs 🚀2.3x faster than MinIO for 4KB object payloads. RustFS is an open-source, S3-compatible high-performance object storage system supporting mi…