本帖最后由 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? |