打印
[STM32F4]

[STM32F4]USB FIFO问题咨询

[复制链接]
4120|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zook0k|  楼主 | 2014-10-15 00:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zook0k 于 2014-10-15 11:29 编辑

在看[STM32F4]的应用手册[RM0090.pdf]时有几个问题想不通,咨询下版主,以下描述基于全速模式下设备模式:
1.TxFIFO
文档中提到EP0~EP3提供每个端点大概为4k的空间(0xFFD)。
文档中在配置端点FIFO时如OTG_FS_DIEPTXFx时最大值为256(这里看错了,应该是0x10000,完全大于1024,疑问解除)*1DWORD,也就是1k。
系统可以分配给4k,而实际用的时只能用1k,这会不会浪费空间?

文档中寄存器OTG_FS_GRSTCTL还提到TXFNUM为TxFIFO取值为0~15。
我的理解是这样的,不知道对不,4个FIFO空间被依次分为1k,编号为0~15,在使用时EP0 TxFIFO取编号0~3,依次类推。这样不是还有一些FIFO没有被利用是空闲着的吗?
那TxFIFO编号取值范围是0~15,实际使用时候应该0~EP0的buffer(最大4k)、1~EP1的buffer(最大4k)、2~EP2的buffer(最大4k)、3~EP3的buffer(最大4k)
目前还不太熟悉,请版主赐教,谢谢。

2.RxFIFO
文档中提到USB系统具有1.25KB专用RAM,没有看到图形(起始地址,长度等),这1.25KB是否就是RxFIFO?
沙发
JasonWangFAE| | 2014-10-15 09:28 | 只看该作者
系统可以分配给4k
<-- 4K means 4K Bytes  .  

而实际用的时只能用1k
<-- 1K means 1K words (1 word = 4 bytes )


使用特权

评论回复
板凳
zook0k|  楼主 | 2014-10-15 11:30 | 只看该作者
谢谢Jason的鼎力支持。
我第二段红色字体理解对吗?

使用特权

评论回复
地板
mmuuss586| | 2014-10-15 12:28 | 只看该作者

你可以根据需要设置各端点的空间大小;
厂家程序只能参考,你总不能啥也不改;

使用特权

评论回复
5
zook0k|  楼主 | 2014-10-15 13:13 | 只看该作者
谢谢斑竹

使用特权

评论回复
6
zook0k|  楼主 | 2014-10-16 14:10 | 只看该作者
第一次会用结贴,不容易啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

233

帖子

2

粉丝