你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

做STM32f103 USB 双缓存的时候,发送4K数据里面前64字节是0

[复制链接]
LELEHEHE-362813 提问时间:2018-6-29 00:28 /


做STM32f103 USB 双缓存的时候, 采取ENP3的TXaddr1和TXaddr0的双缓存ping-pong发送机制,每次上位机接收完4K数据, 4K数据前64个字节全部是0,后面才是上位机要的数据,上位机取数据的时候,舍弃前64字节的0,才能正常使用,不知道这是为什么造成下位机(STM32)发送多64字节的问题

收藏 1 评论4 发布时间:2018-6-29 00:28

举报

4个回答
馒头弟 回答时间:2018-7-2 15:42:03
看来签到帖没配链接,大家都懒得搜啊。。。
你做CDC吗?

点评

哎呀,可能失误了  发表于 2018-7-16 16:00

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

zhdzhd-174422 回答时间:2018-7-2 18:11:10
USB的Bulk传输有两种方式认为数据传输完成
1. 发送的数据小于MaxPacketSize,这里MaxPacketSize是64
2. 发送的数据刚好等于请求的数据。即Windows中ReadFile()的size参数

如果发送的包全为64,则驱动认为接下来还有数据,会继续去读取USB的Bulk Endpoint,所以你感觉上收不到数据

评分

参与人数 1蝴蝶豆 +4 收起 理由
zero99 + 4

查看全部评分

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版