1)利用EVN工具添加驱动及文件系统,如图
根据硬件电路,选择spi flash所用的spi口
生成工程文件
2)在drv_spi.c中修改spi管脚。
3)添加测试程序
#include <rtthread.h> #include <board.h> #include <dfs_fs.h> void spiflash_test(void) { rt_device_t dev; dev = rt_device_find("flash0"); if (dev != RT_NULL) { /* Filesystem Initialization */ #if defined(RT_USING_DFS) && defined(RT_USING_DFS_ELMFAT) /* mount sd card fat partition 1 as root directory */ if (dfs_mount("flash0", "/", "elm", 0, 0) == 0) { rt_kprintf("File System initialized! "); } else { rt_kprintf("File System initialzation failed! "); } #endif /* RT_USING_DFS && RT_USING_DFS_ELMFAT */ } } int main(void) { /* user app entry */ spiflash_test(); return 0; }
4)编译程序并运行,可以在调试口看到器件已经识别,但文件系统初始化失败(原因:未格式化mkfs)。
5)格式化输入mkfs flash0之后回车
1 msh />mkfs flash0
然后复位程序,可以看到文件系统已经被成功初始化。
6)文件系统简单测试
可参考https://blog.csdn.net/aping_cs_dn/article/details/44559031