使用STM32模拟U盘时,代码是使用cubemx生成的,如果只使用两个分区,比如sd卡和spi flash,没有问题。当使用三个分区时,就会显示感叹号,识别不了任何分区。
通过软件可以得知在获取第三个分区的描述符时,回复了C000004。
通过查看代码,可以得知是在如下文件中回复了异常。
通过在线调试,可知道是hmsc->cbw.bLUN > 1这个条件满足了。所以这边只需要把1改成比你实际的分区大的数字即可。我这边改成2即可。
使用STM32模拟U盘时,代码是使用cubemx生成的,如果只使用两个分区,比如sd卡和spi flash,没有问题。当使用三个分区时,就会显示感叹号,识别不了任何分区。
通过软件可以得知在获取第三个分区的描述符时,回复了C000004。
通过查看代码,可以得知是在如下文件中回复了异常。
通过在线调试,可知道是hmsc->cbw.bLUN > 1这个条件满足了。所以这边只需要把1改成比你实际的分区大的数字即可。我这边改成2即可。