硬汉嵌入式论坛

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

[有问必答] ad7606、usb_host和fafts,连续写入u盘,出现2000ms的卡顿

[复制链接]

3

主题

11

回帖

3

积分

新手上路

积分
3
发表于 2016-10-20 21:41:41 | 显示全部楼层 |阅读模式
用ARMFLY V5的开发板,调试AD7606模块和U盘。
想要实现10k的AD采集和400kB/s的U盘写入,调了好久程序,功能基本实现。

发现一个问题:

用定时器中断 SysTick_ISR 进行计时,每到0.1ms,就开启AD转换,凑齐4kByte的数据,存储在内存变量中,
存满18个变量,就往u盘里面写,总共有22个变量,
每当写满18个,就置标志位,开启一次写u盘,
写满4608kB,就新建一个文件,继续写。

问题来了:

在写入文件前后用bsp_GetRunTime来得到系统时间,从而计算每18个变量写入的耗时,发现耗时大致稳定在80-120ms,平均每14个耗时,就有一个是120ms左右,其他的13个都是80ms左右;
而且每写几十次至一两百次,就会出现2000ms左右的写入耗时,而且每次出现都是几乎相同的2040-2050ms左右,
这就严重的影响了ad采集,只能把卡顿之后采集的数扔掉。。。

这个卡顿也会自行跳出,继续正常的运作,但调试的时候,又不能直接看到是卡在了哪里

请问,这个问题可能的原因是什么呢?

1、u盘本身的写入的卡顿?(u盘本身的卡顿不太可能会达到2000ms呀)
2、u盘通信的中断跟ad的中断冲突了?
3、其他什么吗?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2016-10-21 01:06:03 | 显示全部楼层
这个是文件系统的问题,每够一个簇大小后,就会做一次调整,如果新的簇里面没有擦除是不能写入新的数据,要先擦除才可以写入,我曾经测试过。

这个测试的是SD卡,U盘也是类似的。
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=22045

你可以换个别的U盘测试下,还可以将你现有的U盘低格一次测试下,效果会好些。
回复

使用道具 举报

3

主题

11

回帖

3

积分

新手上路

积分
3
 楼主| 发表于 2016-10-21 19:09:57 | 显示全部楼层

回 eric2013 的帖子

eric2013:这个是文件系统的问题,每够一个簇大小后,就会做一次调整,如果新的簇里面没有擦除是不能写入新的数据,要先擦除才可以写入,我曾经测试过。

这个测试的是SD卡,U盘也是类似的。
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=22045

....... (2016-10-21 01:06) 
非常感谢 eric 大哥,好人一生平安呐

就是说,能够实现u盘创建文件和写入的,但重复多次的写入之后出现的1.5s-2s的卡顿,这个现象是因为u盘在擦除要写入的下一个“簇”,对吗

那如果事先把u盘全部格式化,应该就不会出现这个现象,对么


我之后去试一下。太感谢了。
回复

使用道具 举报

3

主题

11

回帖

3

积分

新手上路

积分
3
 楼主| 发表于 2016-10-21 19:25:41 | 显示全部楼层

回 eric2013 的帖子

eric2013:这个是文件系统的问题,每够一个簇大小后,就会做一次调整,如果新的簇里面没有擦除是不能写入新的数据,要先擦除才可以写入,我曾经测试过。

这个测试的是SD卡,U盘也是类似的。
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=22045

....... (2016-10-21 01:06) 
看了一遍 测试SD卡这个帖子,发现对我来说不太乐观啊,我这个项目对u盘的要求苛刻了一点,出现卡顿不太能接受。

我每次写入70k,基本把f407的内存占光了,如果卡顿,就只能丢掉ad采集的数据。
还没测试格式化和更改簇大小,之后再想想办法。

真的非常感谢,能在这种时候有人指导一下方向
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-14 21:34 , Processed in 0.037895 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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