一、ENV使能SDIO
1.1.在kconfig增加配置
因为ART-PI的SDIO2连接的是wifi,所以这里我们使用SDIO1。
1.2.ENV中使能SDIO
1.3.使能文件系统
1.4.使用SD设备
最后使用命令 scons --target=mdk5 生成工程
二、修改配置文件,适配ART-PI
因为ART-PI的drv_sdio.c程序和主分支的有些差异,所以我们需要修改一下配置文件来适配ART-PI
2.1.修改Kconfig文件
2.2.在SConscript添加配置文件
做好了上述步骤,我们还需要在 env 中使用 scons --target=mdk5 命令重新生成一下工程,让刚才的文件加入 mdk 工程目录中
三、MDK配置SDIO遇到的坑
综上的步骤我们做好了以后进行编译,会报以下错误
Undefined symbol DelayBlock_Enable (referred from stm32h7xx_hal_sd.o)
进行全局搜索发现是叫做 stm32h7xx_hal_conf.c 的文件。这里除了定义包含哪些库文件,还有其他的一些定义。
当把这个宏改成了 0u 编译就通过了。
四、编译运行
可以看到,系统已经识别到了我们的SD卡容量,并且将SD卡挂载到了/sdcard下了。
同样我们可以 ls 一下查看我们SD卡中的内容。
至此关于 ART-PI 在 MDK 中使用 SDIO 设备已经完成
|