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

📄 iom30245.h

📁 UC/OS下的USB驱动程序和说明文档(包括上位机驱动程序和固件程序)
💻 H
📖 第 1 页 / 共 3 页
字号:
#ifdef __ICCM16C__
  #include <migration.h>
#endif

/********************  Processor Registers  ***********************/

#define PM         (*(volatile unsigned int near  *)0x004)   /* Processor Mode Register */
#define PM0        (*(volatile unsigned char near *)0x004)   /* Processor Mode Register 0 */
#define PM1        (*(volatile unsigned char near *)0x005)   /* Processor Mode Register 1 */
#define CM0        (*(volatile unsigned char near *)0x006)   /* System clock control register 0 */
#define CM1        (*(volatile unsigned char near *)0x007)   /* System clock control register 1 */
#define CM         (*(volatile unsigned int near  *)0x006)   /* System clock control register */
#define CSR        (*(volatile unsigned char near *)0x008)   /* Chip select control register */


/*******************  Watchdog Timer  ****************************/

#define WDTS       (*(volatile unsigned char near *)0x00E)   /* Watchdog timer start register */
#define WDC        (*(volatile unsigned char near *)0x00F)   /* Watchdog timer control register */


/*******************  Interrupt Control Register  ****************/

#define AIER       (*(volatile unsigned char near *)0x009)   /* Address match interrupt enable */
#define PRCR       (*(volatile unsigned char near *)0x00A)   /* Protect register */
#define USBC       (*(volatile unsigned char near *)0x00C)   /* USB control register */
#define RMAD00     (*(volatile unsigned char near *)0x010)   /* Address match interrupt register 0 (low) */
#define RMAD01     (*(volatile unsigned char near *)0x011)   /* Address match interrupt register 0 (mid) */
#define RMAD02     (*(volatile unsigned char near *)0x012)   /* Address match interrupt register 0 (high)*/
#define RMAD10     (*(volatile unsigned char near *)0x014)   /* Address match interrupt register 1 (low) */
#define RMAD11     (*(volatile unsigned char near *)0x015)   /* Address match interrupt register 1 (mid) */
#define RMAD12     (*(volatile unsigned char near *)0x016)   /* Address match interrupt register 1 (high)*/
#define CSE        (*(volatile unsigned char near *)0x01E)   /* Chip Select expansion register */
#define USBAD      (*(volatile unsigned char near *)0x01F)   /* USB attach / detach register */

/*******************  DMA Registers  *****************************/

#define SAR00      (*(volatile unsigned char near *)0x020)   /* DMA0 source pointer (low) */
#define SAR01      (*(volatile unsigned char near *)0x021)   /* DMA0 source pointer (mid) */
#define SAR02      (*(volatile unsigned char near *)0x022)   /* DMA0 source pointer (high) */
#define DAR00      (*(volatile unsigned char near *)0x024)   /* DMA0 destination pointer (low) */
#define DAR01      (*(volatile unsigned char near *)0x025)   /* DMA0 destination pointer (mid) */
#define DAR02      (*(volatile unsigned char near *)0x026)   /* DMA0 destination pointer (high) */
#define TCR00      (*(volatile unsigned char near *)0x028)   /* DMA0 transfer counter (low) */
#define TCR01      (*(volatile unsigned char near *)0x029)   /* DMA0 transfer counter (high) */
#define TCR0       (*(volatile unsigned int near  *)0x028)   /* DMA0 transfer counter */
#define DM0CON     (*(volatile unsigned char near *)0x02C)   /* DMA0 control register */
#define SAR10      (*(volatile unsigned char near *)0x030)   /* DMA1 source pointer (low) */
#define SAR11      (*(volatile unsigned char near *)0x031)   /* DMA1 source pointer (mid) */
#define SAR12      (*(volatile unsigned char near *)0x032)   /* DMA1 source pointer (high) */
#define DAR10      (*(volatile unsigned char near *)0x034)   /* DMA1 destination pointer (low) */
#define DAR11      (*(volatile unsigned char near *)0x035)   /* DMA1 destination pointer (mid) */
#define DAR12      (*(volatile unsigned char near *)0x036)   /* DMA1 destination pointer (high) */
#define TCR10      (*(volatile unsigned char near *)0x038)   /* DMA1 transfer counter (low) */
#define TCR11      (*(volatile unsigned char near *)0x039)   /* DMA1 transfer counter (high) */
#define TCR1       (*(volatile unsigned int near  *)0x038)   /* DMA1 transfer counter */
#define DM1CON     (*(volatile unsigned char near *)0x03C)   /* DMA1 control register */


#define KUPIC      (*(volatile unsigned char near *)0x041)   /* Key input interrupt control register */
#define S2RIC      (*(volatile unsigned char near *)0x042)   /* UART2 receive interrupt control register */
#define S13BCNIC   (*(volatile unsigned char near *)0x043)   /* UART1/3 Bus collision interrupt control register */
#define INT1IC     (*(volatile unsigned char near *)0x044)   /* Interrupt 1 interrupt control register */
#define TA1IC      (*(volatile unsigned char near *)0x045)   /* Timer A1 interrupt control register */
#define EP0IC      (*(volatile unsigned char near *)0x046)   /* USB Endpoint 0 interrupt control register */
#define TA2IC      (*(volatile unsigned char near *)0x047)   /* Timer A2 interrupt control register */
#define S1RIC      (*(volatile unsigned char near *)0x048)   /* UART1 receive interrupt control register */
#define S02BCNIC   (*(volatile unsigned char near *)0x049)   /* UART0/2 Bus collision interrupt control register */
#define S0RIC      (*(volatile unsigned char near *)0x04A)   /* UART0 receive interrupt control register */
#define ADIC       (*(volatile unsigned char near *)0x04B)   /* AD converter interrupt control register */
#define DMA0IC     (*(volatile unsigned char near *)0x04C)   /* DMA0 interrupt control register */
#define S3TIC      (*(volatile unsigned char near *)0x04D)   /* UART3 transmit interrupt control register*/
#define DMA1IC     (*(volatile unsigned char near *)0x04E)   /* DMA1 interrupt control register */
#define S2TIC      (*(volatile unsigned char near *)0x04F)   /* UART2 transmit interrupt control register*/
#define DMA2IC     (*(volatile unsigned char near *)0x050)   /* DMA2 interrupt control register */
#define S1TIC      (*(volatile unsigned char near *)0x051)   /* UART1 transmit interrupt control register*/
#define DMA3IC     (*(volatile unsigned char near *)0x052)   /* DMA3 interrupt control register */
#define S0TIC      (*(volatile unsigned char near *)0x053)   /* UART0 transmit interrupt control register*/
#define TA0IC      (*(volatile unsigned char near *)0x054)   /* Timer A0 interrupt control register */
#define S3RIC      (*(volatile unsigned char near *)0x055)   /* UART3 receive interrupt control register */
#define SUSPIC     (*(volatile unsigned char near *)0x056)   /* USB suspend interrupt control register */
#define TA3IC      (*(volatile unsigned char near *)0x057)   /* Timer A3 interrupt control register */
#define RSMIC      (*(volatile unsigned char near *)0x058)   /* USB resume  interrupt control register */
#define TA4IC      (*(volatile unsigned char near *)0x059)   /* Timer A4 interrupt control register */
#define RSTIC      (*(volatile unsigned char near *)0x05A)   /* USB reset   interrupt control register */
#define SOFIC      (*(volatile unsigned char near *)0x05B)   /* USB SOF     interrupt control register */
#define VBDIC      (*(volatile unsigned char near *)0x05C)   /* USB Vbus detect  interrupt control register */
#define USBFIC     (*(volatile unsigned char near *)0x05D)   /* USB function interrupt control register */
#define INT2IC     (*(volatile unsigned char near *)0x05E)   /* Interrupt 2 interrupt control register */
#define INT0IC     (*(volatile unsigned char near *)0x05F)   /* Interrupt 0 interrupt control register */

#define SAR20      (*(volatile unsigned char near *)0x180)   /* DMA2 source pointer (low) */
#define SAR21      (*(volatile unsigned char near *)0x181)   /* DMA2 source pointer (mid) */
#define SAR22      (*(volatile unsigned char near *)0x182)   /* DMA2 source pointer (high) */
#define DAR20      (*(volatile unsigned char near *)0x184)   /* DMA2 destination pointer (low) */
#define DAR21      (*(volatile unsigned char near *)0x185)   /* DMA2 destination pointer (mid) */
#define DAR22      (*(volatile unsigned char near *)0x186)   /* DMA2 destination pointer (high) */
#define TCR20      (*(volatile unsigned char near *)0x188)   /* DMA2 transfer counter (low) */
#define TCR21      (*(volatile unsigned char near *)0x189)   /* DMA2 transfer counter (high) */
#define TCR2       (*(volatile unsigned int near  *)0x188)   /* DMA2 transfer counter */
#define DM2CON     (*(volatile unsigned char near *)0x18C)   /* DMA2 control register */
#define SAR30      (*(volatile unsigned char near *)0x190)   /* DMA3 source pointer (low) */
#define SAR31      (*(volatile unsigned char near *)0x191)   /* DMA3 source pointer (mid) */
#define SAR32      (*(volatile unsigned char near *)0x192)   /* DMA3 source pointer (high) */
#define DAR30      (*(volatile unsigned char near *)0x194)   /* DMA3 destination pointer (low) */
#define DAR31      (*(volatile unsigned char near *)0x195)   /* DMA3 destination pointer (mid) */
#define DAR32      (*(volatile unsigned char near *)0x196)   /* DMA3 destination pointer (high) */
#define TCR30      (*(volatile unsigned char near *)0x198)   /* DMA3 transfer counter (low) */
#define TCR31      (*(volatile unsigned char near *)0x199)   /* DMA3 transfer counter (high) */
#define TCR3       (*(volatile unsigned int near  *)0x198)   /* DMA3 transfer counter */
#define DM3CON     (*(volatile unsigned char near *)0x19C)   /* DMA3 control register */

#define USBA       (*(volatile unsigned int near  *)0x280)   /* USB address register */
#define USBPM      (*(volatile unsigned int near  *)0x282)   /* USB power management register */
#define USBIS      (*(volatile unsigned int near  *)0x284)   /* USB interrupt status register */
#define USBIC      (*(volatile unsigned int near  *)0x286)   /* USB interrupt clear register */
#define USBIE      (*(volatile unsigned int near  *)0x288)   /* USB interrupt enable register */
#define USBFN      (*(volatile unsigned int near  *)0x28A)   /* USB frame number register */
#define USBISOC    (*(volatile unsigned int near  *)0x28C)   /* USB ISO control register */
#define USBEPEN    (*(volatile unsigned int near  *)0x28E)   /* USB endpoint enable register */
#define USBDMA0    (*(volatile unsigned int near  *)0x290)   /* USB DMA0 request register */
#define USBDMA1    (*(volatile unsigned int near  *)0x292)   /* USB DMA1 request register */
#define USBDMA2    (*(volatile unsigned int near  *)0x294)   /* USB DMA2 request register */
#define USBDMA3    (*(volatile unsigned int near  *)0x296)   /* USB DMA3 request register */
#define EP0CS      (*(volatile unsigned int near  *)0x298)   /* USB EP0 control/status register */
#define EP0MP      (*(volatile unsigned int near  *)0x29A)   /* USB EP0 max packet size register */
#define EP0WC      (*(volatile unsigned int near  *)0x29C)   /* USB EP0 write count register */
#define EP1ICS     (*(volatile unsigned int near  *)0x29E)   /* USB EP1 IN control/status register */
#define EP1IMP     (*(volatile unsigned int near  *)0x2A0)   /* USB EP1 IN max packet size register */
#define EP1IFC     (*(volatile unsigned int near  *)0x2A2)   /* USB EP1 IN FIFO config. register */
#define EP2ICS     (*(volatile unsigned int near  *)0x2A4)   /* USB EP2 IN control/status register */
#define EP2IMP     (*(volatile unsigned int near  *)0x2A6)   /* USB EP2 IN max packet size register */
#define EP2IFC     (*(volatile unsigned int near  *)0x2A8)   /* USB EP2 IN FIFO config. register */
#define EP3ICS     (*(volatile unsigned int near  *)0x2AA)   /* USB EP3 IN control/status register */
#define EP3IMP     (*(volatile unsigned int near  *)0x2AC)   /* USB EP3 IN max packet size register */
#define EP3IFC     (*(volatile unsigned int near  *)0x2AE)   /* USB EP3 IN FIFO config. register */

⌨️ 快捷键说明

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