使用stm32F4的HSUSB移植一个usb和sd卡组合当做U盘使用的操作
想要做到这个功能,大致如下几个步骤
1,SDIO/SPI 驱动 SD卡,具体的驱动可以使用keil提供的eval库
2,下载usb device驱动,我们这里使用的是被动模式,slave
3,添加usb文件到工程
4,修改添加usb底层驱动代码
其实,移植usb驱动相对来说比较简单,只需要知道什么是移植。usb驱动是干嘛用的,大致了解它的工作顺序就可以了,这里只做简单的简绍移植步骤,具体的usb配置这里不说(其实我也没有搞透)
1,SDIO/SPI 驱动 SD卡
驱动SD卡,SD卡的接口我知道的有两种,一种是SDIO接口,一种是SPI接口的,不过无论哪种接口,都不影响,因为底层代码已经有一个现成的库写好了。
EVAL库是由3.5的标准库提供的,在目录
STM32 3.5固件库官网原文件\STM32F10x_StdPeriph_Lib_V3.5.0\Utilities\STM32_EVAL\Common
这下面有这么几个文件
从名字可以看出来,分别是几个不同模块的驱动方式,我们这里选择的是SDIO_SD模式,(注意区分F4的库和F1的库)
基本上添加到工程里面,然后调用sd_init 函数初始化之后,就可以用read write进行操作了
2,下载usb device驱动,添加usb文件到工程
usb驱动可以去ST官网是下载,只需要下载device模式的就可以了
我这里没有下载官网的,使用的是野火的例子ÿ