野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8857|回复: 33

stm32F407读写U盘测速

[复制链接]
发表于 2022-3-21 16:21:47 | 显示全部楼层 |阅读模式
stm32F407读写U盘测速怎么做的。有什么方法,请知道的大佬说一声,不然我以为这个论坛没人了?
回复

使用道具 举报

 楼主| 发表于 2022-3-24 15:54:46 | 显示全部楼层
论坛人呢,有没有人帮个忙,管理
回复 支持 反对

使用道具 举报

发表于 2022-3-24 16:49:46 | 显示全部楼层
简单的形式弄个大点文件 读写文件前开始计时  读写完毕后 减出过程时间  除读写字节大小  
具体怎么计时系统定时器或者TIM都可以  中断里面记录时长或者不弄中断读取开始结束时寄存器值减换算,这个计时频率要低些防溢出
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-25 08:38:33 | 显示全部楼层
WishWish 发表于 2022-3-24 16:49
简单的形式弄个大点文件 读写文件前开始计时  读写完毕后 减出过程时间  除读写字节大小  
具体怎么计时系 ...

管理大大,我用tim6定时器计数,设置预分频数和定时器计数周期,得出定时器计数一次花费多少时间,然后在读写代码的前后添加读取当前计数值,然后前后相减,得出读写过程花费多少计数值,再乘以一次计数花费时间,最后得出读写速度,然而结果只有10kb/s左右,怎么回事,管理大大,帮帮忙
回复 支持 反对

使用道具 举报

发表于 2022-3-25 11:46:28 | 显示全部楼层
407学习者 发表于 2022-3-25 08:38
管理大大,我用tim6定时器计数,设置预分频数和定时器计数周期,得出定时器计数一次花费多少时间,然后在 ...

截图程序
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 11:53:23 | 显示全部楼层

管理大大,你看看,分别是定时器和两个测量读写速率的代码,整体程序代码是在野火USB程序上改的
捕获2.PNG
捕获.PNG
捕获1.PNG
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 11:54:32 | 显示全部楼层

不好意思,回复晚了,我以为不会很快回复, 没有很快回复
回复 支持 反对

使用道具 举报

发表于 2022-3-26 14:30:37 | 显示全部楼层
407学习者 发表于 2022-3-26 11:53
管理大大,你看看,分别是定时器和两个测量读写速率的代码,整体程序代码是在野火USB程序上改的
...

运行的串口打印截图
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 15:22:52 | 显示全部楼层
WishWish 发表于 2022-3-26 14:30
运行的串口打印截图

打印界面
捕获6.PNG
捕获4.PNG
捕获5.PNG
回复 支持 反对

使用道具 举报

发表于 2022-3-26 15:26:47 | 显示全部楼层

发的三个图的计数图很难看那个是哪个 选好两张图看开始和结束
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 15:37:14 | 显示全部楼层
WishWish 发表于 2022-3-26 15:26
发的三个图的计数图很难看那个是哪个 选好两张图看开始和结束

好的,稍等
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 15:41:41 | 显示全部楼层
WishWish 发表于 2022-3-26 15:26
发的三个图的计数图很难看那个是哪个 选好两张图看开始和结束

这个时重新截的图

写文件开始计数值

写文件开始计数值

写文件结束和读文件开始

写文件结束和读文件开始

读文件结束计数值

读文件结束计数值
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 15:44:04 | 显示全部楼层
WishWish 发表于 2022-3-26 15:26
发的三个图的计数图很难看那个是哪个 选好两张图看开始和结束

总共计数10000次,写开始是19次,到结束显示的虽然是424次,但是应该已经是19计数到10000,然后又重新计数到424,读文件也是一样,开始是435次,结束是215次,但是应该是435计数到10000次,又重新计数到了215次
回复 支持 反对

使用道具 举报

发表于 2022-3-26 15:52:23 | 显示全部楼层
407学习者 发表于 2022-3-26 15:44
总共计数10000次,写开始是19次,到结束显示的虽然是424次,但是应该已经是19计数到10000,然后又重新计 ...

读的是CNT寄存器值是以定时器时钟频率除分频和Prescaler为频率累加
84M/42000 =2000

1/2000 (周期) * (424-19) = 0.2025s

55477/0.2025/1024=2百多KB/s
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 15:55:58 | 显示全部楼层
WishWish 发表于 2022-3-26 15:52
读的是CNT寄存器值是以定时器时钟频率除分频和Prescaler为频率累加
84M/42000 =2000

但是写文件怎么是435到215
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:01:03 | 显示全部楼层
WishWish 发表于 2022-3-26 15:52
读的是CNT寄存器值是以定时器时钟频率除分频和Prescaler为频率累加
84M/42000 =2000

这个429应该是19计数到10000,又重新计数到429,应该是(10429-19)*(1/2000)
回复 支持 反对

使用道具 举报

发表于 2022-3-26 16:01:37 | 显示全部楼层
407学习者 发表于 2022-3-26 15:55
但是写文件怎么是435到215

计数到Period从头了 Period直接设最大0xFFFF
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:04:03 | 显示全部楼层
WishWish 发表于 2022-3-26 16:01
计数到Period从头了 Period直接设最大0xFFFF

所以那个写文件的速度计算的也不对
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:13:17 | 显示全部楼层
WishWish 发表于 2022-3-26 16:01
计数到Period从头了 Period直接设最大0xFFFF

捕获2.PNG 捕获1.PNG 捕获3.PNG 重新设置计数周期,65536次,打印结果

回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:20:04 | 显示全部楼层
WishWish 发表于 2022-3-26 16:01
计数到Period从头了 Period直接设最大0xFFFF

管理大大还在吗,
回复 支持 反对

使用道具 举报

发表于 2022-3-26 16:20:18 | 显示全部楼层
407学习者 发表于 2022-3-26 16:13
重新设置计数周期,65536次,打印结果

不要截3个图 就看写入一次55477字节一前一后
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:23:19 | 显示全部楼层
WishWish 发表于 2022-3-26 16:20
不要截3个图 就看写入一次55477字节一前一后

写入的前后图

写入开始

写入开始

写入结束

写入结束
回复 支持 反对

使用道具 举报

发表于 2022-3-26 16:27:39 | 显示全部楼层

确认没有截错吗 写一次过了多少秒
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:30:05 | 显示全部楼层
WishWish 发表于 2022-3-26 16:27
确认没有截错吗 写一次过了多少秒

确认,就是这样的,因为试了很多次,发现速度太慢才求助的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:31:37 | 显示全部楼层
407学习者 发表于 2022-3-26 16:30
确认,就是这样的,因为试了很多次,发现速度太慢才求助的

算出来5s左右
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:42:14 | 显示全部楼层
WishWish 发表于 2022-3-26 16:27
确认没有截错吗 写一次过了多少秒

管理大大,这个什么问题,

回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-26 16:54:22 | 显示全部楼层
WishWish 发表于 2022-3-26 16:27
确认没有截错吗 写一次过了多少秒

管理大大,还在么,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-28 08:53:12 | 显示全部楼层
WishWish 发表于 2022-3-26 16:27
确认没有截错吗 写一次过了多少秒

管理大大,求助啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-29 13:54:24 | 显示全部楼层
WishWish 发表于 2022-3-26 16:27
确认没有截错吗 写一次过了多少秒

管理员求助
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-29 14:11:46 | 显示全部楼层

版主求助
回复 支持 反对

使用道具 举报

发表于 2022-3-29 16:01:02 | 显示全部楼层

如果实际也是5秒去找哪些地方耗时的影响了 暂时没有看出什么问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-29 16:39:06 | 显示全部楼层
WishWish 发表于 2022-3-29 16:01
如果实际也是5秒去找哪些地方耗时的影响了 暂时没有看出什么问题

我去除了后面打印文件的代码,计数次数变少了,但是不稳定,写入文件的计数次数会在180和880之间变化,首次读写是880,第二次读写就变成了180
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-30 17:26:04 | 显示全部楼层
WishWish 发表于 2022-3-29 16:01
如果实际也是5秒去找哪些地方耗时的影响了 暂时没有看出什么问题

管理回个话行不行,407能达到12Mb/s么
回复 支持 反对

使用道具 举报

发表于 2022-3-30 17:54:43 | 显示全部楼层
407学习者 发表于 2022-3-30 17:26
管理回个话行不行,407能达到12Mb/s么

没有试过 没有想到什么问题
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-24 00:39 , Processed in 0.044679 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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