uint8_t SD_Init(void)
{
uint8_t over,temp;
uint8_t i;
spi_ss (0); //SD卡片选有效
for (i=0;i<0x0f;i++)
{
spi_send(0xff); //100多个时钟
}
//CMD0
over=0;
do
{
SD_Write_Command(0,0,0x95); //CMD0
temp=spi_send(0xff); //读回SD卡返回数据
over++;
if(over==100) //超时
{
return(0);//CMD0 Error!
}
}
while(temp!=1);
//CMD1
over=0;
do
{
SD_Write_Command(1,0,0XFF); //CMD1
temp= spi_send(0xff); //读回SD卡数据
over++;
if(over==100)
{
;
}
}
while(temp!=0);
over=0;
spi_ss (1);
return(1);
}
有个C语言的,我不太了解FPGA的开发,不过应该可以嵌套C的,这个你参考一下,具体配置,初始化时序要看上面tyw提供的资料,另外一般都嵌个文件系统,去znFAT专区看看。
|