赞
踩
有的时候我们会需要 在系统中保存一些参数,这个时候我们可以使用STM32内部的闪存Flash,即使断电参数也不会丢失。
查看STM32的参考手册,STM32F407中介绍了flash的特性,本实验开发板使用的flash是1M容量大小。
flash的扇区和块基址如下图
本章节使用串口打印工程,打开工程,添加扇区代码
定义保存的flash的开始地址
定义保存flash的结束地址
定义要在flash中保存的数据
定义其它变量如扇区的个数、获取扇区函数等
在主函数中添加代码,串口提示打印开始 flash测试
解锁flash
获取需要擦除的扇区个数
指定扇区擦除的参数、首页扇区和扇区大小并且调用扇区擦除函数
添加代码防止在flash操作过程中出现错误
在指定的扇区写入指定的数据DATA_32=0x12345678
写入完毕,flash上锁。
至此flash的操作流程完毕,接下来需要查看写入指定flash地址的数据是否正确。
当写入的数据有误时变量MemoryProgramstatus将会加1,如果没有错误MemoryProgramstatus将会是0。串口将结果打印出来。
实验结果
整个实验过程视频
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。