cntitan1982 发表于 2018-8-4 12:48:40

USB问题

使用的是野火F429的开发板。现在想模拟一个U盘,通过USB Device接口,让PC直接读取开发板上SD卡的数据。
开发板自带的例程有一个类似的,只不过存储器是SPI Flash。于是我将接口函数全部替换为SDIO的函数,结果运行发现无法识别。

调试时发现,在SDIO读函数中死机了。

仔细跟踪了一下,发现例程的USB驱动是纯中断式的!所有上层操作都是在中断中调用的!可是调用到SDIO的读函数时,需要等待DMA中断返回结果,而在USB中断中显然是收不到其他中断的,所以程序就死在这里了。

那么问题来了,这个USB驱动有非中断版本吗?

tanic 发表于 2018-8-4 13:30:28

直接cubemax工具配置生成即可

feixiang20 发表于 2018-8-4 22:26:19

看看SDIO读函数优先级

cntitan1982 发表于 2018-8-5 08:25:24

哦,我明白了,要中断嵌套才可以对吧。

之前用的芯片从来没用过中断嵌套,刚转stm32思路还没转过来。

cntitan1982 发表于 2018-8-6 10:38:10

解决了,确实是把SDIO的抢夺优先级设为0就正常了。

谢谢大家!
页: [1]
查看完整版本: USB问题