首页 文章

写入USB设备,该设备共享进出事务的 endpoints

提问于
浏览
0

寻找有USB设备的帮助我有2个接口 . 第一个接口是HID,第二个接口是MSC . 我正在使用STM32F415VG进行开发,并尝试将其设置为USB主机 . 基本上,我可以毫无问题地与USB设备通信 . 我可以装载FAT并且可以从设备中读取正常,但我似乎无法写入它 . 在描述符中进一步挖掘有助于我发现我需要的接口(MSC)在(0x81)和out(0x01)中使用相同的 endpoints 地址 . 我尝试使用USB主机的所有其他设备似乎使用不同的地址(通常为0x81,0x02) . 我开始认为这可能是个问题 . 有没有其他人遇到类似或能够证实我的假设?这是我的 endpoints 描述符的副本,以防它有用:

Ep_Desc[0]  0x2000c230  
    Ep_Desc[0][0]   {...}   
        bLength             0x7 
        bDescriptorType     0x5 
        bEndpointAddress    0x82    
        bmAttributes        0x3 
        wMaxPacketSize      0x8 
        bInterval           0x5 
    Ep_Desc[0][1]   {...}   
        bLength             0x7 
        bDescriptorType     0x5 
        bEndpointAddress    0x2 
        bmAttributes        0x3 
        wMaxPacketSize      0x8 
        bInterval           0x5 

Ep_Desc[1]  0x2000c240  
    Ep_Desc[1][0]   {...}   
        bLength             0x7 
        bDescriptorType     0x5 
        bEndpointAddress    0x81    
        bmAttributes        0x2 
        wMaxPacketSize      0x40    
        bInterval           0x0 
    Ep_Desc[1][1]   {...}   
        bLength             0x7 
        bDescriptorType     0x5 
        bEndpointAddress    0x1 
        bmAttributes        0x2 
        wMaxPacketSize      0x40    
        bInterval           0x0

1 回答

  • 0

    我可以装载FAT,可以从设备上读取正常

    In和Out EP都必须能够为您提供从MSC设备读取的功能 . 否则PC甚至无法正确检测到它 .

    我这里有一个基于μC的MSC设备,它也使用相同的EP进行MSC In和Out .

    我似乎无法写信给它

    检查实际写入内容的代码 .

相关问题