3737|3

76

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

STM32USBLIB里面的一点细节求证!! [复制链接]



/******************************************************************************* * Macro Name : SetEPDblBuffCount / SetEPDblBuf0Count / SetEPDblBuf1Count. * Description : Gets buffer 0/1 address of a double buffer endpoint. * Input : bEpNum: endpoint number. * : bDir: endpoint dir EP_DBUF_OUT = OUT * EP_DBUF_IN = IN * : wCount: Counter value * Output : None. * Return : None. *******************************************************************************/
#define _SetEPDblBuf0Count(bEpNum, bDir, wCount) { \
   if(bDir == EP_DBUF_OUT)\
       /* OUT endpoint */ \
      {_SetEPRxDblBuf0Count(bEpNum,wCount);} \
  else if(bDir == EP_DBUF_IN)\
     /* IN endpoint */ \  
     *_pEPTxCount(bEpNum) = (uint32_t)wCount; \
} /* SetEPDblBuf0Count*/
#define _SetEPDblBuf1Count(bEpNum, bDir, wCount) { \
  if(bDir == EP_DBUF_OUT)\
   /* OUT endpoint */ \
    {_SetEPRxCount(bEpNum,wCount);}\
  else if(bDir == EP_DBUF_IN)\
  /* IN  endpoint */\
    *_pEPRxCount(bEpNum) = (uint32_t)wCount; \
} /* SetEPDblBuf1Count */

上面这个是在STM32的USB LIB里面的一段代码(usb_regs.h中),上面分别对DBL的BUF0和DBL的BUF1设置数值,而第2个(红色部分)是不是应该也是*pEPTxCount(bEpNum)呢?
我是USB初学,大家莫笑我低级哟!
此帖出自stm32/stm8论坛

最新回复

                                 哈哈,菜鸟的问题可能大家不屑回复,而高手的问题可能别人没有你钻研的这么深入,没有发言权。 表面现象都是无人理睬,但内涵却大不一样,  详情 回复 发表于 2010-8-30 18:37
点赞 关注
 

回复
举报

77

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
看来这个问题,大家都不感兴趣。

另外有个问题想向大家请教一下,希望明白的人能不吝指点!
就是STM32的USB的最大缓冲区是512BYTES,而在USB2.0的FULL SPEED下面,最大传输的包长度可以到1023BYTES,大家是怎么样处理这个问题的呢?抑或STM32的USB是不能够完全支持到USB2.0 FULL SPEED的呢?
此帖出自stm32/stm8论坛
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
经过两天的学习,弄清楚了一些眉目,基本上就是第一个问题ST是对的,第二个问题我是对的。
问题1,在STM32里面USB的双缓冲机制就是当你采用双缓冲时,BUF0和BUF1就分别对应TXBUF和RXBUF了。
问题2,STM32的512BYTES的缓冲区特征就决定了ISO同步传输的最大长度是512字节(其实还达不到,因为这个512的前面还固定分配作为端点对应起始地址)。
是我的问题太幼稚,不值一呬,还是我的帖子大家都看不到呢?两,三天时间竟然无人理睬!
只是觉得21IC越来越不像21IC了。
此帖出自stm32/stm8论坛
 
 

回复

99

帖子

0

TA的资源

一粒金砂(初级)

4
 
哈哈,菜鸟的问题可能大家不屑回复,而高手的问题可能别人没有你钻研的这么深入,没有发言权。

表面现象都是无人理睬,但内涵却大不一样,
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表