vs2008网站消息弹窗怎么做,网站建设策划书是有谁编写的,莱州网络公司,婚恋网站建设需求文档00. 目录 文章目录 00. 目录01. FLASH简介02. 闪存模块组织03. FLASH基本结构04. FLASH解锁05. 使用指针访问存储器06. 程序存储器编程07. 选项字节08. 选项字节编程09. 选项字节擦除10. 器件电子签名11. 附录 01. FLASH简介 STM32F1系列的FLASH包含程序存储器、系统存储器和选…00. 目录 文章目录 00. 目录01. FLASH简介02. 闪存模块组织03. FLASH基本结构04. FLASH解锁05. 使用指针访问存储器06. 程序存储器编程07. 选项字节08. 选项字节编程09. 选项字节擦除10. 器件电子签名11. 附录 01. FLASH简介 STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分通过闪存存储器接口外设可以对程序存储器和选项字节进行擦除和编程 读写FLASH的用途 利用程序存储器的剩余空间来保存掉电不丢失的用户数据 通过在程序中编程IAP实现程序的自我更新 在线编程In-Circuit Programming – ICP用于更新程序存储器的全部内容它通过JTAG、SWD协议或系统加载程序Bootloader下载程序 在程序中编程In-Application Programming – IAP可以使用微控制器支持的任一种通信接口下载程序
STM32F10xxx内嵌的闪存存储器可以用于在线编程(ICP)或在程序中编程(IAP)烧写。
在线编程(In-Circuit Programming – ICP)方式用于更新闪存存储器的全部内容它通过JTAG、SWD协议或系统加载程序(Bootloader)下载用户应用程序到微控制器中。ICP是一种快速有效的编程方法消除了封装和管座的困扰。
与ICP方式对应在程序中编程(In-Application Programming – IAP)可以使用微控制器支持的任一种通信接口(如I/O端口、USB、CAN、UART、I 2 C、SPI等)下载程序或数据到存储器中。IAP允许用户在程序运行时重新烧写闪存存储器中的内容。然而IAP要求至少有一部分程序已经使用ICP烧到闪存存储器中。
闪存接口是在AHB协议上实现了对指令和数据的访问它通过对存储器的预取缓存加快了存储器的访问闪存接口还实现了在所有工作电压下对闪存编程和擦除所需的逻辑电路这里还包括访问和写入保护以及选择字节的控制。
02. 闪存模块组织 03. FLASH基本结构 04. FLASH解锁
FPEC共有三个键值
RDPRT键 0x000000A5
KEY1 0x45670123
KEY2 0xCDEF89AB
解锁
复位后FPEC被保护不能写入FLASH_CR
在FLASH_KEYR先写入KEY1再写入KEY2解锁
错误的操作序列会在下次复位前锁死FPEC和FLASH_CR
加锁
设置FLASH_CR中的LOCK位锁住FPEC和FLASH_CR
05. 使用指针访问存储器
•使用指针读指定地址下的存储器 uint16_t Data *((__IO uint16_t *)(0x08000000)); •使用指针写指定地址下的存储器 *((__IO uint16_t *)(0x08000000)) 0x1234; •其中 #define __IO volatile 06. 程序存储器编程
编程过程
闪存页擦除过程
闪存全擦除过程
07. 选项字节 •RDP写入RDPRT键0x000000A5后解除读保护
•USER配置硬件看门狗和进入停机/待机模式是否产生复位
•Data0/1用户可自定义使用
•WRP0/1/2/3配置写保护每一个位对应保护4个存储页中容量
08. 选项字节编程
•检查FLASH_SR的BSY位以确认没有其他正在进行的编程操作
•解锁FLASH_CR的OPTWRE位
•设置FLASH_CR的OPTPG位为1
•写入要编程的半字到指定的地址
•等待BSY位变为0
•读出写入的地址并验证数据
09. 选项字节擦除
•检查FLASH_SR的BSY位以确认没有其他正在进行的闪存操作
•解锁FLASH_CR的OPTWRE位
•设置FLASH_CR的OPTER位为1
•设置FLASH_CR的STRT位为1
•等待BSY位变为0
•读出被擦除的选择字节并做验证
10. 器件电子签名
•电子签名存放在闪存存储器模块的系统存储区域包含的芯片识别信息在出厂时编写不可更改使用指针读指定地址下的存储器可获取电子签名
•闪存容量寄存器
基地址0x1FFF F7E0
大小16位
•产品唯一身份标识寄存器
基地址 0x1FFF F7E8
大小96位
11. 附录
参考: 【STM32】江科大STM32学习笔记汇总