Beispiel #1
0
	{0x2100, MOUSE_INTERFACE, config_descriptor + MOUSE_DESC_OFFSET, 9},

	{0x2200, JOYSTICK_INTERFACE, joystick_report_desc, sizeof(joystick_report_desc)},
	{0x2100, JOYSTICK_INTERFACE, config_descriptor + JOYSTICK_DESC_OFFSET, 9},

	{0x2200, SYS_CTRL_INTERFACE, sys_ctrl_report_desc, sizeof(sys_ctrl_report_desc)},
	{0x2100, SYS_CTRL_INTERFACE, config_descriptor + SYS_CTRL_DESC_OFFSET, 9},

#define iInterfaceString(num, var) \
	{0x0300 + 4 + num, 0x409, (const uint8_t *)&var, 0 }

	{0x0300, 0x0000, (const uint8_t *)&string0, 0},
	{0x0301, 0x0409, (const uint8_t *)&usb_string_manufacturer_name, 0},
	{0x0302, 0x0409, (const uint8_t *)&usb_string_product_name, 0},
	{0x0303, 0x0409, (const uint8_t *)&usb_string_serial_number, 0},
	iInterfaceString( KEYBOARD_INTERFACE, usb_string_keyboard_name ),
	iInterfaceString( NKRO_KEYBOARD_INTERFACE, usb_string_nkro_keyboard_name ),
	iInterfaceString( CDC_STATUS_INTERFACE, usb_string_cdc_status_name ),
	iInterfaceString( CDC_DATA_INTERFACE, usb_string_cdc_data_name ),
	iInterfaceString( MOUSE_INTERFACE, usb_string_mouse_name ),
	iInterfaceString( JOYSTICK_INTERFACE, usb_string_joystick_name ),
	iInterfaceString( SYS_CTRL_INTERFACE, usb_string_sys_ctrl_name ),
	{0, 0, NULL, 0}
};



// ----- Endpoint Configuration -----

// See usb_desc.h for Endpoint configuration
// 0x00 = not used
Beispiel #2
0
const usb_descriptor_list_t usb_descriptor_list[] = {
	//wValue, wIndex, address,          length
	{0x0100, 0x0000, device_descriptor, sizeof(device_descriptor)},
	{0x0200, 0x0000, config_descriptor, sizeof(config_descriptor)},
	{0x0600, 0x0000, device_qualifier_descriptor, sizeof(device_qualifier_descriptor)},
	{0x0A00, 0x0000, usb_debug_descriptor, sizeof(usb_debug_descriptor)},

#define iInterfaceString(num, var) \
	{0x0300 + 4 + num, 0x409, (const uint8_t *)&var, 0 }

	{0x0300, 0x0000, (const uint8_t *)&string0, 0},
	{0x0301, 0x0409, (const uint8_t *)&usb_string_manufacturer_name, 0},
	{0x0302, 0x0409, (const uint8_t *)&usb_string_product_name, 0},
	{0x0303, 0x0409, (const uint8_t *)&usb_string_serial_number, 0},
	iInterfaceString( CDC_STATUS_INTERFACE, usb_string_cdc_status_name ),
	iInterfaceString( CDC_DATA_INTERFACE, usb_string_cdc_data_name ),
	iInterfaceString( RAWIO_INTERFACE, usb_string_rawio_name ),
	{0, 0, NULL, 0}
};



// ----- Endpoint Configuration -----

// See usb_desc.h for Endpoint configuration
// 0x00 = not used
// 0x19 = Recieve only
// 0x15 = Transmit only
// 0x1D = Transmit & Recieve
//