ch320v307代码有bug吗,高速给的是全速的描述符?

这一段没看懂:

 /* get usb other-speed descriptor */
                        case USB_DESCR_TYP_SPEED:
                            if( USBHS_DevSpeed == USBHS_SPEED_HIGH )
                            {
                                /* High speed mode为啥高速模式拷贝的是fs的配置? */
                                memcpy( &TAB_USB_HS_OSC_DESC[ 2 ], &MyCfgDescr_FS[ 2 ], DEF_USBD_CONFIG_FS_DESC_LEN - 2 );
                                pUSBHS_Descr = ( uint8_t * )&TAB_USB_HS_OSC_DESC[ 0 ];
                                len = DEF_USBD_CONFIG_FS_DESC_LEN;
                            }
                            else if( USBHS_DevSpeed == USBHS_SPEED_FULL )
                            {
                                /* Full speed mode 这里正好反过来? */
                                memcpy( &TAB_USB_FS_OSC_DESC[ 2 ], &MyCfgDescr_HS[ 2 ], DEF_USBD_CONFIG_HS_DESC_LEN - 2 );
                                pUSBHS_Descr = ( uint8_t * )&TAB_USB_FS_OSC_DESC[ 0 ];
                                len = DEF_USBD_CONFIG_HS_DESC_LEN;
                            }
                            else
                            {
                                errflag = 0xFF;
                            }
                            break;
/* USB Full-Speed Mode, Other speed configuration Descriptor */
uint8_t TAB_USB_FS_OSC_DESC[ sizeof(MyCfgDescr_HS) ] =
{
    /* Other parts are copied through the program */
    0x09, 0x07,
};

/* USB High-Speed Mode, Other speed configuration Descriptor */
uint8_t TAB_USB_HS_OSC_DESC[ sizeof(MyCfgDescr_FS) ] =
{
    /* Other parts are copied through the program */
    0x09, 0x07,
};


微信截图_20230329113305.png

这里主机请求的描述符,全称是:Other_speed_Configuration Descriptor

那当然是返回另一种速度的描述符


好的,谢谢回答


这个usbhs device的代码怎么测试呢?

我看是ep3收到后给ep4,目前ep3是out出去了,但是点ep4 in 却调试xact错误,怎么测?


1680148606102201.png

1680148606126634.png



兄弟们,帮忙解答下呀


电脑请求的上传长度需要等于设备端当前包长度。

bushound那个界面执行IN的时候,需要配置正确的数据长度。


我配置了,out是512,in也是512,in点run时他出错会自动变成0,我传给gif给你看


icon_rar.gifaa3.rar


我发现 ep1 in 512 也是这个情况,我怎么接收数据呢?郁闷啊!



只有登录才能回复,可以选择微信账号登录