在发展开发中,MCU中的闪光通常用于存储配置信息,日志数据或用于OTA升级。 STM32F4系列为闪光灯提供了灵活的操作功能,包括扇区删除,字节或半单词写作等。STM32F4MCU的闪存分为扇区(扇区),每个扇区的大小都不同。例如,在STM32F407中,前四个扇区的大小为16kb,第五个扇区为64kb,然后有许多128KB的大型部门。片上的闪光灯支持:擦除编程的扇区(例如字节,半单词,单词,双词),用于编程许多对齐方法(例如字节,半词,单词,双词)勃起,您必须首先解锁并在手术前清除相关的标志位。完成后,闪存控制器必须锁定在ORAS中,以避免意外写作。代码sec_map []中的扇区映射表使用结构sec_info_t来维护起始地址,大小和数字每个扇区:这是一种代表每个部门的起始地址,扇区大小和扇区编号的结构。然后,由一组常数sec_map []列出了不同闪存扇区的信息:根据STM32F4的闪存布局,此映射表列出了通常使用的8个扇区。 MCU_FLASH_ERASE()函数实现了指定闪存地址范围的删除。 ADDR:擦除大小的开始地址:范围擦除(单位字节)操作首先计算扇区的数量:然后在扇区中迭代,找到与addr和大小相匹配的扇区的范围,并执行burase:flash:flash应锁定擦除:在擦除效果之前:锁定flash flash flash flash flash flash flash flash flash flash flash flash:最后的返回:返回的返回。写作功能是:ADDR:写作BUF的开始地址:要写的数据缓冲区的大小:在编写数据字节数之前,应锁定闪存,并应堵塞标志:然后输入循环,然后逐渐用字节或半词写入。 Flash: After the writing is completed, update the address and buffer pointer: If an operation at the time of writing returns an error, it will jump in advance, and finally perform the operation of the lock and restore if the writing is successful: The function interface to read is: The function directly reading flash data by copy of memory: where the addr is the start of the flash, the buf is the tarT buffer, and the size is the number of bytes read.由于可以将STM32 Flash直接降低到内存读数,因此可以访问正常内存。简介在本文中,STM32F4 MCU中Flash内部实现的主要实现包括:使用Flash扇区映射信息结构来实现Flash Erase函数,通过匹配地址范围来实现闪光灯写作功能并逐渐在字节闪存中写入Flash并阅读F,从而删除相应的扇区直接通过memcpy睫毛内容。上面的代码适用于裸金属开发,也可以用作STM32闪存操作的主要模板,可以与协议或文件系统的上层一起使用,例如存储参数,数据记录,bootloader固件升级和其他功能。小编:在发展开发中,MCU中的闪光通常用于存储配置信息,日志数据或用于OTA升级。 STM
当前网址:https://www.jling-tech.com//tutorials/web/2025/0718/1150.html