硬汉嵌入式论坛

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

同志们,CubeMX生成的USB代码,是在USB中断里面进行的数据读写操作,这样子会影响其他任务的实时性吧?

  [复制链接]

58

主题

267

回帖

446

积分

高级会员

积分
446
发表于 2019-9-18 11:47:49 | 显示全部楼层 |阅读模式
如题
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106739
QQ
发表于 2019-9-18 11:57:46 | 显示全部楼层
你检索下HAL库软件包里面带的一批例子带OS的,看看有做单独任务处理的没
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2019-9-18 16:59:24 | 显示全部楼层
eric2013 发表于 2019-9-18 11:57
你检索下HAL库软件包里面带的一批例子带OS的,看看有做单独任务处理的没

看了下,HAL库自带的USB例程里,也是只初始化了USB,并没有轮询任务,所以应该也是在USB中断中进行的所有通信操作。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106739
QQ
发表于 2019-9-18 18:50:45 | 显示全部楼层
ihavedone 发表于 2019-9-18 16:59
看了下,HAL库自带的USB例程里,也是只初始化了USB,并没有轮询任务,所以应该也是在USB中断中进行的所有 ...

那RL-USB满足你的要求,这个是中断发任务消息,在任务里面执行实际工作的。
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2019-9-19 13:40:13 | 显示全部楼层
eric2013 发表于 2019-9-18 18:50
那RL-USB满足你的要求,这个是中断发任务消息,在任务里面执行实际工作的。

刚好看到另一个帖子讲的RL-USB,但是要配合他自己的系统才行吧?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106739
QQ
发表于 2019-9-19 15:41:11 | 显示全部楼层
ihavedone 发表于 2019-9-19 13:40
刚好看到另一个帖子讲的RL-USB,但是要配合他自己的系统才行吧?

不限制,这里做了RTX5和FreeRTOS两个版本

基于V7的新版RL-USB和RL-FlashFS的NAND完整解决方案,实现更简单,用户仅需初始化FMC
http://www.armbbs.cn/forum.php?m ... 4277&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

0

主题

50

回帖

50

积分

初级会员

积分
50
发表于 2020-3-9 09:53:02 | 显示全部楼层
eric2013 发表于 2019-9-19 15:41
不限制,这里做了RTX5和FreeRTOS两个版本

基于V7的新版RL-USB和RL-FlashFS的NAND完整解决方案,实现更 ...

这个必须要用 RTE 来配置嘛?我用的是 STM32L4 系列的单片机,RTE环境里没有USB的配置选项。如何把RL-USB手动移植到我的工程里呢?
回复

使用道具 举报

0

主题

50

回帖

50

积分

初级会员

积分
50
发表于 2020-3-9 09:56:24 | 显示全部楼层
说错了,是没有USB Host的配置选项,我要用 STM32L4 来读取 U盘

USBHost.jpg
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106739
QQ
发表于 2020-3-9 10:37:26 | 显示全部楼层
meirenai 发表于 2020-3-9 09:53
这个必须要用 RTE 来配置嘛?我用的是 STM32L4 系列的单片机,RTE环境里没有USB的配置选项。如何把RL-USB ...

L4有。

USB Host要将下拉列表里面的MDK-Plus切换到MDK Pro
回复

使用道具 举报

0

主题

50

回帖

50

积分

初级会员

积分
50
发表于 2020-3-9 11:02:23 | 显示全部楼层
eric2013 发表于 2020-3-9 10:37
L4有。

USB Host要将下拉列表里面的MDK-Plus切换到MDK Pro

多谢硬汉            
回复

使用道具 举报

210

主题

1043

回帖

1683

积分

至尊会员

More we do, more we can do.

积分
1683
发表于 2020-4-3 16:41:52 | 显示全部楼层
如果平时USB口不接,是没有影响的。
回复

使用道具 举报

6

主题

35

回帖

53

积分

初级会员

积分
53
发表于 2020-7-30 15:00:29 | 显示全部楼层
eric2013 发表于 2019-9-18 18:50
那RL-USB满足你的要求,这个是中断发任务消息,在任务里面执行实际工作的。

硬汉你好:RL_usb的device设备hid、cdc、winusb都是中断任务消息?。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106739
QQ
发表于 2020-7-30 15:03:47 | 显示全部楼层
zz1179842922 发表于 2020-7-30 15:00
硬汉你好:RL_usb的device设备hid、cdc、winusb都是中断任务消息?。

对,都是。
回复

使用道具 举报

6

主题

35

回帖

53

积分

初级会员

积分
53
发表于 2020-7-30 16:00:26 | 显示全部楼层

好的好的 谢谢
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
发表于 2022-1-14 10:16:03 | 显示全部楼层
也遇到了这个情况,跑的UCOS系统,把SDRAM虚拟成U盘读写都没问题,把外部FLASH虚拟成U盘会出现莫名的不成功,一插USB程序指针好像跑飞了,停止也找不到断点在哪儿,堆栈都开的足够大。
想想在中断里操作FLASH本身就不合理,尝试把中断处理函数放到任务里,中断向这个任务发消息,发现USB中断太频繁,瞬间就会把任务消息队列填满。
不知道USB为啥中断这么频繁,下一步打算仅把操作FLASH的部分放到任务里面再试试。
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2022-1-17 10:49:21 | 显示全部楼层
云琴箫龙 发表于 2022-1-14 10:16
也遇到了这个情况,跑的UCOS系统,把SDRAM虚拟成U盘读写都没问题,把外部FLASH虚拟成U盘会出现莫名的不成功 ...

只把  flash 操作放到任务,就会要求中断函数等待 flash 操作完成,一样会有问题。
只能把整个 USB 协议栈全放外部,根据状态和消息来进行处理。   
从 ST 的 USB 协议栈上改我没搞成,有个项目就直接换成了 Thread X, 用 USBX 了。另一个项目懒得改动这么大,就换成了网络,通过 TFTP 来获取文件。
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
发表于 2022-1-17 18:20:24 | 显示全部楼层
ihavedone 发表于 2022-1-17 10:49
只把  flash 操作放到任务,就会要求中断函数等待 flash 操作完成,一样会有问题。
只能把整个 USB 协议 ...

尝试过把整个协议栈放任务里,中断里面发消息给任务,任务执行。发现USB的中断太频繁,尤其是插上USB的瞬间,瞬间就会把任务的消息队列撑爆,所以暂时放弃了这种方案。
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2022-1-17 23:00:13 | 显示全部楼层
云琴箫龙 发表于 2022-1-17 18:20
尝试过把整个协议栈放任务里,中断里面发消息给任务,任务执行。发现USB的中断太频繁,尤其是插上USB的瞬 ...

ST 的 USB 协议栈不好搞,他就不是基于任务的形式的。
可以参考 USBX,或者干脆就用 USBX 算了。
回复

使用道具 举报

98

主题

340

回帖

634

积分

金牌会员

积分
634
发表于 2022-1-19 21:57:58 | 显示全部楼层
ihavedone 发表于 2022-1-17 23:00
ST 的 USB 协议栈不好搞,他就不是基于任务的形式的。
可以参考 USBX,或者干脆就用 USBX 算了。

USBX得换操作系统Thread X吧,用惯UCOS了,等后期有精力了研究一下这个操作系统
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-3 12:54 , Processed in 0.375684 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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