|
最近在搞读写内部flash的操作,标准库的跑的差不多了,来找个HAL库的测试一下 使用M33内核的H503RB cubemx简单配置一下,选用nucleo板工程,使用bsp包,串口、LED灯、下载,使能下内部flash
M33花活就是多,flash这一堆不认识的,问题不大,先跑起来再说 时钟拉到最大
flash先写后擦除,擦需要擦一块区域的,写函数是HAL_FLASH_Program在hal_flash.c文件里,擦除扇区函数是HAL_FLASHEx_Erase,在hal_flash_ex.c函数中 在标准库里喜欢直接往地址里面写,HAL库这里把按地址写的函数给静态了 写一个中间层的测试函数,传入一个uint32_t的地址,会往这个地址里面写内容
大致流程图
在进入主循环之前调用一下,在主循环里添加LED闪烁,判断执行完flash写入擦除后,单片机是否跑飞
编译下载后,可以看到,先打印的是flash写入后abcd 1234,再打印扇区数量7,最后打印出来ffff ffff 扇区已经擦除了
|
微信公众号
手机版
兔哥牛逼
兔哥牛逼
开始期待下一篇了