📄 usb.h
字号:
#define DISABLE USB_INTERRUPT_OFF
#define ENABLE USB_INTERRUPT_ON
#define D12_INT_BUSRESET 0x0040
#define D12_INT_EOT 0x0100
#define D12_INT_SUSPENDCHANGE 0x0080
#define D12_INT_ENDP0IN 0x0002
#define D12_INT_ENDP0OUT 0x0001
#define D12_INT_ENDP1IN 0x0008
#define D12_INT_ENDP1OUT 0x0004
#define D12_INT_ENDP2IN 0x0010
#define D12_INT_ENDP2OUT 0x0020
//#define SWAP(x) ((((x)&0xFF)<<8)|(((x)>>8)&0xFF))
#define SWAP(x) (x)
#define D12_FULLEMPTY 0x01
#define D12_SETUPPACKET 0x20
#define USB_IDLE 0
#define USB_RECEIVE 1
#define USB_TRANSMIT 2
#define USB_ENDPOINT_DIRECTION_MASK 0x80
#define MAX_CONTROLDATA_SIZE 0x40
//#define EP1_PACKET_SIZE 0x10
#define EP1_PACKET_SIZE 0x40
#define EP0_PACKET_SIZE 0x10
#define USB_REQUEST_TYPE_MASK 0x60
#define USB_REQUEST_MASK 0xFF
#define USB_STANDARD_REQUEST 0x00
#define USB_VENDOR_REQUEST 0x10
#define USB_RECIPIENT 0
#define USB_RECIPIENT_DEVICE 0
#define USB_RECIPIENT_INTERFACE 0
#define USB_RECIPIENT_ENDPOINT 0
#define USB_FEATURE_REMOTE_WAKEUP 0
#define USB_FEATURE_ENDPOINT_STALL 0
#define MAX_ENDPOINTS 4
#define DEVICE_ADDRESS_MASK 0x00FF
#define D12_STALL 0
#define USB_DEVICE_DESCRIPTOR_TYPE 0x01
#define USB_CONFIGURATION_DESCRIPTOR_TYPE 0x02
#define CONFIG_DESCRIPTOR_LENGTH 0x09
#define DMA_PENDING 0
#define DMA_IDLE 0
#define USB_INTERFACE_DESCRIPTOR_TYPE 0
#define NUM_ENDPOINTS 0
struct flags
{
unsigned char timer ;
unsigned char bus_reset ;
unsigned char suspend ;
unsigned char setup_packet ;
unsigned char remote_wakeup;
unsigned char in_isr ;
unsigned char control_state ;
unsigned char configuration;
unsigned char verbose ;
unsigned char ep1_rxdone ;
unsigned char setup_dma ;
unsigned char dma_state ;
};
union epp_flags
{
struct flags bits;
unsigned short value;
}bEPPflags;
struct device_request
{
unsigned char bmRequestType;
unsigned char bRequest;
unsigned short wValue;
unsigned short wIndex;
unsigned short wLength;
}DEVICE_REQUEST;
struct control_data
{
struct device_request DeviceRequest;
unsigned short wLength;
unsigned short wCount;
unsigned char *pData;
unsigned char dataBuffer[MAX_CONTROLDATA_SIZE];
}ControlData;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -