野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9897|回复: 2

请教一下USB HID的问题

[复制链接]
发表于 2018-12-1 10:02:13 | 显示全部楼层 |阅读模式
这下面是USB描述符,为什么我设置采样位32位,然后就不能用了。原来是16位的。
        //Config_Descriptor
        {
                sizeof(Config_Descriptor),
                CONFIGURATION,                                //.bDescriptorType
                sizeof(USB_Config_Descriptor_Audio10),        //.wTotalLength
                INTERFACE_COUNT,                              //.bNumInterfaces
                0x01,                                         //.bConfigurationValue
                0x00,                                         //.iConfiguration
                0x80,                                         //.bmAttributes
                MAX_POWER                                     //.MaxPower
        },
        //Interface_Descriptor  
        {
                sizeof(Interface_Descriptor),
          INTERFACE,                                  //bDescriptorType
                INTERFACE_NUMBER_AUDIO_CONTROL,             //.bInterfaceNumber
                0x00,                                       //.bAlternateSetting
                0x00,                                       //.bNumEndpoints
                AUDIO,                                      //.bInterfaceClass
                AUDIOCONTROL,                               //.bInterfaceSubClass
                0x00,                                       //.bInterfaceProtocol        
                0x00                                        //.iInterface        
        },
        //USB_Control_Interface_UAC10
        {
                //Class_Specific_AC_Interface_Descriptor_UAC10
                {
                        sizeof(Class_Specific_AC_Interface_Descriptor_UAC10),
                        CS_INTERFACE,                             //.bDescriptorType
                        HEADER,                                   //.bDescriptorSubtype
                        0x0100,                                   //.bcdADC        
                        sizeof(USB_Control_Interface_UAC10),      //.wTotalLength
                        1,                                        //.bInCollection
                  INTERFACE_NUMBER_AUDIO_INPUT,             //.baInterfaceNr
                },
                #if(NUM_AUD_CHAN_IN > 0)
                //Input_Terminal_Descriptor_UAC10
                {
                        sizeof(Input_Terminal_Descriptor_UAC10),
                        CS_INTERFACE,                            //.bDescriptorType
                        INPUT_TERMINAL,                          //.bDescriptorSubtype
                        ID_IT_AUD,                               //.bTerminalID
                        Microphone,                              //.wTerminalType
                        0x00,                                    //.bAssocTerminal
                        NUM_AUD_CHAN_IN,                         //.bNrChannels
                        0x0003,                                  //.wChannelConfig
                        0x00,                                    //.iChannelNames
                        0x00                                     //.iTerminal        
                },
                #if(INPUT_VOLUME_CONTROL == 1)
                {//Audio_FeatureUnit_In_Descriptor_UAC10
                        sizeof(Audio_FeatureUnit_In_Descriptor_UAC10), //.bDescriptorType
                        CS_INTERFACE,                                   // .bDescriptorSubtype
                        FEATURE_UNIT,                                   //.bDescriptorSubtype
                        FU_USBIN,                                        //.bUnitID
                        ID_IT_AUD,                                       //.bSourceID
                        0x04,                                            //.bControlSize   //ò»¸öí¨μàËùÕ¼μÄBytesêy
                        {                                                //bmaControls
                                0x00000001,
                                0x00000003,
                                0x00000003,
                                0x00000003,
                                0x00000003,
                                0x00000003,
                                0x00000003,
                                0x00000003,
                                0x00000003,  
                        },
                        0x00                                             //.iFeature
                },
                #endif
                {
                        //Output_Terminal_Descriptor_UAC10
                        sizeof(Output_Terminal_Descriptor_UAC10),
                        CS_INTERFACE,
                        OUTPUT_TERMINAL,
                        ID_OT_USB,                              //.bTerminalID
                        USB_streaming,                          //.wTerminalType
                        0x00,                                   //.bAssocTerminal
#if(INPUT_VOLUME_CONTROL == 1)
                        FU_USBIN,                                //.bSourceID        
#else
                        ID_IT_AUD,
#endif
                        0x00
                },
                #endif
        },
        #if(NUM_AUD_CHAN_IN > 0)
        {
                //Interface_Descriptor
                sizeof(Interface_Descriptor),
          INTERFACE,
                INTERFACE_NUMBER_AUDIO_INPUT,
                0x00,
                0x00,
                AUDIO,
                AUDIOSTREAMING,
                0x00,
                0x00
        },
        {
                //Interface_Descriptor
                sizeof(Interface_Descriptor),
                INTERFACE,
                INTERFACE_NUMBER_AUDIO_INPUT,
                0x01,
                0x01,
                AUDIO,
                AUDIOSTREAMING,
                0x00,
                0x00,
        },
        //Class_Specific_AS_Interface_Descriptor_UAC10
        {
                sizeof(Class_Specific_AS_Interface_Descriptor_UAC10),
                CS_INTERFACE,
                AS_GENERAL,
                ID_OT_USB,                          //.bTerminalLink        
                1,                                  //.bDelay        
                TYPE_I_PCM                          //.wFormatTag        
        },
        {
                //Type_I_Format_Discrete_Descriptor_UAC10
                sizeof(Type_I_Format_Discrete_Descriptor_UAC10),
                CS_INTERFACE,
                FORMAT_TYPE,
                FORMAT_TYPE_I,
                NUM_AUD_CHAN_IN,                   //.bNrChannels
                SUBFRAMESIZE,                              //.bSubframeSize
                SAMPLE_RESOLUTION,                   //bBitResolution
                NUMBER_OF_DISCRETE_SAMPLING,
                {
                        SAMPLE_FREQ_HZ(SAMPLERATE),
                }

回复

使用道具 举报

发表于 2018-12-1 12:32:22 | 显示全部楼层
有什么问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-1 16:38:12 | 显示全部楼层
原来是16k16bit的,我改了16k32bit不能用了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 10:41 , Processed in 0.030385 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表