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

📄 c55xxdefs.h

📁 北京瑞泰创新ICETEK-VC5509A-C开发板所有接口程序。
💻 H
📖 第 1 页 / 共 2 页
字号:
typedef struct c55xx_trace
{
    unsigned short trc00_63[0x40];  /* 00 */
    unsigned short trc63_79[0x10];  /* 40 */
    unsigned short lpoffset1;       /* 50 */
    unsigned short lpoffset2;       /* 51 */
    unsigned short ptr;             /* 52 */
    unsigned short cntl;            /* 53 */
    unsigned short id;              /* 54 */
}C55XX_TRACE;  

typedef ioport volatile C55XX_TRACE * PC55XX_TRACE;


/*---- Clock Mode ----------------------------------------------------------*/
typedef struct c55xx_cmod
{
    unsigned short clkmd;       /* Clock-mode register                      */

}C55XX_CMOD;    

typedef ioport volatile  C55XX_CMOD * PC55XX_CMOD;

/*---- Clock Mode ----------------------------------------------------------*/
typedef struct c55xx_usbcmod
{
    unsigned short usbclkmd;       /* Clock-mode register                      */

}C55XX_USBCMOD;    

typedef ioport volatile  C55XX_USBCMOD * PC55XX_USBCMOD;


/*---- GPIO  ---------------------------------------------------------------*/
typedef struct c55xx_gpio
{
    unsigned short iodir;           /* 00 */
    unsigned short iodata;          /* 01 */
}C55XX_GPIO;   

typedef ioport volatile C55XX_GPIO * PC55XX_GPIO;

/*---- Die Id  --------------------------------------------------------------*/
typedef struct c55xx_did
{
    unsigned short id0;             /* 00 */
    unsigned short id1;             /* 01 */
    unsigned short id2;             /* 02 */
    unsigned short id3;             /* 03 */
}C55XX_DID;

typedef ioport volatile C55XX_DID *PC55XX_DID;

/*---- I2C ------------------------------------------------------------------*/
typedef struct c55xx_i2c
{
    unsigned short icoar;           /* 00 */
    unsigned short icimr;           /* 01 */
    unsigned short icstr;           /* 02 */
    unsigned short icclkl;          /* 03 */
    unsigned short icclkh;          /* 04 */
    unsigned short iccnt;           /* 05 */
    unsigned short icdrr;           /* 06 */
    unsigned short icsar;           /* 07 */
    unsigned short icdxr;           /* 08 */
    unsigned short icmdr;           /* 09 */
    unsigned short icivr;           /* 0A */
    unsigned short icgpio;          /* 0B */
    unsigned short icpsc;           /* 0C */   
}C55XX_I2C;

typedef ioport volatile C55XX_I2C *PC55XX_I2C;

/*---- Media Card------------------------------------------------------------*/
typedef struct c55xx_mmc
{ 
    unsigned short fckctl;          /* 00 */    
    unsigned short ctl;             /* 01 */
    unsigned short clk;             /* 02 */
    unsigned short st0;             /* 03 */
    unsigned short st1;             /* 04 */
    unsigned short im;              /* 05 */
    unsigned short tor;             /* 06 */
    unsigned short tod;             /* 07 */
    unsigned short blen;            /* 08 */
    unsigned short nblk;            /* 09 */
    unsigned short nblc;            /* 0A */
    unsigned short ddr;             /* 0B */
    unsigned short dxr;             /* 0C */
    unsigned short cmd;             /* 0D */
    unsigned short argl;            /* 0E */
    unsigned short argh;            /* 0F */
    unsigned short rsp0;            /* 10 */
    unsigned short rsp1;            /* 11 */
    unsigned short rsp2;            /* 12 */
    unsigned short rsp3;            /* 13 */
    unsigned short rsp4;            /* 14 */
    unsigned short rsp5;            /* 15 */
    unsigned short rsp6;            /* 16 */
    unsigned short rsp7;            /* 17 */
    unsigned short drsp;            /* 18 */
    unsigned short etok;            /* 19 */
    unsigned short cidx;            /* 1A */
}C55XX_MMC; 
  
#ifdef MMC_EXTERNAL 
/*-- Data pointer if external, io pointer if on-chip ----------------------*/  
typedef  volatile C55XX_MMC * PC55XX_MMC;    
#else  
typedef ioport volatile C55XX_MMC * PC55XX_MMC; 
#endif

/*---- Memory Stick------------------------------------------------------------*/
typedef struct c55xx_ms
{
    unsigned short cmd;             /* 00 */
    unsigned short stat;            /* 01 */
    unsigned short cntl;            /* 02 */
    unsigned short idata;           /* 03 */
    unsigned short ictl;            /* 04 */
    unsigned short ppctl;           /* 05 */
    unsigned short drr;             /* 06 */
    unsigned short dxr;             /* 07 */
    unsigned short fclk;            /* 08 */
    unsigned short clk;             /* 09 */
    unsigned short nu1;             /* 0A */
    unsigned short nu2;             /* 0B */
    unsigned short nu3;             /* 0C */
    unsigned short nu4;             /* 0D */
    unsigned short nu5;             /* 0E */
    unsigned short nu6;             /* 0F */
    unsigned short nu7;             /* 10 */
    unsigned short nu8;             /* 11 */
    unsigned short nu9;             /* 12 */
    unsigned short nu10;            /* 13 */
    unsigned short ppdata;          /* 14 */
}C55XX_MS; 
   
#ifdef MMC_EXTERNAL 
/*-- Data pointer if external, io pointer if on-chip ----------------------*/
typedef volatile C55XX_MS * PC55XX_MS;
#else
typedef ioport volatile C55XX_MS * PC55XX_MS;
#endif
  
/*---- Cpu Revision---------------------------------------------------------*/
typedef struct c55xx_revid
{
    unsigned short revid;           /* 00 */
}C55XX_REVID;

typedef ioport volatile C55XX_REVID *PC55XX_REVID;

/*---- Interrupt table definition ------------------------------------------*/
typedef struct c55xx_intr
{
    unsigned short ins1;       /* Instruction slot 1                        */
    unsigned short ins2;       /* Instruction slot 2                        */
    unsigned short ins3;       /* Instruction slot 3                        */
    unsigned short ins4;       /* Instruction slot 4                        */
}C55XX_INTR;

typedef volatile C55XX_INTR * PC55XX_INTR;

typedef struct c55xx_intr_table
{
    C55XX_INTR IntrSlot[32];    /* There are 32 interrupt locations    */
}C55XX_INTR_TABLE;

/*---- ADC ------------------------------------------------------------------*/
typedef struct c55xx_ADC
{
    unsigned short adcr;            /* 00 */
    unsigned short addr;            /* 01 */
    unsigned short adcdr;           /* 02 */
    unsigned short adccr;           /* 03 */
}C55XX_ADC;

typedef ioport volatile C55XX_ADC *PC55XX_ADC;

/*---- External Bus Selection -----------------------------------------------*/
typedef struct c55xx_extbus
{
    unsigned short exbussel;           /* 00 */
}C55XX_EXTBUS;

typedef ioport volatile C55XX_EXTBUS *PC55XX_EXTBUS;

typedef volatile C55XX_INTR_TABLE * PC55XX_INTR_TABLE;  
   
/*---- Define the base address for all the C55XX peripherals, io space-----*/
#define C55XX_RHEA_ADDR         0x0000
#define C55XX_BOOT_ADDR         0x000F
#define C55XX_EMIF_ADDR         0x0800
#define C55XX_CACHE_ADDR        0x1400
#define C55XX_DMA_GLB_ADDR      0x0E00
#define C55XX_DMA0_ADDR         0x0C00
#define C55XX_DMA1_ADDR         0x0C20
#define C55XX_DMA2_ADDR         0x0C40
#define C55XX_DMA3_ADDR         0x0C60
#define C55XX_DMA4_ADDR         0x0C80
#define C55XX_DMA5_ADDR         0x0CA0
#define C55XX_TRACE_ADDR        0x2000
#define C55XX_CLKMD_ADDR        0x1C00
#define C55XX_USBCLKMD_ADDR     0x1E00
#define C55XX_TIM0_ADDR         0x1000
#define C55XX_TIM1_ADDR         0x2400
#define C55XX_RTC_ADDR          0x1800
#define C55XX_MSP0_ADDR         0x2800
#define C55XX_MSP1_ADDR         0x2C00
#define C55XX_MSP2_ADDR         0x3000
#define C55XX_GPIO_ADDR         0x3400
#define C55XX_DIEID_ADDR        0x3800
#define C55XX_REVID_ADDR        0x3804
#define C55XX_I2C_ADDR          0x3c00
#define C55XX_ADC_ADDR          0x6800
#define C55XX_EXTBUS_ADDR       0x6C00   

#define C55XX_MS0_ADDR           0x5000
#define C55XX_MS1_ADDR           0x5400
#define C55XX_MMC0_ADDR          0x4800
#define C55XX_MMC1_ADDR          0x4c00

/* Define the base address in data space for each external memory block-----*/
#define CE0_BASE          ( 0x050000L >> 1 )
#define CE1_BASE          ( 0x400000L >> 1 )
#define CE2_BASE          ( 0x800000L >> 1 )
#define CE3_BASE          ( 0xC00000L >> 1 ) 
                                                
/*---- Non-Maskable interrupts: Sxx are software ints-----------------------*/
#define INTR_RS             0
#define INTR_NMI            1
#define INTR_INT0           2 
#define INTR_INT2           3
#define INTR_TINT0          4
#define INTR_RINT0          5 
#define INTR_RINT1          6
#define INTR_XINT1          7
#define INTR_SINT8          8 
#define INTR_DMAC1          9
#define INTR_DSPINT         10
#define INTR_INT3           11 
#define INTR_RINT2          12
#define INTR_XINT2          13
#define INTR_DMAC4          14
#define INTR_DMAC5          15
#define INTR_INT1           16
#define INTR_XINT0          17
#define INTR_DMAC0          18 
#define INTR_INT4           19
#define INTR_DMAC2          20
#define INTR_DMAC3          21 
#define INTR_TINT1          22
#define INTR_INT5           23
#define INTR_BERR           24
#define INTR_DLOG           25 
#define INTR_RTOS           26
#define INTR_SINT27         27
#define INTR_SINT28         28    
#define INTR_SINT29         29    
#define INTR_SINT30         30    
#define INTR_SINT31         31    

/*---- global data declarations --------------------------------------------*/

/*---- global function prototypes ------------------------------------------*/

#endif /*  c55xxdefs_h ---- END OF FILE ------------------------------------*/

⌨️ 快捷键说明

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