Sonochan II 0.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Variables
uac1_usb_descriptors.h File Reference
`#include "conf_usb.h"`
`#include "usb_standard_request.h"`
`#include "usb_task.h"`
`#include "usb_descriptors.h"`
`#include "hid.h"`

Go to the source code of this file.

## Data Structures
struct | S_usb_user_configuration_descriptor
| Usb Class-Specific AS Isochronous Feedback Endpoint Descriptors pp 4.10.2.2 (none) More...
struct | S_usb_user_configuration_descriptor_one_freq

## Macros
#define | NB_INTERFACE 4
#define | CONF_NB 1
#define | CONF_INDEX 0
#define | CONF_ATTRIBUTES USB_CONFIG_SELFPOWERED
#define | MAX_POWER 130
#define | FIRST_INTERFACE1 1
#define | INTERFACE_COUNT1 3
#define | STD_AS_INTERFACE_OUT 0x02
#define | STD_AS_INTERFACE_IN 0x03
#define | INTERFACE_NB0 0
#define | ALTERNATE_NB0 0
#define | NB_ENDPOINT0 2
#define | INTERFACE_CLASS0 HID_CLASS
#define | INTERFACE_SUB_CLASS0 NO_SUBCLASS
#define | INTERFACE_PROTOCOL0 NO_PROTOCOL
#define | INTERFACE_INDEX0 0
#define | DSC_INTERFACE_HID INTERFACE_NB0
#define | HID_VERSION 0x0111
#define | HID_COUNTRY_CODE 0x00
#define | HID_NUM_DESCRIPTORS 0x01
#define | ENDPOINT_NB_1 (UAC1_EP_HID_TX| MSK_EP_DIR)
#define | EP_ATTRIBUTES_1 TYPE_INTERRUPT
#define | EP_IN_LENGTH_1_FS 8
#define | EP_SIZE_1_FS EP_IN_LENGTH_1_FS
#define | EP_IN_LENGTH_1_HS 8
#define | EP_SIZE_1_HS EP_IN_LENGTH_1_HS
#define | EP_INTERVAL_1 5
#define | ENDPOINT_NB_2 (UAC1_EP_HID_RX)
#define | EP_ATTRIBUTES_2 TYPE_INTERRUPT
#define | EP_OUT_LENGTH_2_FS 8
#define | EP_SIZE_2_FS EP_OUT_LENGTH_2_FS
#define | EP_OUT_LENGTH_2_HS 8
#define | EP_SIZE_2_HS EP_OUT_LENGTH_2_HS
#define | EP_INTERVAL_2 5
#define | INTERFACE_NB2 1
#define | ALTERNATE_NB2 0
#define | NB_ENDPOINT2 0
#define | INTERFACE_CLASS2 AUDIO_CLASS
#define | INTERFACE_SUB_CLASS2 0x01
#define | INTERFACE_PROTOCOL2 0x00
#define | INTERFACE_INDEX2 0
#define | DSC_INTERFACE_AUDIO INTERFACE_NB2
#define | ENDPOINT_NB_3 ( UAC1_EP_AUDIO_OUT )
#define | EP_ATTRIBUTES_3 0b00000101
#define | EP_IN_LENGTH_3_HS 308
#define | EP_IN_LENGTH_3_FS 308
#define | EP_SIZE_3_FS EP_IN_LENGTH_3_FS
#define | EP_SIZE_3_HS EP_IN_LENGTH_3_HS
#define | EP_INTERVAL_3_FS 0x01
#define | EP_INTERVAL_3_HS 0x04
#define | EP_REFRESH_3_FS 0x01
#define | EP_REFRESH_3_HS 0x04
#define | EP_BSYNC_ADDRESS_3 0x84
#define | ENDPOINT_NB_4 ( UAC1_EP_AUDIO_OUT_FB | MSK_EP_DIR )
#define | EP_ATTRIBUTES_4 0b00010001
#define | EP_IN_LENGTH_4_FS 3
#define | EP_IN_LENGTH_4_HS 4
#define | EP_SIZE_4_FS EP_IN_LENGTH_4_FS
#define | EP_SIZE_4_HS EP_IN_LENGTH_4_HS
#define | EP_INTERVAL_4_FS 0x01
#define | EP_INTERVAL_4_HS 0x04
#define | EP_REFRESH_4_FS 0x05
#define | EP_REFRESH_4_HS 0x05
#define | ENDPOINT_NB_5 ( UAC1_EP_AUDIO_IN | MSK_EP_DIR )
#define | EP_ATTRIBUTES_5 0b00100101
#define | EP_IN_LENGTH_5_HS 308
#define | EP_IN_LENGTH_5_FS 308
#define | EP_SIZE_5_FS EP_IN_LENGTH_5_FS
#define | EP_SIZE_5_HS EP_IN_LENGTH_5_HS
#define | EP_INTERVAL_5_FS 0x01
#define | EP_INTERVAL_5_HS 0x04
#define | AUDIO_CLASS_REVISION 0x0100
#define | NB_OF_STREAMING_INTERFACE 0x02
#define | BELONGS_AUDIO_INTERFACE_OUT STD_AS_INTERFACE_OUT
#define | BELONGS_AUDIO_INTERFACE_IN STD_AS_INTERFACE_IN
#define | INPUT_TERMINAL_ID 0x01
#define | INPUT_TERMINAL_TYPE 0x0201
#define | INPUT_TERMINAL_ASSOCIATION 0x00
#define | INPUT_TERMINAL_NB_CHANNELS 0x02
#define | INPUT_TERMINAL_CHANNEL_CONF 0x0003
#define | INPUT_TERMINAL_CH_NAME_ID 0x00
#define | MIC_FEATURE_UNIT_ID 0x02
#define | MIC_FEATURE_UNIT_SOURCE_ID 0x01
#define | MIC_FEATURE_UNIT_CONTROL_SIZE 0x02
#define | MIC_BMA_CONTROLS_0 0x0001
#define | MIC_BMA_CONTROLS_1 0x0002
#define | MIC_BMA_CONTROLS_2 0x0002
#define | MIC_FEATURE_UNIT_CH_NAME_ID 0x00
#define | OUTPUT_TERMINAL_ID 0x03
#define | OUTPUT_TERMINAL_TYPE 0x0101
#define | OUTPUT_TERMINAL_ASSOCIATION 0x00
#define | OUTPUT_TERMINAL_SOURCE_ID 0x02
#define | SPK_INPUT_TERMINAL_ID 0x11
#define | SPK_INPUT_TERMINAL_TYPE 0x0101
#define | SPK_INPUT_TERMINAL_ASSOCIATION 0x00
#define | SPK_INPUT_TERMINAL_NB_CHANNELS 0x02
#define | SPK_INPUT_TERMINAL_CHANNEL_CONF 0x0003
#define | SPK_INPUT_TERMINAL_CH_NAME_ID 0x00
#define | SPK_FEATURE_UNIT_ID 0x12
#define | SPK_FEATURE_UNIT_SOURCE_ID 0x11
#define | SPK_FEATURE_UNIT_CONTROL_SIZE 0x02
#define | SPK_FEATURE_UNIT_BMA_CONTROLS_0 0x0001
#define | SPK_FEATURE_UNIT_BMA_CONTROLS_1 0x0002
#define | SPK_FEATURE_UNIT_BMA_CONTROLS_2 0x0002
#define | SPK_FEATURE_UNIT_CH_NAME_ID 0x00
#define | SPK_OUTPUT_TERMINAL_ID 0x13
#define | SPK_OUTPUT_TERMINAL_TYPE 0x0302
#define | SPK_OUTPUT_TERMINAL_ASSOCIATION 0x00
#define | SPK_OUTPUT_TERMINAL_SOURCE_ID 0x12
#define | SPK_ALT1_AS_NB_ENDPOINT 0x02
#define | SPK_AS_TERMINAL_LINK 0x11
#define | SPK_AS_DELAY 0x04
#define | SPK_AS_FORMAT_TAG 0x0001
#define | ALT0_AS_INTERFACE_INDEX 0x00
#define | ALT0_AS_NB_ENDPOINT 0x00
#define | ALT0_AS_INTERFACE_CLASS 0x01
#define | ALT0_AS_INTERFACE_SUB_CLASS 0x02
#define | ALT0_AS_INTERFACE_PROTOCOL 0x00
#define | ALT1_AS_INTERFACE_INDEX 0x01
#define | ALT1_AS_NB_ENDPOINT 0x01
#define | ALT1_AS_INTERFACE_CLASS 0x01
#define | ALT1_AS_INTERFACE_SUB_CLASS 0x02
#define | ALT1_AS_INTERFACE_PROTOCOL 0x00
#define | AS_TERMINAL_LINK 0x03
#define | AS_DELAY 0x01
#define | AS_FORMAT_TAG 0x0001
#define | FORMAT_TYPE 0x01
#define | FORMAT_NB_CHANNELS 0x02
#define | FORMAT_FRAME_SIZE 0x03
#define | FORMAT_BIT_RESOLUTION 0x18
#define | FORMAT_SAMPLE_FREQ_NB 0x08
#define | FORMAT_LSBYTE_SAMPLE_FREQ_8 8000
#define | FORMAT_LSBYTE_SAMPLE_FREQ_11025 11025
#define | FORMAT_LSBYTE_SAMPLE_FREQ_16 16000
#define | FORMAT_LSBYTE_SAMPLE_FREQ_2205 22050
#define | FORMAT_LSBYTE_SAMPLE_FREQ_24 24000
#define | FORMAT_LSBYTE_SAMPLE_FREQ_32 32000
#define | FORMAT_LSBYTE_SAMPLE_FREQ_441 0xac44
#define | FORMAT_LSBYTE_SAMPLE_FREQ_48 0xbb80
#define | FORMAT_MSBYTE_SAMPLE_FREQ 0x00
#define | AUDIO_EP_ATRIBUTES 0x01
#define | AUDIO_EP_DELAY_UNIT 0x00
#define | AUDIO_EP_LOCK_DELAY 0x0000

## Variables
const S_usb_device_descriptor | uac1_audio_usb_dev_desc
const S_usb_device_qualifier_descriptor | uac1_usb_qualifier_desc
const S_usb_user_configuration_descriptor | uac1_usb_conf_desc_fs
const S_usb_user_configuration_descriptor | uac1_usb_conf_desc_hs

## Macro Definition Documentation

#define ALT0_AS_INTERFACE_CLASS 0x01

#define ALT0_AS_INTERFACE_INDEX 0x00

#define ALT0_AS_INTERFACE_PROTOCOL 0x00

#define ALT0_AS_INTERFACE_SUB_CLASS 0x02

#define ALT0_AS_NB_ENDPOINT 0x00

#define ALT1_AS_INTERFACE_CLASS 0x01

#define ALT1_AS_INTERFACE_INDEX 0x01

#define ALT1_AS_INTERFACE_PROTOCOL 0x00

#define ALT1_AS_INTERFACE_SUB_CLASS 0x02

#define ALT1_AS_NB_ENDPOINT 0x01

#define ALTERNATE_NB0 0

#define ALTERNATE_NB2 0

#define AS_DELAY 0x01

#define AS_FORMAT_TAG 0x0001

#define AS_TERMINAL_LINK 0x03

#define AUDIO_CLASS_REVISION 0x0100

#define AUDIO_EP_ATRIBUTES 0x01

#define AUDIO_EP_DELAY_UNIT 0x00

#define AUDIO_EP_LOCK_DELAY 0x0000

#define BELONGS_AUDIO_INTERFACE_IN STD_AS_INTERFACE_IN

#define BELONGS_AUDIO_INTERFACE_OUT STD_AS_INTERFACE_OUT

#define CONF_ATTRIBUTES USB_CONFIG_SELFPOWERED

#define CONF_INDEX 0

#define CONF_NB 1

#define DSC_INTERFACE_AUDIO INTERFACE_NB2

#define DSC_INTERFACE_HID INTERFACE_NB0

#define ENDPOINT_NB_1 (UAC1_EP_HID_TX| MSK_EP_DIR)

#define ENDPOINT_NB_2 (UAC1_EP_HID_RX)

#define ENDPOINT_NB_3 ( UAC1_EP_AUDIO_OUT )

#define ENDPOINT_NB_4 ( UAC1_EP_AUDIO_OUT_FB | MSK_EP_DIR )

#define ENDPOINT_NB_5 ( UAC1_EP_AUDIO_IN | MSK_EP_DIR )

#define EP_ATTRIBUTES_1 TYPE_INTERRUPT

#define EP_ATTRIBUTES_2 TYPE_INTERRUPT

#define EP_ATTRIBUTES_3 0b00000101

#define EP_ATTRIBUTES_4 0b00010001

#define EP_ATTRIBUTES_5 0b00100101

#define EP_BSYNC_ADDRESS_3 0x84

#define EP_IN_LENGTH_1_FS 8

#define EP_IN_LENGTH_1_HS 8

#define EP_IN_LENGTH_3_FS 308

#define EP_IN_LENGTH_3_HS 308

#define EP_IN_LENGTH_4_FS 3

#define EP_IN_LENGTH_4_HS 4

#define EP_IN_LENGTH_5_FS 308

#define EP_IN_LENGTH_5_HS 308

#define EP_INTERVAL_1 5

#define EP_INTERVAL_2 5

#define EP_INTERVAL_3_FS 0x01

#define EP_INTERVAL_3_HS 0x04

#define EP_INTERVAL_4_FS 0x01

#define EP_INTERVAL_4_HS 0x04

#define EP_INTERVAL_5_FS 0x01

#define EP_INTERVAL_5_HS 0x04

#define EP_OUT_LENGTH_2_FS 8

#define EP_OUT_LENGTH_2_HS 8

#define EP_REFRESH_3_FS 0x01

#define EP_REFRESH_3_HS 0x04

#define EP_REFRESH_4_FS 0x05

#define EP_REFRESH_4_HS 0x05

#define EP_SIZE_1_FS EP_IN_LENGTH_1_FS

#define EP_SIZE_1_HS EP_IN_LENGTH_1_HS

#define EP_SIZE_2_FS EP_OUT_LENGTH_2_FS

#define EP_SIZE_2_HS EP_OUT_LENGTH_2_HS

#define EP_SIZE_3_FS EP_IN_LENGTH_3_FS

#define EP_SIZE_3_HS EP_IN_LENGTH_3_HS

#define EP_SIZE_4_FS EP_IN_LENGTH_4_FS

#define EP_SIZE_4_HS EP_IN_LENGTH_4_HS

#define EP_SIZE_5_FS EP_IN_LENGTH_5_FS

#define EP_SIZE_5_HS EP_IN_LENGTH_5_HS

#define FIRST_INTERFACE1 1

#define FORMAT_BIT_RESOLUTION 0x18

#define FORMAT_FRAME_SIZE 0x03

#define FORMAT_LSBYTE_SAMPLE_FREQ_11025 11025

#define FORMAT_LSBYTE_SAMPLE_FREQ_16 16000

#define FORMAT_LSBYTE_SAMPLE_FREQ_2205 22050

#define FORMAT_LSBYTE_SAMPLE_FREQ_24 24000

#define FORMAT_LSBYTE_SAMPLE_FREQ_32 32000

#define FORMAT_LSBYTE_SAMPLE_FREQ_441 0xac44

#define FORMAT_LSBYTE_SAMPLE_FREQ_48 0xbb80

#define FORMAT_LSBYTE_SAMPLE_FREQ_8 8000

#define FORMAT_MSBYTE_SAMPLE_FREQ 0x00

#define FORMAT_NB_CHANNELS 0x02

#define FORMAT_SAMPLE_FREQ_NB 0x08

#define FORMAT_TYPE 0x01

#define HID_COUNTRY_CODE 0x00

#define HID_NUM_DESCRIPTORS 0x01

#define HID_VERSION 0x0111

#define INPUT_TERMINAL_ASSOCIATION 0x00

#define INPUT_TERMINAL_CH_NAME_ID 0x00

#define INPUT_TERMINAL_CHANNEL_CONF 0x0003

#define INPUT_TERMINAL_ID 0x01

#define INPUT_TERMINAL_NB_CHANNELS 0x02

#define INPUT_TERMINAL_TYPE 0x0201

#define INTERFACE_CLASS0 HID_CLASS

#define INTERFACE_CLASS2 AUDIO_CLASS

#define INTERFACE_COUNT1 3

#define INTERFACE_INDEX0 0

#define INTERFACE_INDEX2 0

#define INTERFACE_NB0 0

#define INTERFACE_NB2 1

#define INTERFACE_PROTOCOL0 NO_PROTOCOL

#define INTERFACE_PROTOCOL2 0x00

#define INTERFACE_SUB_CLASS0 NO_SUBCLASS

#define INTERFACE_SUB_CLASS2 0x01

#define MAX_POWER 130

#define MIC_BMA_CONTROLS_0 0x0001

#define MIC_BMA_CONTROLS_1 0x0002

#define MIC_BMA_CONTROLS_2 0x0002

#define MIC_FEATURE_UNIT_CH_NAME_ID 0x00

#define MIC_FEATURE_UNIT_CONTROL_SIZE 0x02

#define MIC_FEATURE_UNIT_ID 0x02

#define MIC_FEATURE_UNIT_SOURCE_ID 0x01

#define NB_ENDPOINT0 2

#define NB_ENDPOINT2 0

#define NB_INTERFACE 4

#define NB_OF_STREAMING_INTERFACE 0x02

#define OUTPUT_TERMINAL_ASSOCIATION 0x00

#define OUTPUT_TERMINAL_ID 0x03

#define OUTPUT_TERMINAL_SOURCE_ID 0x02

#define OUTPUT_TERMINAL_TYPE 0x0101

#define SPK_ALT1_AS_NB_ENDPOINT 0x02

#define SPK_AS_DELAY 0x04

#define SPK_AS_FORMAT_TAG 0x0001

#define SPK_AS_TERMINAL_LINK 0x11

#define SPK_FEATURE_UNIT_BMA_CONTROLS_0 0x0001

#define SPK_FEATURE_UNIT_BMA_CONTROLS_1 0x0002

#define SPK_FEATURE_UNIT_BMA_CONTROLS_2 0x0002

#define SPK_FEATURE_UNIT_CH_NAME_ID 0x00

#define SPK_FEATURE_UNIT_CONTROL_SIZE 0x02

#define SPK_FEATURE_UNIT_ID 0x12

#define SPK_FEATURE_UNIT_SOURCE_ID 0x11

#define SPK_INPUT_TERMINAL_ASSOCIATION 0x00

#define SPK_INPUT_TERMINAL_CH_NAME_ID 0x00

#define SPK_INPUT_TERMINAL_CHANNEL_CONF 0x0003

#define SPK_INPUT_TERMINAL_ID 0x11

#define SPK_INPUT_TERMINAL_NB_CHANNELS 0x02

#define SPK_INPUT_TERMINAL_TYPE 0x0101

#define SPK_OUTPUT_TERMINAL_ASSOCIATION 0x00

#define SPK_OUTPUT_TERMINAL_ID 0x13

#define SPK_OUTPUT_TERMINAL_SOURCE_ID 0x12

#define SPK_OUTPUT_TERMINAL_TYPE 0x0302

#define STD_AS_INTERFACE_IN 0x03

#define STD_AS_INTERFACE_OUT 0x02

## Variable Documentation

const S_usb_device_descriptor uac1_audio_usb_dev_desc

const S_usb_user_configuration_descriptor uac1_usb_conf_desc_fs

const S_usb_user_configuration_descriptor uac1_usb_conf_desc_hs

const S_usb_device_qualifier_descriptor uac1_usb_qualifier_desc