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!\n"); } else { rt_kprintf("File System initialzation failed!\n"); } #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