RT-Thread—STM32—EasyFlash


!!! 本文已同步到码云 - 点击此链接获取最新 - 可进入码云提交修改 !!!


概述

本教程主要根据官方推荐的教程进行改编,详细信息请参考EasyFlash软件包
本例程的模板使用通用模板环境搭建里面的模板 RT-Thread——STM32——FAL库
文末也有我移植好的例程,不过建议大家从头开始移植,加深印象^_^


配置

  • 打开工程目录,在ENV下输入menuconfig进入图形化配置界面
  • 在RT-Thread online packges->tools packages里选中EasyFlash
  • 打开EasyFlash
  • Version选择最新的版本
  • 最小擦除粒度设置为2048 (STM32F103ZET6页大小为2K,所以选择2048)
  • 最小写入粒度设置为STM32F1 (因为我使用的是STM32F1)
  • 在EasyFlash软件包里面,把ports里面的ef_fal_port.h文件移动到src文件夹里面
  • 在ENV里面重新生成工程
  • 保存配置并且退出ENV

代码修改

  • fal_cfg.h文件里面的分区表中增加easyflash项,根据flash大小重新分配内存
  • 打开ef_fal_port.c文件,修改easyflash的名字,增加需要存储的变量名如图:
  • 使用的时候,添加头文件,和测试代码如图:

测试

  • 烧录代码,每次按下复位键都会打印当前的上电次数如图:
  • 如果结果和我一样就说明你已经成功了

小结

easyflash用起来真的很方便,而且大大增加了flash的寿命,用来存储常见的信息基本上就够用了,也不用外界存储芯片


源代码获取

源码已放到码云 ! ! ! ( 请点击文首链接进入仓库 )


备注


RT-Thread是一个开源的实时操作系统,可以在各种嵌入式设备上运行。STM32F407VE是STMicroelectronics推出的一款基于ARM Cortex-M4内核的微控制器。 RT-Thread可以运行在STM32F407VE上,使用RT-Thread可以更好地管理系统资源和任务,提高实时性和稳定性。STM32F407VE具有丰富的外设和强大的计算能力,可以适用于各种应用场景。 在RT-Thread上运行的应用程序可以通过它的内核提供的丰富API来进行多任务处理、线程管理、内存管理等操作。它还提供了灵活的驱动框架和硬件抽象层,方便开发人员进行底层驱动开发和应用程序开发。 RT-Thread还提供了一套完善的文件系统,可以对外部存储器进行读写操作,方便数据的存储和管理。此外,RT-Thread还支持网络协议栈,可以实现与其他设备的通信和数据传输。 对于STM32F407VE这款微控制器来说,它具有丰富的外设,例如UART、SPI、I2C等,可以实现与外部设备的连接和通信。同时,它还具有硬件浮点运算单元,可以提高计算能力。 在使用RT-Thread开发STM32F407VE时,我们可以充分利用STM32F407VE的硬件资源,通过合理的任务划分和优化,提高系统的实时性和效率。同时,我们也可以利用RT-Thread提供的各种功能和工具,方便地进行开发、调试和测试。 总之,RT-ThreadSTM32F407VE都是非常强大的工具,它们的结合可以为嵌入式开发带来很多便利和效益。无论是在学习、研究还是商业开发中,它们都具有广泛的应用前景。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iot 小胡

从未指望过会有人打赏...

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值