本文由腾讯云+社区自动同步,原文地址 https://cloud.tencent.com/developer/article/1540983
在测试工程中无法初始化SD卡,但是在示例工程中却可以
可能是引脚初始化的问题
使用debug中的查看寄存器功能记录了两个工程中与SDHC相关的引脚的寄存器值,发现如下不同:
寄存器名称 | 该寄存器对应的引脚 | 正常工作的寄存器内容 | 不正常工作的寄存器内容 —– —| —- ——— | ——————-| —————–
MSCR120| PH8 |0x0208 0001| 0x3208 0001 MSCR131 |PI3 |0x020B 0003| 0x320B 0003 MSCR70 |PE6 |0x020B 0005 | 0x320B 0005 MSCR71 |PE7 |0x0208 0005 | 0x3208 0005
这里的不同是 测试工程中MSCR寄存器中用的是Half drive strength with slew rate control 在示例工程中使用的是 Full driver strength without slew rate control
随后,在测试工程中修改driver strength 和slew rate control后,SD卡初始化正常