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

📄 mcf5222x_usb.h

📁 ucosii在codefire系列的5222x上的移植
💻 H
📖 第 1 页 / 共 2 页
字号:
/*
 * File:    mcf5222x_usb.h
 * Purpose: Register and bit definitions
 */

#ifndef __MCF5222x_USB_H__
#define __MCF5222x_USB_H__

/*********************************************************************
*
* Universal Serial Bus (USB)
*
*********************************************************************/

/* Register read/write macros */
#define MCF_USB_PER_ID                       (*(vuint8 *)(&__IPSBAR[0x1C0000]))
#define MCF_USB_IP_COMP                      (*(vuint8 *)(&__IPSBAR[0x1C0004]))
#define MCF_USB_REV                          (*(vuint8 *)(&__IPSBAR[0x1C0008]))
#define MCF_USB_ADD_INFO                     (*(vuint8 *)(&__IPSBAR[0x1C000C]))
#define MCF_USB_OTG_INT_STAT                 (*(vuint8 *)(&__IPSBAR[0x1C0010]))
#define MCF_USB_OTG_INT_EN                   (*(vuint8 *)(&__IPSBAR[0x1C0014]))
#define MCF_USB_OTG_STATUS                   (*(vuint8 *)(&__IPSBAR[0x1C0018]))
#define MCF_USB_OTG_CTRL                     (*(vuint8 *)(&__IPSBAR[0x1C001C]))
#define MCF_USB_INT_STAT                     (*(vuint8 *)(&__IPSBAR[0x1C0080]))
#define MCF_USB_INT_ENB                      (*(vuint8 *)(&__IPSBAR[0x1C0084]))
#define MCF_USB_ERR_STAT                     (*(vuint8 *)(&__IPSBAR[0x1C0088]))
#define MCF_USB_ERR_ENB                      (*(vuint8 *)(&__IPSBAR[0x1C008C]))
#define MCF_USB_STAT                         (*(vuint8 *)(&__IPSBAR[0x1C0090]))
#define MCF_USB_CTL                          (*(vuint8 *)(&__IPSBAR[0x1C0094]))
#define MCF_USB_ADDR                         (*(vuint8 *)(&__IPSBAR[0x1C0098]))
#define MCF_USB_BDT_PAGE_01                  (*(vuint8 *)(&__IPSBAR[0x1C009C]))
#define MCF_USB_FRM_NUM                      (*(vuint16*)(&__IPSBAR[0x1C00A0]))
#define MCF_USB_FRM_NUML                     (*(vuint8 *)(&__IPSBAR[0x1C00A0]))
#define MCF_USB_FRM_NUMH                     (*(vuint8 *)(&__IPSBAR[0x1C00A4]))
#define MCF_USB_TOKEN                        (*(vuint8 *)(&__IPSBAR[0x1C00A8]))
#define MCF_USB_SOF_THLDL                    (*(vuint8 *)(&__IPSBAR[0x1C00AC]))
#define MCF_USB_BDT_PAGE_02                  (*(vuint8 *)(&__IPSBAR[0x1C00B0]))
#define MCF_USB_BDT_PAGE_03                  (*(vuint8 *)(&__IPSBAR[0x1C00B4]))
#define MCF_USB_ENDPT0                       (*(vuint8 *)(&__IPSBAR[0x1C00C0]))
#define MCF_USB_ENDPT1                       (*(vuint8 *)(&__IPSBAR[0x1C00C4]))
#define MCF_USB_ENDPT2                       (*(vuint8 *)(&__IPSBAR[0x1C00C8]))
#define MCF_USB_ENDPT3                       (*(vuint8 *)(&__IPSBAR[0x1C00CC]))
#define MCF_USB_ENDPT4                       (*(vuint8 *)(&__IPSBAR[0x1C00D0]))
#define MCF_USB_ENDPT5                       (*(vuint8 *)(&__IPSBAR[0x1C00D4]))
#define MCF_USB_ENDPT6                       (*(vuint8 *)(&__IPSBAR[0x1C00D8]))
#define MCF_USB_ENDPT7                       (*(vuint8 *)(&__IPSBAR[0x1C00DC]))
#define MCF_USB_ENDPT8                       (*(vuint8 *)(&__IPSBAR[0x1C00E0]))
#define MCF_USB_ENDPT9                       (*(vuint8 *)(&__IPSBAR[0x1C00E4]))
#define MCF_USB_ENDPT10                      (*(vuint8 *)(&__IPSBAR[0x1C00E8]))
#define MCF_USB_ENDPT11                      (*(vuint8 *)(&__IPSBAR[0x1C00EC]))
#define MCF_USB_ENDPT12                      (*(vuint8 *)(&__IPSBAR[0x1C00F0]))
#define MCF_USB_ENDPT13                      (*(vuint8 *)(&__IPSBAR[0x1C00F4]))
#define MCF_USB_ENDPT14                      (*(vuint8 *)(&__IPSBAR[0x1C00F8]))
#define MCF_USB_ENDPT15                      (*(vuint8 *)(&__IPSBAR[0x1C00FC]))
#define MCF_USB_USB_CTRL                     (*(vuint8 *)(&__IPSBAR[0x1C0100]))
#define MCF_USB_USB_OTG_OBSERVE              (*(vuint8 *)(&__IPSBAR[0x1C0104]))
#define MCF_USB_USB_OTG_CONTROL              (*(vuint8 *)(&__IPSBAR[0x1C0108]))

/* Bit definitions and macros for MCF_USB_PER_ID */
#define MCF_USB_PER_ID_ID(x)                 (((x)&0x3F)<<0)

/* Bit definitions and macros for MCF_USB_IP_COMP */
#define MCF_USB_IP_COMP_NID(x)               (((x)&0x3F)<<0)

/* Bit definitions and macros for MCF_USB_REV */
#define MCF_USB_REV_REV(x)                   (((x)&0xFF)<<0)

/* Bit definitions and macros for MCF_USB_ADD_INFO */
#define MCF_USB_ADD_INFO_HOST                (0x01)
#define MCF_USB_ADD_INFO_IRQ_NUM(x)          (((x)&0x1F)<<3)

/* Bit definitions and macros for MCF_USB_OTG_INT_STAT */
#define MCF_USB_OTG_INT_STAT_A_VBUS_VLD_CHG  (0x01)
#define MCF_USB_OTG_INT_STAT_B_SESS_END_CHG  (0x04)
#define MCF_USB_OTG_INT_STAT_SESS_VLD_CHG    (0x08)
#define MCF_USB_OTG_INT_STAT_LINE_STATE      (0x20)
#define MCF_USB_OTG_INT_STAT_1_MSEC          (0x40)
#define MCF_USB_OTG_INT_STAT_ID_CHG          (0x80)

/* Bit definitions and macros for MCF_USB_OTG_INT_EN */
#define MCF_USB_OTG_INT_EN_A_VBUS_VLD_EN     (0x01)
#define MCF_USB_OTG_INT_EN_B_SESS_END_EN     (0x04)
#define MCF_USB_OTG_INT_EN_SESS_VLD_EN       (0x08)
#define MCF_USB_OTG_INT_EN_LINE_STATE        (0x20)
#define MCF_USB_OTG_INT_EN_1_MSEC_EN         (0x40)
#define MCF_USB_OTG_INT_EN_ID_EN             (0x80)

/* Bit definitions and macros for MCF_USB_OTG_STATUS */
#define MCF_USB_OTG_STATUS_A_VBUS_VLD        (0x01)
#define MCF_USB_OTG_STATUS_B_SESS_END        (0x04)
#define MCF_USB_OTG_STATUS_SESS_VLD          (0x08)
#define MCF_USB_OTG_STATUS_LINE_STATE        (0x20)
#define MCF_USB_OTG_STATUS_1_MSEC            (0x40)
#define MCF_USB_OTG_STATUS_ID                (0x80)

/* Bit definitions and macros for MCF_USB_OTG_CTRL */
#define MCF_USB_OTG_CTRL_VBUS_DSCHG          (0x01)
#define MCF_USB_OTG_CTRL_VBUS_CHG            (0x02)
#define MCF_USB_OTG_CTRL_OTG_EN              (0x04)
#define MCF_USB_OTG_CTRL_VBUS_ON             (0x08)
#define MCF_USB_OTG_CTRL_DM_LOW              (0x10)
#define MCF_USB_OTG_CTRL_DP_LOW              (0x20)
#define MCF_USB_OTG_CTRL_DM_HIGH             (0x40)
#define MCF_USB_OTG_CTRL_DP_HIGH             (0x80)

/* Bit definitions and macros for MCF_USB_INT_STAT */
#define MCF_USB_INT_STAT_USB_RST             (0x01)
#define MCF_USB_INT_STAT_ERROR               (0x02)
#define MCF_USB_INT_STAT_SOF_TOK             (0x04)
#define MCF_USB_INT_STAT_TOK_DNE             (0x08)
#define MCF_USB_INT_STAT_SLEEP               (0x10)
#define MCF_USB_INT_STAT_RESUME              (0x20)
#define MCF_USB_INT_STAT_ATTACH              (0x40)
#define MCF_USB_INT_STAT_STALL               (0x80)

/* Bit definitions and macros for MCF_USB_INT_ENB */
#define MCF_USB_INT_ENB_USB_RST              (0x01)
#define MCF_USB_INT_ENB_ERROR                (0x02)
#define MCF_USB_INT_ENB_SOF_TOK              (0x04)
#define MCF_USB_INT_ENB_TOK_DNE              (0x08)
#define MCF_USB_INT_ENB_SLEEP                (0x10)
#define MCF_USB_INT_ENB_RESUME               (0x20)
#define MCF_USB_INT_ENB_ATTACH               (0x40)
#define MCF_USB_INT_ENB_STALL                (0x80)

/* Bit definitions and macros for MCF_USB_ERR_STAT */
#define MCF_USB_ERR_STAT_PID_ERR             (0x01)
#define MCF_USB_ERR_STAT_CRC5_EOF            (0x02)
#define MCF_USB_ERR_STAT_CRC16               (0x04)
#define MCF_USB_ERR_STAT_DFN8                (0x08)
#define MCF_USB_ERR_STAT_BTO_ERR             (0x10)
#define MCF_USB_ERR_STAT_DMA_ERR             (0x20)
#define MCF_USB_ERR_STAT_BTS_ERR             (0x80)

/* Bit definitions and macros for MCF_USB_ERR_ENB */
#define MCF_USB_ERR_ENB_PID_ERR              (0x01)
#define MCF_USB_ERR_ENB_CRC5_EOF             (0x02)
#define MCF_USB_ERR_ENB_CRC16                (0x04)
#define MCF_USB_ERR_ENB_DFN8                 (0x08)
#define MCF_USB_ERR_ENB_BTO_ERR              (0x10)
#define MCF_USB_ERR_ENB_DMA_ERR              (0x20)
#define MCF_USB_ERR_ENB_BTS_ERR              (0x80)

/* Bit definitions and macros for MCF_USB_STAT */
#define MCF_USB_STAT_ODD                     (0x04)
#define MCF_USB_STAT_TX                      (0x08)
#define MCF_USB_STAT_ENDP(x)                 (((x)&0x0F)<<4)

/* Bit definitions and macros for MCF_USB_CTL */
#define MCF_USB_CTL_USB_EN_SOF_EN            (0x01)
#define MCF_USB_CTL_ODD_RST                  (0x02)
#define MCF_USB_CTL_RESUME                   (0x04)
#define MCF_USB_CTL_HOST_MODE_EN             (0x08)
#define MCF_USB_CTL_RESET                    (0x10)
#define MCF_USB_CTL_TXDSUSPEND_TOKBUSY       (0x20)
#define MCF_USB_CTL_SE0                      (0x40)
#define MCF_USB_CTL_JSTATE                   (0x80)

/* Bit definitions and macros for MCF_USB_ADDR */
#define MCF_USB_ADDR_ADDR(x)                 (((x)&0x7F)<<0)
#define MCF_USB_ADDR_LS_EN                   (0x80)

/* Bit definitions and macros for MCF_USB_BDT_PAGE_01 */
#define MCF_USB_BDT_PAGE_01_BDT_BA9          (0x02)
#define MCF_USB_BDT_PAGE_01_BDT_BA10         (0x04)
#define MCF_USB_BDT_PAGE_01_BDT_BA11         (0x08)
#define MCF_USB_BDT_PAGE_01_BDT_BA12         (0x10)
#define MCF_USB_BDT_PAGE_01_BDT_BA13         (0x20)
#define MCF_USB_BDT_PAGE_01_BDT_BA14         (0x40)
#define MCF_USB_BDT_PAGE_01_BDT_BA15         (0x80)

/* Bit definitions and macros for MCF_USB_FRM_NUM */
#define MCF_USB_FRM_NUM_FRM(x)               (((x)&0xFFFF)<<0)

/* Bit definitions and macros for MCF_USB_FRM_NUML */
#define MCF_USB_FRM_NUML_FRM0                (0x01)
#define MCF_USB_FRM_NUML_FRM1                (0x02)
#define MCF_USB_FRM_NUML_FRM2                (0x04)
#define MCF_USB_FRM_NUML_FRM3                (0x08)
#define MCF_USB_FRM_NUML_FRM4                (0x10)
#define MCF_USB_FRM_NUML_FRM5                (0x20)
#define MCF_USB_FRM_NUML_FRM6                (0x40)
#define MCF_USB_FRM_NUML_FRM7                (0x80)

/* Bit definitions and macros for MCF_USB_FRM_NUMH */

⌨️ 快捷键说明

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