开发板
正点原子的STM32F407探索者
IDE
RT-Thread Studio
FLASH
W25Q128
FATFS
参考RTThread官方文档
步骤一:创建基础工程
点击完成。修改main.c中对应LED0灯的引脚
步骤二:点击RT-Thread setting在图形界面配置需要的组件和驱动
W25Q128是16M spi flash,一共有256个block ,每个Block 64KB。
一个Block可以分割为16个扇区(small sector),每个扇区4096字节(4KB),所以我们需要修改fatfs的扇区大小为4096
步骤三:根据RTT官网文档对SPI驱动进行修改,右击SPI 图标-->选择开发文档-->驱动开发文档
SPI 设备驱动的开发可总结为如下:
*** 新建 RT-Thread 完整版项目**
*** 打开 SPI 设备驱动框架**
*** 定义 SPI 总线相关的宏**
*** 打开 HAL 库函数对 SPI 总线的支持**
*** 复制 SPI 引脚初始化函数到工程**
在rtthread源码中
rt-thread/ bsp / stm32 / stm32f407-atk-explorer / board / CubeMX_Config / Src目录下有stm32f4xx_hal_msp.c
文件中有CubeMX针对SPI的初始化函数将其拷贝到drv_spi.c的文末。
编译,下载到板子。结果如图
步骤四:添加SPI从设备,也就是W25Q128设备
添加文件和代码
下载到开发板
步骤五:将W25Q128抽象为块设备供rtt使用,后续挂载文件系统
步骤六:挂载文件系统
结果:
原文:https://www.cnblogs.com/Raowz/p/13069061.html