在探索者407开发板上做例程“EMWIN实验3,文本显示”的时候,在MDK5环境中的时候,有无SD卡运行都正常,但是在IAR环境中不插SD卡时候运行正常,插上SD卡的时候,只要执行函数 f_mount(fs[0],"0:",1); //挂载SD卡。就会进入sdio_sdcard.c文件中的如下代码,出现死循环。是不 是有个什么编译选项需要设置呢?
while(!(SDIO->STA&((1<<5)|(1<<1)|(1<<3)|(1<<10)|(1<<9))))//无上溢/CRC/超时/完成(标志)/起始位错误
{
if(SDIO->STA&(1<<15)) //接收区半满,表示至少存了8个字
{
for(count=0;count<8;count++) //循环读取数据
{
*(tempbuff+count)=SDIO->FIFO;
}
tempbuff+=8;
timeout=0X7FFFF;
}else //处理超时
{
if(timeout==0)return SD_DATA_TIMEOUT;
timeout--;
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>