/* insert license */ #ifndef __USB_CALLBACKS #define __USB_CALLBACKS #include "libmaple.h" #include "usb_lib.h" #define SET_LINE_CODING 0x20 #define GET_LINE_CODING 0x21 #define SET_COMM_FEATURE 0x02 #define SET_CONTROL_LINE_STATE 0x22 #define CONTROL_LINE_DTR (0x01) #define CONTROL_LINE_RTS (0x02) #if defined(__cplusplus) extern "C" { #endif typedef struct { uint32 bitrate; uint8 format; uint8 paritytype; uint8 datatype; } USB_Line_Coding; typedef enum { START, NDTR_NRTS, DTR_NRTS } RESET_STATE; void vcomDataTxCb(void); void vcomDataRxCb(void); void vcomManagementCb(void); uint8* vcomGetSetLineCoding(uint16 length); void vcomSetLineSate(void); void usbInit(void); /* internal functions (as per the usb_core pProperty structure) */ void usbInit(void); void usbReset(void); void usbStatusIn(void); void usbStatusOut(void); RESULT usbDataSetup(uint8 request); RESULT usbNoDataSetup(uint8 request); RESULT usbGetInterfaceSetting(uint8,uint8); uint8* usbGetDeviceDescriptor(uint16 length); uint8* usbGetConfigDescriptor(uint16 length); uint8* usbGetStringDescriptor(uint16 length); /* internal callbacks to respond to standard requests */ void usbSetConfiguration(void); void usbSetDeviceAddress(void); #if defined(__cplusplus) } #endif #endif