STM32内部闪存FLASH(内部ROM)、IAP

1 FLASH简介

1 利用程序存储器的剩余空间来保存掉电不丢失的用户数据

2 通过在程序中编程(IAP)实现程序的自我更新 (OTA)

3在线编程(ICP把整个程序都更新掉)

1 系统的Bootloader写死了,只能用串口下载到指定的位置,启动方式也不方便需要配置BOOT引脚触发启动

4 IAP(自己写的Bootloader,实现程序升级)

1 比如蓝牙转串口,WIFI转串口,USB,然后控制FLASH读写,把收到的程序写在前面,程序正常运行的地方。写完之后在控制程序跳回程序正常运转的地方。
2 更进一步就是远程升级程序了

2 闪存模块组织

3 FLASH基本结构

4 FLASH解锁

5 使用指针访问存储器

1 读闪存的读写不需要解锁的,读取只看看存储器,不对存储器进行修改,不需要解锁(0x0800 0000是闪存(ROM))
2 指定地址下写入数据到存储器,需要解锁,RAM的不需要解锁

5 程序存储器全擦除

6 程序存储器页编程

7 程序存储器的写入(写入要擦除的, 跟W26Q64一样,0能变成1,1不能变成9)

8 选项字节

1 选项字节编程

9 器件电子签名

相关推荐
BackCatK Chen2 小时前
第 8 篇:TMC2240 电机正反转实现|DIR 引脚控制 + 代码优化(稳定不抖动)
stm32·单片机·嵌入式硬件·保姆级教程·电机正反转·tmc2240·dir引脚控制
星马梦缘3 小时前
EDA彩灯电路绘制
单片机·嵌入式硬件·物联网·pcb·eda·嘉立创
Forsete5 小时前
LINUX驱动开发#9——定时器
linux·驱动开发·单片机
Hello_Embed8 小时前
libmodbus 移植 STM32(USB 串口后端篇)
笔记·stm32·单片机·嵌入式·freertos·libmodbus
VekiSon9 小时前
Linux内核驱动——杂项设备驱动与内核模块编译
linux·c语言·arm开发·嵌入式硬件
来自晴朗的明天10 小时前
14、光耦隔离电路(EL3H7)
单片机·嵌入式硬件·硬件工程
G***技10 小时前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网
czhaii11 小时前
STC AI8052U单片机特点
单片机
MAR-Sky11 小时前
keil5中数据的不同定义和单片机(以stc8为例)里的对应关系(idata,xdata,data,code)
单片机·嵌入式硬件
项目題供诗13 小时前
51单片机入门(八)
单片机·嵌入式硬件·51单片机