最近接受一个项目,用的是MSP4305438A sd卡初始化时 程序一直卡死在SD_WaitReady(void)函数中的i = SD_SPI_ReadWriteByte(0XFF)语句中,也就是说一直收不到SPI的应答。函数代码如下:
//等待卡准备好
//返回值:0,准备好了;其他,错误代码
u8 SD_WaitReady(void)
{
u32 t=0;
u8 i = 0;
do
{
i = SD_SPI_ReadWriteByte(0XFF);
if(i==0XFF)
return 0;//OK
t++;
}while(t<0XFFFFFF);//等待
return 1;
}
硬件上测试过SD卡供电电压是3.05V 且初始化的74个脉冲正常发送出去了。希望做过这块的朋友们给点思路。