大学生
最后登录1970-1-1
在线时间 小时
注册时间2014-7-7
|
今天在移植霸道的FATFS(SD)的代码,看到硬盘读函数,这里不是很懂,程序难道能自己调用自己吗? 这是怎么回事
DRESULT disk_read (
BYTE pdrv,
BYTE *buff,
DWORD sector,
UINT count
)
{
DRESULT status = RES_PARERR;
SD_Error SD_state = SD_OK;
switch (pdrv) {
case ATA: /* SD CARD */
if((DWORD)buff&3)
{
DRESULT res = RES_OK;
DWORD scratch[SD_BLOCKSIZE / 4];
while (count--)
{
res = disk_read(ATA,(void *)scratch, sector++, 1);
if (res != RES_OK)
{
break;
}
memcpy(buff, scratch, SD_BLOCKSIZE);
buff += SD_BLOCKSIZE;
}
return res;
}
|
|