void audio_micro_get_vol_res(void)
{
   Usb_reset_endpoint_fifo_access(EP_CONTROL);
   Usb_write_endpoint_data(EP_CONTROL, 16, Usb_format_mcu_to_usb_data(16, MICRO_VOL_RES));
   Usb_ack_control_in_ready_send();
   while(!Is_usb_control_out_received()) // send a ZLP
   {
     TASKS_SCHEDULE();
   }
   Usb_ack_control_out_received_free();
}
void audio_speaker_get_vol_max(void)
{
   Usb_reset_endpoint_fifo_access(EP_CONTROL);
   Usb_write_endpoint_data(EP_CONTROL, 16, Usb_format_mcu_to_usb_data(16, USB_SPEAKER_VOL_MAX));
   Usb_ack_control_in_ready_send();
   while(!Is_usb_control_out_received()) // send a ZLP
   {
     TASKS_SCHEDULE();
   }
   Usb_ack_control_out_received_free();
}
Example #3
0
#include "usb_descriptors.h"
#include "usb_standard_request.h"
#include "usb_specific_request.h"
#include "hid.h"

//_____ M A C R O S ________________________________________________________


//_____ D E F I N I T I O N S ______________________________________________

// usb_user_device_descriptor
const S_usb_device_descriptor usb_dev_desc =
{
  sizeof(S_usb_device_descriptor),
  DEVICE_DESCRIPTOR,
  Usb_format_mcu_to_usb_data(16, USB_SPECIFICATION),
  DEVICE_CLASS,
  DEVICE_SUB_CLASS,
  DEVICE_PROTOCOL,
  EP_CONTROL_LENGTH,
  Usb_format_mcu_to_usb_data(16, VENDOR_ID),
  Usb_format_mcu_to_usb_data(16, PRODUCT_ID),
  Usb_format_mcu_to_usb_data(16, RELEASE_NUMBER),
  MAN_INDEX,
  PROD_INDEX,
  SN_INDEX,
  NB_CONFIGURATION
};


// usb_user_configuration_descriptor FS
Example #4
0
#include "usb_descriptors.h"
#include "usb_standard_request.h"
#include "usb_specific_request.h"


//_____ M A C R O S ________________________________________________________


//_____ D E F I N I T I O N S ______________________________________________

// usb_user_device_descriptor
const S_usb_device_descriptor usb_dev_desc =
{
    sizeof(S_usb_device_descriptor),
    DEVICE_DESCRIPTOR,
    Usb_format_mcu_to_usb_data(16, USB_SPECIFICATION),
    DEVICE_CLASS,
    DEVICE_SUB_CLASS,
    DEVICE_PROTOCOL,
    EP_CONTROL_LENGTH,
    Usb_format_mcu_to_usb_data(16, VENDOR_ID),
    Usb_format_mcu_to_usb_data(16, PRODUCT_ID),
    Usb_format_mcu_to_usb_data(16, RELEASE_NUMBER),
    MAN_INDEX,
    PROD_INDEX,
    SN_INDEX,
    NB_CONFIGURATION
};


// usb_user_configuration_descriptor FS
      0x75, 0x08,                // 74|1   , Report Size(8) =field size in bits = 1 byte
      0x95, 0x04,                // 94|1:ReportCount
      0xB1, 0x02,                // B0|1:   Feature report
      0xC0                       // C0|0    , End Collection

 };




// usb_user_device_descriptor
const S_usb_device_descriptor usb_dev_desc =
{
  sizeof(S_usb_device_descriptor),
  DEVICE_DESCRIPTOR,
  Usb_format_mcu_to_usb_data(16, USB_SPECIFICATION),
  DEVICE_CLASS,
  DEVICE_SUB_CLASS,
  DEVICE_PROTOCOL,
  EP_CONTROL_LENGTH,
  Usb_format_mcu_to_usb_data(16, VENDOR_ID),
  Usb_format_mcu_to_usb_data(16, PRODUCT_ID),
  Usb_format_mcu_to_usb_data(16, RELEASE_NUMBER),
  MAN_INDEX,
  PROD_INDEX,
  SN_INDEX,
  NB_CONFIGURATION
};


// usb_user_configuration_descriptor FS
Example #6
0
//_____ M A C R O S ________________________________________________________


//_____ D E F I N I T I O N S ______________________________________________


// image specific definitions moved to *_usb_descriptors.c

U16 configTSK_USB_DEV_PERIOD;

// usb_user_language_id
const S_usb_language_id usb_user_language_id =
{
  sizeof(S_usb_language_id),
  STRING_DESCRIPTOR,
  Usb_format_mcu_to_usb_data(16, LANGUAGE_ID)
};


// usb_user_manufacturer_string_descriptor
const S_usb_manufacturer_string_descriptor usb_user_manufacturer_string_descriptor =
{
  sizeof(S_usb_manufacturer_string_descriptor),
  STRING_DESCRIPTOR,
  USB_MANUFACTURER_NAME
};


// usb_user_product_string_descriptor
const S_usb_product_string_descriptor usb_user_product_string_descriptor =
{
    0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated))
    0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application)
    0x81, 0x00, // INPUT (Data,Ary,Abs)
    0x09, 0x03, // USAGE (Keyboard ErrorUndefine)
    0x75, 0x08, // REPORT_SIZE (8)
    0x95, KEYBOARD_FEATURE_COUNT,   // REPORT_COUNT (64)
    0xB1, 0x02, // FEATURE (Data,Var,Abs)

    0xc0,   // END_COLLECTION
};

// usb_user_device_descriptor
const S_usb_device_descriptor usb_dev_desc = {
    sizeof (S_usb_device_descriptor),
    DEVICE_DESCRIPTOR,
    Usb_format_mcu_to_usb_data (16, USB_SPECIFICATION),
    DEVICE_CLASS,
    DEVICE_SUB_CLASS,
    DEVICE_PROTOCOL,
    EP_CONTROL_LENGTH,
    Usb_format_mcu_to_usb_data (16, VENDOR_ID),
    Usb_format_mcu_to_usb_data (16, PRODUCT_ID),
    Usb_format_mcu_to_usb_data (16, RELEASE_NUMBER),
    MAN_INDEX,
    PROD_INDEX,
    SN_INDEX,
    NB_CONFIGURATION
};


// usb_user_configuration_descriptor FS
#include "usb_specific_request.h"
#include "usb_audio.h"


//_____ M A C R O S ________________________________________________________


//_____ D E F I N I T I O N S ______________________________________________


// usb_user_device_descriptor
const S_usb_device_descriptor uac2_dg8saq_usb_dev_desc =
{
  sizeof(S_usb_device_descriptor),
  DEVICE_DESCRIPTOR,
  Usb_format_mcu_to_usb_data(16, USB_SPECIFICATION),
  DEVICE_CLASS,
  DEVICE_SUB_CLASS,
  DEVICE_PROTOCOL,
  EP_CONTROL_LENGTH,
  Usb_format_mcu_to_usb_data(16, DG8SAQ_VENDOR_ID),
  Usb_format_mcu_to_usb_data(16, DG8SAQ_PRODUCT_ID),
  Usb_format_mcu_to_usb_data(16, RELEASE_NUMBER),
  MAN_INDEX,
  PROD_INDEX,
  SN_INDEX,
  NB_CONFIGURATION
};

const S_usb_device_descriptor uac2_audio_usb_dev_desc =
{