硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1302|回复: 4
收起左侧

[FatFs] 请问写入时发生写入超时错误并且程序卡死是什么原因?

[复制链接]

10

主题

32

回帖

62

积分

初级会员

积分
62
发表于 2019-11-13 19:09:40 | 显示全部楼层 |阅读模式
QQ图片20191113190434.png
仿真发现程序卡死在这个位置。
单独测试FATFS创建文件并读写没问题,但是后面加入了GPS,写入GPS数据就写不进去,文件创建没问题。
写入函数为:
#define Date_len          95
char Data[Date4G_len];
__disable_irq();
retSD=f_write(&SDFile, Data, Date_len, &bw);
__enable_irq();       
求大佬帮助_(:з」∠)_
回复

使用道具 举报

10

主题

32

回帖

62

积分

初级会员

积分
62
 楼主| 发表于 2019-11-13 19:46:07 | 显示全部楼层
QQ图片20191113194325.png
现在把其他程序全部注释,仅留下FATFS读写函数在while循环里,还是不行
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106685
QQ
发表于 2019-11-14 08:42:40 | 显示全部楼层
写入前后不要开关在中断,如果你的SD卡驱动使用了中断服务程序。
回复

使用道具 举报

9

主题

112

回帖

144

积分

初级会员

积分
144
发表于 2019-11-14 09:49:04 | 显示全部楼层
中断关了的话,定时器无中断,tick无法自增,HAL_GetTick()为固定值,最后的结果就是读写超时
回复

使用道具 举报

10

主题

32

回帖

62

积分

初级会员

积分
62
 楼主| 发表于 2019-11-14 15:56:51 | 显示全部楼层
谢谢两位大佬的指点_(:з」∠)_
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-29 20:56 , Processed in 0.171081 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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