OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3839|回复: 5

f_read()出现问题

[复制链接]

13

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2012-7-4
在线时间
0 小时
发表于 2014-12-2 17:06:11 | 显示全部楼层 |阅读模式
5金钱
f_read() 读出来的字节数 比正常的要多 独到文件末尾又读了一段  程序如下::
u8 my_buffer[512];
res = f_open(&fdst, str_fname4, FA_READ); /* 打开文件 */
if(!res)
{
br = 1;
a = 0;
for(;;)
{
    res = f_read( &fdst, my_buffer, sizeof(my_buffer), &br ); /* 将文件里面的内容读到缓冲区 */
    printf(my_buffer);
    delay_ms(100) ;
   if ( res ||br <sizeof(my_buffer)) break;    
   //   if (res || br == 0) break;              /* 错误或者到了文件尾 */            
   }
}
f_close(&fdst);
有可能是什么原因呢?

最佳答案

查看完整内容[请看2#楼]

我明白了 应该是my_buffer数组512字节是满的 最后剩的31字节覆盖了 但是还有512-31字节没有被覆盖 多就多出的是512-31字节
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2012-7-4
在线时间
0 小时
 楼主| 发表于 2014-12-2 17:06:12 | 显示全部楼层
我明白了 应该是my_buffer数组512字节是满的 最后剩的31字节覆盖了 但是还有512-31字节没有被覆盖 多就多出的是512-31字节
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-12-2 22:49:53 | 显示全部楼层
运行情况呢?br是多少?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

17

主题

293

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2012-12-26
在线时间
1 小时
发表于 2014-12-2 22:59:01 | 显示全部楼层
实际的被读文件多大,将f_read()里面的  sizeof(my_buffer)替换成fdst.fsize>sizeof(my_buffer)?sizeof(my_buffer),fdst.fsize试下
回复

使用道具 举报

13

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2012-7-4
在线时间
0 小时
 楼主| 发表于 2014-12-3 09:26:44 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
回复【2楼】正点原子:
---------------------------------
512512512512512512512512512512512512512512512512512512512512512512512
512512512512512512512512512512512512512512512512512512512512512512512
512512512512512512512512512512512512512512512512512512512512512512512
512512512512512512512512512512512512512512512512512512512512512512512
51251231

这是打印出来的br值   每次都是512字节 最后是31字节 一共是48159字节 是没有问题的 和原文件大小一样
回复

使用道具 举报

13

主题

34

帖子

0

精华

初级会员

Rank: 2

积分
106
金钱
106
注册时间
2012-7-4
在线时间
0 小时
 楼主| 发表于 2014-12-3 09:28:36 | 显示全部楼层
回复【3楼】kassandra:
---------------------------------
试了 不行 才读了几个字节啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-28 12:48

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表