?? global_maco.h
字號:
/****************************************************************/
/* 文件名: Global_Maco.h */
/* 功能: 聲明5509片上usb的各種配置寄存器宏 */
/* 設計日期: 10/20/2004 */
/****************************************************************/
#ifndef Global_Maco_h
#define Global_Maco_h
#define DSCR_DEVICE 1 /* 描述表的類型: Device */
#define DSCR_CONFIG 2 /* 描述表的類型: Configuration */
#define DSCR_STRING 3 /* 描述表的類型: String */
#define DSCR_INTRFC 4 /* 描述表的類型: Interface */
#define DSCR_ENDPNT 5 /* 描述表的類型: Endpoint */
#define DSCR_DEVQUAL 6 /* 描述表的類型: Device Qualifier */
#define DSCR_DEVICE_LEN 18
#define DSCR_CONFIG_LEN 9
#define DSCR_INTRFC_LEN 9
#define DSCR_ENDPNT_LEN 7
#define DSCR_DEVQUAL_LEN 10
#define DSCR_CONFIG_LEN_LINK (14*DSCR_ENDPNT_LEN) + \
DSCR_INTRFC_LEN + \
DSCR_CONFIG_LEN
#define ET_CONTROL 0 /* 節點的類型: Control */
#define ET_ISO 1 /* 節點的類型: Isochronous */
#define ET_BULK 2 /* 節點的類型: Bulk */
#define ET_INT 3 /* 節點的類型: Interrupt */
#define DESCTBL_LEN DSCR_DEVICE_LEN + \
DSCR_DEVQUAL_LEN + \
DSCR_CONFIG_LEN + \
DSCR_INTRFC_LEN + \
(4*DSCR_ENDPNT_LEN) + \
DSCR_CONFIG_LEN + \
DSCR_INTRFC_LEN + \
(4*DSCR_ENDPNT_LEN) + \
2+2+2+(2*7)+2+(2*10)
/* 定義模塊基地址 */
#define USBMOD_ADDR 0x5800
/* 中斷使能寄存器地址 */
#define USBIE_ADDR 0x67FD
#define USB_RSTR 0x0080
#define USB_SUSR 0x0040
#define USB_RESR 0x0020
#define USB_SOF 0x0010
#define USB_PSOF 0x0008
#define USB_SETUP 0x0004
#define USB_STPOW 0x0001
/* 定義USB操作寄存器宏 */
#define USBINTF_ADDR (*(volatile ioport Uint16*)0x67FE) // 中斷標志寄存器地址
#define USBINTS_ADDR (*(volatile ioport Uint16*)0x6792) // 中斷源寄存器地址
#define USBIEPIF_ADDR (*(volatile ioport Uint16*)0x6793) // 輸入節點中斷標志寄存器
#define USBIEPIE_ADDR (*(volatile ioport Uint16*)0x679B) // 輸入節點中斷使能寄存器
#define USBOEPIF_ADDR (*(volatile ioport Uint16*)0x6794) // 輸出節點中斷標志寄存器
#define USBOEPIE_ADDR (*(volatile ioport Uint16*)0x679C) // 輸出節點中斷使能寄存器
#define USBOD1CTL_ADDR (*(volatile ioport Uint16*)0x5808) // 輸出節點1DMA控制寄存器
#define USBOD2CTL_ADDR (*(volatile ioport Uint16*)0x5810) // 輸出節點2DMA控制寄存器
#define USBOD3CTL_ADDR (*(volatile ioport Uint16*)0x5818) // 輸出節點3DMA控制寄存器
#define USBOD4CTL_ADDR (*(volatile ioport Uint16*)0x5820) // 輸出節點4DMA控制寄存器
#define USBOD5CTL_ADDR (*(volatile ioport Uint16*)0x5828) // 輸出節點5DMA控制寄存器
#define USBOD6CTL_ADDR (*(volatile ioport Uint16*)0x5830) // 輸出節點6DMA控制寄存器
#define USBOD7CTL_ADDR (*(volatile ioport Uint16*)0x5838) // 輸出節點7DMA控制寄存器
#define DMA_GO 0x01
#define DMA_STP 0x02
#define DMA_RLD 0x04
#define DMA_OVF 0x08
#define DMA_END 0x10
#define DMA_CAT 0x20
#define DMA_SHT 0x40
#define DMA_EM 0x80
#define USBO1CTX_ADDR (*(volatile ioport Uint16*)0x670A) // 輸出節點1緩沖大小寄存器
#define USBO2CTX_ADDR (*(volatile ioport Uint16*)0x6712) // 輸出節點2緩沖大小寄存器
#define USBO3CTX_ADDR (*(volatile ioport Uint16*)0x671A) // 輸出節點3緩沖大小寄存器
#define USBO4CTX_ADDR (*(volatile ioport Uint16*)0x6722) // 輸出節點4緩沖大小寄存器
#define USBO5CTX_ADDR (*(volatile ioport Uint16*)0x672A) // 輸出節點5緩沖大小寄存器
#define USBO6CTX_ADDR (*(volatile ioport Uint16*)0x6732) // 輸出節點6緩沖大小寄存器
#define USBO7CTX_ADDR (*(volatile ioport Uint16*)0x673A) // 輸出節點7緩沖大小寄存器
#define USBO1XBUF_ADDR (*(volatile ioport Uint16*)0x6709) // 輸出節點1x緩沖寄存器基地址
#define USBO2XBUF_ADDR (*(volatile ioport Uint16*)0x6711) // 輸出節點2x緩沖寄存器基地址
#define USBO3XBUF_ADDR (*(volatile ioport Uint16*)0x6719) // 輸出節點3x緩沖寄存器基地址
#define USBO4XBUF_ADDR (*(volatile ioport Uint16*)0x6721) // 輸出節點4x緩沖寄存器基地址
#define USBO5XBUF_ADDR (*(volatile ioport Uint16*)0x6729) // 輸出節點5x緩沖寄存器基地址
#define USBO6XBUF_ADDR (*(volatile ioport Uint16*)0x6731) // 輸出節點6x緩沖寄存器基地址
#define USBO7XBUF_ADDR (*(volatile ioport Uint16*)0x6739) // 輸出節點7x緩沖寄存器基地址
#define USB_CTRL0_WRITE 0x7600 // 控制節點0寫數據標志
#define USB_BULK1_WRITE 0x7601 // 輸入塊節點1向PC機寫數據標志
#define USB_BULK2_WRITE 0x7602 // 輸入塊節點2向PC機寫數據標志
#define USB_BULK3_WRITE 0x7603 // 輸入塊節點3向PC機寫數據標志
#define USB_BULK4_WRITE 0x7604 // 輸入塊節點4向PC機寫數據標志
#define USB_BULK5_WRITE 0x7605 // 輸入塊節點5向PC機寫數據標志
#define USB_BULK6_WRITE 0x7606 // 輸入塊節點6向PC機寫數據標志
#define USB_BULK7_WRITE 0x7607 // 輸入塊節點7向PC機寫數據標志
#define USB_CTRL0_READ 0x7700 // 控制節點0讀主機傳來數據標志
#define USB_BULK1_READ 0x7701 // 輸出塊節點1讀主機傳來數據標識
#define USB_BULK2_READ 0x7702 // 輸出塊節點2讀主機傳來數據標識
#define USB_BULK3_READ 0x7703 // 輸出塊節點3讀主機傳來數據標識
#define USB_BULK4_READ 0x7704 // 輸出塊節點4讀主機傳來數據標識
#define USB_BULK5_READ 0x7705 // 輸出塊節點5讀主機傳來數據標識
#define USB_BULK6_READ 0x7706 // 輸出塊節點6讀主機傳來數據標識
#define USB_BULK7_READ 0x7707 // 輸出塊節點7讀主機傳來數據標識
#endif
/****************************************************************/
/* No more */
/****************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -