stm32f4 USB主机进行CDC通讯异常
stm32f4作USB主机,进行CDC通讯,当接收RX_Enabled使能后,一旦调用读取函数后就会不停进入USB中断,大约5us。USBH_BulkReceiveData(pdev,
CDC_RxParam.pFillBuff,
CDC_Machine.CDC_DataItf.length,
CDC_Machine.CDC_DataItf.hc_num_in);
有没有大神做过USB主机 CDC通信的实例,求帮忙分析下。
如果将IN端口的管道CDC_Machine.CDC_DataItf.hc_num_in 改为其他值(非软件自动分配的),程序正常运行,也可以正常通过USB发送数据。但是接收仍不正常,但不会频繁进入USB中断(5us左右)。
与从机有关,主机配置应该没问题
从机初始化的时候设置IN端点为EP_TX_VALID状态,一旦主机发起IN传输事务就进入IN回调函数如下:
void EP1_IN_Callback (void)
{
USB_SIL_Read(EP1_IN, USB_Rx_Buffer,64);
SetEPTxValid(ENDP1);
}
感觉是主机发送IN事务,从机一直返回数据,主机一直进入IN事务数据接收中断。
已解决,从机发送问题,从机发送的状态机没写好造成知己持续接收中断。 孟同学 发表于 2019-5-27 14:36
已解决,从机发送问题,从机发送的状态机没写好造成知己持续接收中断。
有个相关的项目开发,你有意向吗?qq 732423541
页:
[1]