一、STM32
15.1 - FLASH闪存
1. FLASH简介
(1)STM32系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程;
(2)读写FLASH的用途:利用程序存储器的剩余空间来保存掉电不丢失的用户数据,通过在程序中编程(IAP),实现程序的自我更新;
(3)在线编程(In-Circuit Programming-lCP)用于更新程序存储器的全部内容它通过JTAG、SWD协议或系统加载程序(Bootloader)下载程序;
(4)在程序中编程(In-Application Programming-IAP)可以使用微控制器支持的任一种通信接口下载程序。
2. FLASH基本结构
3. FLASH解锁
(1)FPEC共有三个键值:RDPRT键=0x000000A5;KEY1 = 0x45670123;KEY2= 0xCDEF89AB;
(2)解锁:复位后,FPEC被保护,不能写入FLASH_CR;在FLASH_KEYR先写入KEY1,再写入KEY2,解锁;错误的操作序列会在下次复位前锁死FPEC和FLASH_CR;
(3)加锁:设置FLASH_CR中的LOCK位锁住FPEC和FLASH_CR;
4. 使用指针访问存储器
(1)使用指针读指定地址下的存储器:uint16_t Data = *((__IO uint16_t *)(0x88000080));
(2)使用指针写指定地址下的存储器:*((__IO uint16_t*)(0x08000000))= 0x1234;
(3)其中:#define __IO volatile。
5. 选项字节
(1)RDP:写入RDPRT键(0x000000A5)后解除读保护;
(2)USER:配置硬件看门狗和进入停机/待机模式是否产生复位;
(3)Data0/1:用户可自定义使用;
(4)WRPO/1/2/3:配置写保护,每一个位对应保护4个存储页。
6. 选项字节擦除
(1)检查FLASH_SR的BSY位,以确认没有其他正在进行的闪存;
(2)操作解锁FLASH_CR的OPTWRE位;
(3)设置FLASH_CR的OPTER位为1;
(4)设置FLASH_CR的STRT位为1;
(5)等待BSY位变为0;
(6)读出被擦除的选择字节并做验证。
7. 器件电子签名
(1)电子签名存放在闪存存储器模块的系统存储区域,包含的芯片识别信息在出厂时编写,不可更改,使用指针读指定地址下的存储器可获取电子签名;
(2)闪存容量寄存器基地址:0x1FFF,F7E0大小:16位;
(3)产品唯一身份标识寄存器基地址:0x1FFF,F7E8大小:96位。
二、空气动力学
10. 空气动力学中无量纲参数的作用
(1)消除单位影响:在空气动力学研究中,涉及的物理量众多,且单位各异。无量纲参数通过将有量纲的物理量组合起来,消除了单位的影响,使得问题的描述更加简洁和统一。
(2)减少变量数量:在复杂的空气动力学问题中,往往存在多个相互关联的变量。无量纲参数可以将多个有量纲的变量组合成一个或几个无量纲参数,从而减少问题中的变量数量,简化问题的复杂性。
(3)几何相似:在空气动力学实验中,为了使模型试验的结果能够准确地反映实际飞行器的特性,需要满足几何相似条件。几何相似是指模型与实际物体在形状和尺寸上成比例关系。无量纲参数可以帮助我们判断模型试验是否满足几何相似条件。
(4)经验公式的建立:在空气动力学研究中,很多情况下需要通过实验数据来建立经验公式。无量纲参数可以作为经验公式中的自变量,通过实验数据拟合得到无量纲参数之间的关系式。
大家好~,关于STM32的内容,我们今天就先告一段落啦。至于空气动力学的部分,本人需要在熟练掌握高数基础后,再继续和大家分享。在接下来的日子里,我可能会暂停更新一段时间,以便之后带着满满的新知识回来。感谢大家一直以来的关注与支持,期待我们下次相见!