📄 sd卡的初始化.c
字号:
unsigned char SD_Init() //初始化函数,使用CMD55+ACMD41命令
{
unsigned char rddata_a[1],rddata b[1],wrdata[1];
unsigned char time;
unsigned char cmd55[]=(0x77,0x00,0x00,0x00,0x00,0xff);
unsigned char acmd41[]=(0x69,0x0f,0xf0,0x00,0x00,0xff);
CS_EN=0; //CS EN置为低电平,使SPI内核的SS_n不被屏蔽
IOWR_ALTERA_AVALON_PIO_DATA(CS_EN_BASE,CS_EN);
do
{
do
{
rddata_a[0]=Write_Cmd(cmd55);
}while(rddata_a[0]!=1); //返回值为1时,表示CMD55发送成功
rddata_b[0];
Write_Cmd(acmd41); //发送ACMD41,并读取返回值
}while(rddata_b[0]!=0); //返回值为0时,表示ACMD41发送成功
CS_EN=1; //CS_EN置为高电平,屏蔽SPI内核的SS_n
IOWR_ALTERA_AVALON_PIO_DATA(CS_EN_BASE,CS_EN);
wrdata[0]=0xff;
alt_avalon_spi_command(SPI_BASE,0,1,wrdata,0,NULL,0);//发送8个时钟
return(0); //返回0,表示初始化操作成功
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -