51 SD卡软件SPI读写 复位 初始化

2020-02-01 16:20发布

请问   我的SD卡SPI模式读写 初始化 为什么总是超时而 失败
/************ SD卡初始化 ************/
uchar sd_init(void)
{
    uchar time, temp;
    uchar pcmd[6] =  {0x41,0x00,0x00,0x00,0x00,0xff};  //CMD1的字节序列                
    CS = 0;           //打开片选
    time = 0;
    do
    {
        temp = write_cmd_low_speed(pcmd);// 慢速写入CMD1
        time++;
        if(time > 100)
        {
            time=0;
            Send_(table[2]);           // CMD1 写入超时,用串口发到PC机,标志超时
        }
    }
    while(temp != 0x00); // SD卡已经准备好接受读写操作
    CS = 1;           //关闭片选
    spi_write_low_speed(0xff);
        Send_(table[3]);
    return 0;
}/***********************************************************/
串口返回的标志表明一直在向SD卡写CMD1     一直超时     求大神解释
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。