STM32通过USB向上位机发送数据 上位机无法接收到

[复制链接]
9393|13
 楼主| fjr115 发表于 2010-7-18 23:02 | 显示全部楼层 |阅读模式
本帖最后由 fjr115 于 2010-7-18 23:07 编辑

我的STM32 是利用ST官方的Mass_Storage修改的
端点1是IN  端点2是OUT  这两个端点都是批量传输端点

安装驱动后  我用Bus Hound 5向其发送数据 STM32能顺利接收
void EP2_OUT_Callback(void)
{
  PMAToUserBufferCopy(Bulk_Data_Buff, ENDP2_RXADDR, 64);
  SetEPRxValid(ENDP2);
  UserToPMABufferCopy(sendBufferr, GetEPTxAddr(ENDP1), 64);
  SetEPTxCount(ENDP1, 64);
  SetEPTxValid(ENDP1);
}
但我试图通过
  UserToPMABufferCopy(sendBufferr, GetEPTxAddr(ENDP1), 64);
  SetEPTxCount(ENDP1, 64);
  SetEPTxValid(ENDP1);
来向上位机发送数据 但Bus Hound 5中看不到有任何来自STM32的数据
所以想问一下这是什么原因 谢谢
香水城 发表于 2010-7-19 09:00 | 显示全部楼层
因为上位机没有取数据。
vigia 发表于 2010-7-19 10:18 | 显示全部楼层
USB通信都是由主机发起的

如果主机没有请求数据,STM32是不会发送的
 楼主| fjr115 发表于 2010-7-19 11:05 | 显示全部楼层
怎样使上位机取数据?
香水城 发表于 2010-7-19 14:00 | 显示全部楼层
怎样使上位机取数据?
fjr115 发表于 2010-7-19 11:05


这是上位机驱动的事情,我也不知道怎么做。
 楼主| fjr115 发表于 2010-7-19 14:26 | 显示全部楼层
哦 这样
txcy 发表于 2010-7-19 15:39 | 显示全部楼层
上位机还需要取数据吗,应该是有数据就接收吧,串口不就是这样的吗
vigia 发表于 2010-7-19 16:01 | 显示全部楼层
上位机还需要取数据吗,应该是有数据就接收吧,串口不就是这样的吗
txcy 发表于 2010-7-19 15:39


汗,,,,你凭什么去应该呢?

如果串口和USB一样,那还要USB干吗呢,直接串口好来。
bestfang 发表于 2010-7-19 20:31 | 显示全部楼层
usb的协议 必须主发请求给从的  不然想想多挂几个从usb 就乱套了
 楼主| fjr115 发表于 2010-7-19 21:14 | 显示全部楼层
搞定了  原因就在 "这是上位机驱动的事情,我也不知道怎么做。"
编了个程序取数据后就OK了  谢谢香主 谢谢各位
微兮兮 发表于 2013-5-9 21:13 | 显示全部楼层
fjr115 发表于 2010-7-19 21:14
搞定了  原因就在 "这是上位机驱动的事情,我也不知道怎么做。"
编了个程序取数据后就OK了  谢谢香主 谢谢 ...

请问您是如何编写的呢?能分享一下吗?
he19880406 发表于 2013-11-25 16:55 | 显示全部楼层
我也遇到这样的问题。使用超级终端接收不到下位机发送来的数据。虚拟串口方式,上位机应该由驱动程序来处理发送IN命令吧。
he19880406 发表于 2013-11-25 16:57 | 显示全部楼层
不知道楼主现在问题解决了吗?
1375917982gxut 发表于 2017-5-22 15:20 | 显示全部楼层
同问同求,怎么向stm32 USB设备发送、接收数据
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

7

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部