⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c4sdcc.h

📁 Xilinx USB JTAG 下載端程式
💻 H
📖 第 1 页 / 共 2 页
字号:
#define  TMR1_VECT   3#define  COM0_VECT   4#define  TMR2_VECT   5#define  WKUP_VECT   6#define  COM1_VECT   7#define  USB_VECT    8#define  I2C_VECT    9#define  INT4_VECT   10#define  INT5_VECT   11#define  INT6_VECT   12// TGE fx2bug #define   SUDAV_USBVECT       (0 << 2)#define   SOF_USBVECT         (1 << 2)#define   SUTOK_USBVECT       (2 << 2)#define   SUSP_USBVECT        (3 << 2)#define   URES_USBVECT        (4 << 2)#define   HS_USBVECT          (5 << 2)#define   EP0ACK_USBVECT      (6 << 2)#define   SPARE0_USBVECT      (7 << 2)#define   IN0BUF_USBVECT      (8 << 2)#define   OUT0BUF_USBVECT     (9 << 2)#define   IN1BUF_USBVECT      (10 << 2)#define   OUT1BUF_USBVECT     (11 << 2)#define   INOUT2BUF_USBVECT   (12 << 2)#define   INOUT4BUF_USBVECT   (13 << 2)#define   INOUT6BUF_USBVECT   (14 << 2)#define   INOUT8BUF_USBVECT   (15 << 2)#define   IBN_USBVECT         (16 << 2)#define   SPARE1_USBVECT      (17 << 2)#define   EP0PINGNAK_USBVECT  (18 << 2)#define   EP1PINGNAK_USBVECT  (19 << 2)#define   EP2PINGNAK_USBVECT  (20 << 2)#define   EP4PINGNAK_USBVECT  (21 << 2)#define   EP6PINGNAK_USBVECT  (22 << 2)#define   EP8PINGNAK_USBVECT  (23 << 2)#define   ERRLIM_USBVECT      (24 << 2)#define   SPARE2_USBVECT      (25 << 2)#define   SPARE3_USBVECT      (26 << 2)#define   SPARE4_USBVECT      (27 << 2)#define   EP2PIDERR_USBVECT   (28 << 2)#define   EP4PIDERR_USBVECT   (29 << 2)#define   EP6PIDERR_USBVECT   (30 << 2)#define   EP8PIDERR_USBVECT   (31 << 2)typedef struct{   BYTE   length;   BYTE   type;}DSCR;typedef struct            // Device Descriptor{   BYTE   length;         // Descriptor length ( = sizeof(DEVICEDSCR) )   BYTE   type;         // Decriptor type (Device = 1)   BYTE   spec_ver_minor;   // Specification Version (BCD) minor   BYTE   spec_ver_major;   // Specification Version (BCD) major   BYTE   dev_class;      // Device class   BYTE   sub_class;      // Device sub-class   BYTE   protocol;      // Device sub-sub-class   BYTE   max_packet;      // Maximum packet size   WORD   vendor_id;      // Vendor ID   WORD   product_id;      // Product ID   WORD   version_id;      // Product version ID   BYTE   mfg_str;      // Manufacturer string index   BYTE   prod_str;      // Product string index   BYTE   serialnum_str;   // Serial number string index   BYTE   configs;      // Number of configurations}DEVICEDSCR;typedef struct            // Device Qualifier Descriptor{   BYTE   length;         // Descriptor length ( = sizeof(DEVICEQUALDSCR) )   BYTE   type;         // Decriptor type (Device Qualifier = 6)   BYTE   spec_ver_minor;   // Specification Version (BCD) minor   BYTE   spec_ver_major;   // Specification Version (BCD) major   BYTE   dev_class;      // Device class   BYTE   sub_class;      // Device sub-class   BYTE   protocol;      // Device sub-sub-class   BYTE   max_packet;      // Maximum packet size   BYTE   configs;      // Number of configurations   BYTE  reserved0;}DEVICEQUALDSCR;typedef struct{   BYTE   length;         // Configuration length ( = sizeof(CONFIGDSCR) )   BYTE   type;         // Descriptor type (Configuration = 2)   WORD   config_len;      // Configuration + End Points length   BYTE   interfaces;      // Number of interfaces   BYTE   index;         // Configuration number   BYTE   config_str;      // Configuration string   BYTE   attrib;         // Attributes (b7 - buspwr, b6 - selfpwr, b5 - rwu   BYTE   power;         // Power requirement (div 2 ma)}CONFIGDSCR;typedef struct{   BYTE   length;         // Interface descriptor length ( - sizeof(INTRFCDSCR) )   BYTE   type;         // Descriptor type (Interface = 4)   BYTE   index;         // Zero-based index of this interface   BYTE   alt_setting;   // Alternate setting   BYTE   ep_cnt;         // Number of end points    BYTE   class;         // Interface class   BYTE   sub_class;      // Interface sub class   BYTE   protocol;      // Interface sub sub class   BYTE   interface_str;   // Interface descriptor string index}INTRFCDSCR;typedef struct{   BYTE   length;         // End point descriptor length ( = sizeof(ENDPNTDSCR) )   BYTE   type;         // Descriptor type (End point = 5)   BYTE   addr;         // End point address   BYTE   ep_type;      // End point type   BYTE   mp_L;         // Maximum packet size   BYTE   mp_H;   BYTE   interval;      // Interrupt polling interval}ENDPNTDSCR;typedef struct{   BYTE   length;         // String descriptor length   BYTE   type;         // Descriptor type}STRINGDSCR;typedef struct{   BYTE   cntrl;         // End point control register   BYTE   bytes;         // End point buffer byte count}EPIOC;typedef struct {   BYTE   length;   BYTE   *dat;   BYTE   count;   BYTE   status;}I2CPCKT;//-----------------------------------------------------------------------------// Globals//-----------------------------------------------------------------------------extern code BYTE   USB_AutoVector;extern WORD   pDeviceDscr;extern WORD   pDeviceQualDscr;extern WORD	  pHighSpeedConfigDscr;extern WORD	  pFullSpeedConfigDscr;	extern volatile WORD pConfigDscr;extern volatile WORD pOtherConfigDscr;extern WORD pStringDscr;extern code DEVICEDSCR        DeviceDscr;extern code DEVICEQUALDSCR    DeviceQualDscr;extern code CONFIGDSCR        HighSpeedConfigDscr;extern code CONFIGDSCR        FullSpeedConfigDscr;extern code STRINGDSCR        StringDscr;extern code DSCR              UserDscr;extern I2CPCKT   volatile I2CPckt;//-----------------------------------------------------------------------------// Function Prototypes//-----------------------------------------------------------------------------// fx2bug #ifdef CHIPREV_B// fx2bug extern void EZUSB_IRQ_CLEAR(void);// fx2bug #endifextern void EZUSB_Discon(BOOL renum);#define EZUSB_Renum() EZUSB_Discon(TRUE);extern void EZUSB_Susp(void);extern void EZUSB_Resume(void);extern void EZUSB_Delay1ms(void) _naked;extern void EZUSB_Delay(WORD ms);extern CONFIGDSCR xdata*   EZUSB_GetConfigDscr(BYTE ConfigIdx);extern INTRFCDSCR xdata*   EZUSB_GetIntrfcDscr(BYTE ConfigIdx, BYTE IntrfcIdx, BYTE AltSetting);extern STRINGDSCR xdata*   EZUSB_GetStringDscr(BYTE StrIdx);extern DSCR xdata*      EZUSB_GetDscr(BYTE index, DSCR* dscr, BYTE type);extern void EZUSB_InitI2C(void);extern BOOL EZUSB_WriteI2C_(BYTE addr, BYTE length, BYTE xdata *dat);extern BOOL EZUSB_ReadI2C_(BYTE addr, BYTE length, BYTE xdata *dat);extern BOOL EZUSB_WriteI2C(BYTE addr, BYTE length, BYTE xdata *dat);extern BOOL EZUSB_ReadI2C(BYTE addr, BYTE length, BYTE xdata *dat);extern void EZUSB_WaitForEEPROMWrite(BYTE addr);extern void modify_endpoint_stall(BYTE epid, BYTE stall) _naked;#endif   // FX2_H#endif   // FW_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -