新手入门
- 积分
- 12
- 金钱
- 12
- 注册时间
- 2020-2-21
- 在线时间
- 2 小时
|
请教原子哥及各位大侠://读出数据
//len:读出的长度
//返回值:执行结果
u8 mf_read(u16 len)
{
u16 i,t;
u8 res=0;
u16 tlen=0;
printf("\r\nRead file data is:\r\n");
for(i=0;i<len/512;i++)
{
res=f_read(file,fatbuf,512,&br);
if(res)
{
printf("Read Error:%d\r\n",res);
break;
}else
{
tlen+=br;
for(t=0;t<br;t++)printf("%c",fatbuf[t]);
}
}
if(len%512)
{
res=f_read(file,fatbuf,len%512,&br);
if(res) //读数据出错了
{
printf("\r\nRead Error:%d\r\n",res);
}else
{
tlen+=br;
for(t=0;t<br;t++)printf("%c",fatbuf[t]);
}
}
if(tlen)printf("\r\nReaded data len:%d\r\n",tlen);//读到的数据长度
printf("Read data over\r\n");
return res;
}
这段程序为什么要分块(512字节/块)读取数据呢?可以一次性读取处理吗?谢谢!
|
|