[技术问答] 请问F460初始化USB时间为什么这么久?

[复制链接]
2393|17
 楼主| WT418995874 发表于 2022-10-18 08:56 | 显示全部楼层 |阅读模式
看到初始化代码里加了好多阻塞的延时,如何更好修改这些延时?

还有个问题,软件根据不同条件,需要将USB 在HID或CDC之间切换,由什么好办法吗?

lzbf 发表于 2022-11-5 11:57 | 显示全部楼层
使用串口输出,查看一下配置usb是否需要很长的时间。
sesefadou 发表于 2022-11-5 12:06 | 显示全部楼层
初始化usb的是不是进行其他的操作了?
sdlls 发表于 2022-11-5 13:51 | 显示全部楼层
这个没有遇到过,之前做 stm32的时候usb初始化的速度可以的
febgxu 发表于 2022-11-5 14:17 | 显示全部楼层
你设置的时钟是多大的呢?              
sagade 发表于 2022-11-5 16:43 | 显示全部楼层
看来不是我一个人碰到这个问题。老的2.0.0版本的USB延时使用软件循环延时,感觉是flash跑的太慢了。3.0.0版本的库文件使用滴答定时器来延时,我按照3.0.0的方法把原先的USB延时函数改成滴答定时器,基本是无感了,原先要3,4秒的样子。
 楼主| WT418995874 发表于 2022-11-7 15:52 | 显示全部楼层
楼上说的没错,就是USB使用了软件循环延时,导致时间很长;
我这边因为时特定条件下才需要启用初始化USB,所以在循环中使用时间片分步执行,等到最后初始化完在退出初始化程序,需要修改库里面的USB初始化代码
weifeng90 发表于 2022-11-7 20:35 来自手机 | 显示全部楼层
软件延时确实效率很低下
cen9ce 发表于 2023-2-1 12:42 | 显示全部楼层
把延时去掉呗,用定时器延时
b5z1giu 发表于 2023-2-1 13:50 | 显示全部楼层
你可以了解一下,这些延时的作用是什么
g0d5xs 发表于 2023-2-1 15:03 | 显示全部楼层
可以想想改改程序嘛,把初始化的delay缩小点
y1n9an 发表于 2023-2-1 16:08 | 显示全部楼层
属实会很长,如果有delay的话
su1yirg 发表于 2023-2-1 17:09 | 显示全部楼层
你把延时都去掉试试,看看能否正常使用呗
tax2r6c 发表于 2023-2-1 18:21 | 显示全部楼层
切换的话,可以delay一下,这个最低时间是多少,自己试试呗
ex7s4 发表于 2023-2-5 08:07 | 显示全部楼层
多调试呗,没啥好办法
suw12q 发表于 2023-2-5 09:04 | 显示全部楼层
切换也不需要这么久的吧,我觉得配置一下就好了啊
lamanius 发表于 2023-2-5 10:16 | 显示全部楼层
这个通过修改描述符就行了
l1uyn9b 发表于 2023-2-5 12:47 | 显示全部楼层
把延时去了,估计能好点
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

78

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部