为什么你设计的SD卡电路会概率性不识别?
大家好,我是硬件微讲堂。这是我第118篇原创文章。SD卡,大家应该不陌生,搞嵌入式开发,搞硬件开发的,经常会用它来升级程序,存日志,存图像……总之,应用场景很多。既然使用这么频繁,在硬件设计过程中,我们需要注意什么呢?今天我们就来聊一聊。一道问题照例,先抛出一道问题:SD卡的电路设计是按照参考设计来的,为啥SD卡经常会不识别呢?又或者误码?SD卡的电路按照参考设计进行设计,只能说是看起来没问题,只做到这里是不够的。我们作为专业的研发人员,还需要知道深层次的内部逻辑。SD卡-Powerup如上述电路,虽然只画出了3.3V_SD,但实际上我们需要关注的绝不止是下图中展示的直流电压范围。我们还需要考虑SD卡电源上电的时间(Poweruptime)!这里往往是容易被忽略的!如上图序号①紫色区域所示,为了确保SD卡能够可靠地进行硬件重启/复位,需要满足2个条件:①VDD电压需要小于0.5V;②VDD保持电压小于0.5V的持续时间需要不少于1ms。(波形来自网络)如上图VDD的波形所示,从右下角光标△X的数值可以看出下电和上电的间隔有23.621ms,但在一个上电周期的最后阶段只是把VDD降到了1.118V,并没有降到0.5V以下。这样,SD卡不能够被有效的下电和重启。如上图序号②黄色区域所示,VDD在上电过程中有如下要求:①VDD上电波形需要尽可能单调;②VDD从0.5V上升到VDDmin的最短时间为0.1ms;③VDD从0.5V上升到VDDmin的最长时间为35ms;来源:硬件微讲堂