|
首先请大家看下这两个初始化程序对不:
unsigned short *SD_DataAdd =(unsigned short *)0xb0000020;//
unsigned short *SD_DataAdd1 =(unsigned short *)0xb0000024;//
unsigned short *SD_DataAdd2 =(unsigned short *)0xb0000028;//
unsigned short *SD_DataAdd3 =(unsigned short *)0xb000002c;//
unsigned short *SD_DataAdd4 =(unsigned short *)0xb0000030;//
///////////////////////////////////////////////////////////////////
void SPI_Init()
{
*SD_DataAdd1 = 0xa2;
*SD_DataAdd3 = 0x00;
}
////////////////////////////////////////////////////////////
int sd_init(void)
{
UINT8 resp,cnt=0;
int ret,i;
ret = sd_reset(); /*reset SD*/
if(ret != 0) /*reset fail*/
{
return -1;
}
do{ /*send CMD1 to init*/
SD_DISABLE;
spi_write_out(0xff);
for(i=0; i<100; i++)
spi_write_out(0xff);
SD_ENABLE;
spi_write_out(0xff);
resp = sd_command(CMD1,0); /*read respones*/
printf("%x ", resp);
cnt++;
if(cnt>=200)
{
SD_DISABLE;
return -1;
}
}while(resp != 0);
SD_DISABLE; /*disable SD*/
return 0;
}
//////////////////////////////////////////////////////////////////////
我在main函数中调用这两个函数初始化,中间是不是需要延时?
延时多少时间?
延时函数怎么写最标准?
急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急急 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|