使用Bootloader启动程序后SD挂载失败

发布于 2019-12-13 17:44:03
由于需要定制许多参数,Bootloader是自己编写的,不是RT-Thread的Bootloader。
Bootloader在启动时需要检查SD卡上是否有升级文件,有升级文件则执行升级,没有则直接跳转到RT-thread程序,因此Bootloader和程序都需要用到SD卡,问题在于Bootloader也启用了SD卡的话,程序启动时SD卡就会挂载失败
Snipaste_2019-12-13_17-24-15.png
SD卡可以初始化,但mount到根目录失败
在mount之前开启高速模式也是失败的,但有时偶尔也有开启成功的,但挂载还是失败
Snipaste_2019-12-13_17-29-08.png
可以确定的是这里读取的第0扇区前64字节的数据跟正常的读到的不一样

尝试Bootloader在跳转之前关闭各种时钟也没用
Snipaste_2019-12-13_17-31-21.png

不使用Bootloader直接运行同样的程序则不会有这样的错误,由于使用了Bootloader没办法使用调试器调试,不使用Bootloader又不出现问题
开发板使用的正点原子的STM32F767 Apollo开发板,RT-Thread使用版本为v4.0.1,SD卡开始用的是64的卡,后来换了16G卡还是一样

查看更多

关注者
0
被浏览
251
1 个回答
lenxvp
lenxvp 2019-12-16
沉的也太快了:'(

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览