//使用的是STM32L475的芯片
1.查看官方的注释
想要实现这个功能,首先要将USB接口驱动起来,然后再将外部flash驱动起来。
首先我们创建一个RT-Thread studio工程,查看drivers/board.h文件。在RTT的工程中,一般硬件初始化都是在该文件下。
通过注释知道,我们还需要使用CUBEMAX来进行函数的配置。
2.根据注释操作
通过注释我们进行如下操作
第一步.打开RT-Thread Seting,打开USB组件
第二步,在board.h中打开宏定义
第三步和第四步:使用stm32cubemx生成USB接口的初始化代码以及时钟的初始化代码。
这部分可以参考STM32使用片内FLASH制作小U盘(STM32+FLASH+MSC)_stm32内部flash模拟u盘-CSDN博客
分别将代码拷贝到指定位置
第五步:在stm32xxxx_hal_config.h文件中打开相对应的宏定义。
以上步骤结束后编译烧录将USB接入到PC上,打开设备管理器,在通用串行总线控制器下可以看到识别到USB大容量控制器。
这就代表以上步骤没问题。
3.挂载外部Flash,通过USB映射
挂载外部Flash操作后续会再写一篇。
挂载外部Flash成功后,查询设备
可以看到块设备W25Q128,该设备就是指的外部Flash空间。
将MSC类磁盘名修改为W25Q128,并且在代码中没有dfs_mount挂载该设备,即可成功映射该Flash。