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

📄 c5402mmr.h

📁 DSP实验程序:数据采集实验,练习使用DSP进行数据采集
💻 H
📖 第 1 页 / 共 3 页
字号:
#define DRR11_ADDR      (*(volatile unsigned int *)DRR11_BASE)
#define DXR21_ADDR      (*(volatile unsigned int *)DXR21_BASE)
#define DXR11_ADDR      (*(volatile unsigned int *)DXR11_BASE)
#define SPSA1_ADDR      (*(volatile unsigned int *)SPSA1_BASE)
#define SPCR11_ADDR     ((volatile SPCR1_REG *) ((char *) SPCR11_BASE))
#define SPCR21_ADDR     ((volatile SPCR2_REG *) ((char *) SPCR21_BASE))
#define RCR11_ADDR      ((volatile RCR1_REG *)  ((char *) RCR11_BASE))
#define RCR21_ADDR      ((volatile RCR2_REG *)  ((char *) RCR21_BASE))
#define XCR11_ADDR      ((volatile XCR1_REG *)  ((char *) XCR11_BASE))
#define XCR21_ADDR      ((volatile XCR2_REG *)  ((char *) XCR21_BASE))
#define SRGR11_ADDR     ((volatile SRGR1_REG *) ((char *) SRGR11_BASE))
#define SRGR21_ADDR     ((volatile SRGR2_REG *) ((char *) SRGR21_BASE))
#define MCR11_ADDR      ((volatile MCR1_REG *)  ((char *) MCR11_BASE))
#define MCR21_ADDR      ((volatile MCR2_REG *)  ((char *) MCR21_BASE))
#define RCERA1_ADDR     ((volatile RCERA_REG *) ((char *) RCERA1_BASE))
#define RCERB1_ADDR     ((volatile RCERB_REG *) ((char *) RCERB1_BASE))
#define XCERA1_ADDR     ((volatile XCERA_REG *) ((char *) XCERA1_BASE))
#define XCERB1_ADDR     ((volatile XCERB_REG *) ((char *) XCERB1_BASE))
#define PCR1_ADDR       ((volatile PCR_REG *)   ((char *) PCR1_BASE))

/*-------------------------------------------------------------------*/
/* SPCR1 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int dlb:1;
                unsigned int rjust:2;
                unsigned int clkstp:2;
                unsigned int rsrvd:3;
                unsigned int dxena:1;
                unsigned int abis:1;
                unsigned int rintm:2;
                unsigned int rsyncerr:1;
                unsigned int rfull:1;
                unsigned int rrdy:1;
                unsigned int rrst:1;
                } bitval;
        unsigned int value;
} SPCR1_REG;

/*-------------------------------------------------------------------*/
/* SPCR2 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rsrvd:6;
                unsigned int free:1;
                unsigned int soft:1;
                unsigned int frst:1;
                unsigned int grst:1;
                unsigned int xintm:2;
                unsigned int xsyncerr:1;
                unsigned int xempty:1;
                unsigned int xrdy:1;
                unsigned int xrst:1;
                } bitval;
        unsigned int value;
} SPCR2_REG;

/*-------------------------------------------------------------------*/
/* PCR */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rsrvd1:2;
                unsigned int xioen:1;
                unsigned int rioen:1;
                unsigned int fsxm:1;
                unsigned int fsrm:1;
                unsigned int clkxm:1;
                unsigned int clkrm:1;
                unsigned int rsrvd2:1;
                unsigned int clks_stat:1;
                unsigned int dx_stat:1;
                unsigned int dr_stat:1;
                unsigned int fsxp:1;
                unsigned int fsrp:1;
                unsigned int clkxp:1;
                unsigned int clkrp:1;
                } bitval;
        unsigned int value;
} PCR_REG;

/*-------------------------------------------------------------------*/
/* RCR1 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rsrvd1:1;
                unsigned int rfrlen1:7;
                unsigned int rwdlen1:3;
                unsigned int rsrvd2:5;
                } bitval;
        unsigned int value;
} RCR1_REG;

/*-------------------------------------------------------------------*/
/* RCR2 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rphase:1;
                unsigned int rfrlen2:7;
                unsigned int rwdlen2:3;
                unsigned int rcompand:2;
                unsigned int rfig:1;
                unsigned int rdatdly:2;
                } bitval;
        unsigned int value;
} RCR2_REG;

/*-------------------------------------------------------------------*/
/* XCR1 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rsrvd1:1;
                unsigned int xfrlen1:7;
                unsigned int xwdlen1:3;
                unsigned int rsrvd2:5;
                } bitval;
        unsigned int value;
} XCR1_REG;


/*-------------------------------------------------------------------*/
/* XCR2 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int xphase:1;
                unsigned int xfrlen2:7;
                unsigned int xwdlen2:3;
                unsigned int xcompand:2;
                unsigned int xfig:1;
                unsigned int xdatdly:2;
                } bitval;
        unsigned int value;
} XCR2_REG;

/*-------------------------------------------------------------------*/
/* SRGR1 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int fwid:8;
                unsigned int clkdiv:8;
                } bitval;
        unsigned int value;
} SRGR1_REG;

/*-------------------------------------------------------------------*/
/* SRGR2 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int gsync:1;
                unsigned int clksp:1;
                unsigned int clksm:1;
                unsigned int fsgm:1;
                unsigned int fper:12;
                } bitval;
        unsigned int value;
} SRGR2_REG;

/*-------------------------------------------------------------------*/
/* MCR1 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rsrvd1:7;
                unsigned int rpbblk:2;
                unsigned int rpablk:2;
                unsigned int rcblk:3;
                unsigned int rsrvd2:1;
                unsigned int rmcm:1;
                } bitval;
        unsigned int value;
} MCR1_REG;

/*-------------------------------------------------------------------*/
/* MCR2 */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int rsrvd1:7;
                unsigned int xpbblk:2;
                unsigned int xpablk:2;
                unsigned int xcblk:3;
                unsigned int xmcm:2;
                } bitval;
        unsigned int value;
} MCR2_REG;

/*-------------------------------------------------------------------*/
/* RCERA */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int RCEA15:1;
                unsigned int RCEA14:1;
                unsigned int RCEA13:1;
                unsigned int RCEA12:1;
                unsigned int RCEA11:1;
                unsigned int RCEA10:1;
                unsigned int RCEA9:1;
                unsigned int RCEA8:1;
                unsigned int RCEA7:1;
                unsigned int RCEA6:1;
                unsigned int RCEA5:1;
                unsigned int RCEA4:1;
                unsigned int RCEA3:1;
                unsigned int RCEA2:1;
                unsigned int RCEA1:1;
                unsigned int RCEA0:1;
                } bitval;
        unsigned int value;
} RCERA_REG;

/*-------------------------------------------------------------------*/
/* RCERB */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int RCEB15:1;
                unsigned int RCEB14:1;
                unsigned int RCEB13:1;
                unsigned int RCEB12:1;
                unsigned int RCEB11:1;
                unsigned int RCEB10:1;
                unsigned int RCEB9:1;
                unsigned int RCEB8:1;
                unsigned int RCEB7:1;
                unsigned int RCEB6:1;
                unsigned int RCEB5:1;
                unsigned int RCEB4:1;
                unsigned int RCEB3:1;
                unsigned int RCEB2:1;
                unsigned int RCEB1:1;
                unsigned int RCEB0:1;
                } bitval;
        unsigned int value;
} RCERB_REG;

/*-------------------------------------------------------------------*/
/* XCERA */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int XCEA15:1;
                unsigned int XCEA14:1;
                unsigned int XCEA13:1;
                unsigned int XCEA12:1;
                unsigned int XCEA11:1;
                unsigned int XCEA10:1;
                unsigned int XCEA9:1;
                unsigned int XCEA8:1;
                unsigned int XCEA7:1;
                unsigned int XCEA6:1;
                unsigned int XCEA5:1;
                unsigned int XCEA4:1;
                unsigned int XCEA3:1;
                unsigned int XCEA2:1;
                unsigned int XCEA1:1;
                unsigned int XCEA0:1;
                } bitval;
        unsigned int value;
} XCERA_REG;

/*-------------------------------------------------------------------*/
/* XCERB */
/*-------------------------------------------------------------------*/
typedef union {
        struct {
                unsigned int XCEB15:1;
                unsigned int XCEB14:1;
                unsigned int XCEB13:1;
                unsigned int XCEB12:1;
                unsigned int XCEB11:1;
                unsigned int XCEB10:1;
                unsigned int XCEB9:1;
                unsigned int XCEB8:1;
                unsigned int XCEB7:1;
                unsigned int XCEB6:1;
                unsigned int XCEB5:1;
                unsigned int XCEB4:1;
                unsigned int XCEB3:1;
                unsigned int XCEB2:1;
                unsigned int XCEB1:1;
                unsigned int XCEB0:1;
                } bitval;
        unsigned int value;
} XCERB_REG;


typedef union {
        struct {
                unsigned int SPCR1_REG :16;	
                unsigned int SPCR2_REG :16;	                        
                unsigned int PCR_REG   :16;	
                unsigned int RCR1_REG  :16;	
                unsigned int RCR2_REG  :16;	
                unsigned int XCR1_REG  :16;	
                unsigned int XCR2_REG  :16;	
                unsigned int SRGR1_REG :16;	
                unsigned int SRGR2_REG :16;	
                unsigned int MCR1_REG  :16;	
                unsigned int MCR2_REG  :16;	
                unsigned int RCERA_REG :16;	
                unsigned int RCERB_REG :16;	
                unsigned int XCERA_REG :16;	
                unsigned int XCERB_REG :16;
                } RegVal;
        unsigned int value;
} MCBSP;


/*********************************************************************/
/* Structure for DMA */
/*********************************************************************/
#define DMAPREC_BASE    0x54
#define DMAPREC_ADDR    ((volatile DMPREC_REG *)        ((char *) DMAPREC_BASE))

#define DMSBA_BASE      0x55
#define DMSBA_ADDR      (*(volatile unsigned int *) DMSBA_BASE)

#define DMSBAI_BASE     0x56    /* Auto-incrementing Sub-Address Register */
#define DMSBAI_ADDR     (*(volatile unsigned int *)     DMSBAI_BASE)

#define DMSBANOI_BASE   0x57    /* Sub-Address Register without Auto-increment */
#define DMSBANOI_ADDR   (*(volatile unsigned int *)     DMSBANOI_BASE)



/* Sub addressing offsets */
#define DMSRC0_SUB      0x00
#define DMDST0_SUB      0x01
#define DMCTR0_SUB      0x02
#define DMSFC0_SUB      0x03
#define DMMCR0_SUB      0x04
#define DMSRC1_SUB      0x05
#define DMDST1_SUB      0x06
#define DMCTR1_SUB      0x07
#define DMSFC1_SUB      0x08
#define DMMCR1_SUB      0x09
#define DMSRC2_SUB      0x0A
#define DMDST2_SUB      0x0B
#define DMCTR2_SUB      0x0C
#define DMSFC2_SUB      0x0D
#define DMMCR2_SUB      0x0E
#define DMSRC3_SUB      0x0F
#define DMDST3_SUB      0x10
#define DMCTR3_SUB      0x11
#define DMSFC3_SUB      0x12
#define DMMCR3_SUB      0x13
#define DMSRC4_SUB      0x14
#define DMDST4_SUB      0x15
#define DMCTR4_SUB      0x16
#define DMSFC4_SUB      0x17
#define DMMCR4_SUB      0x18
#define DMSRC5_SUB      0x19
#define DMDST5_SUB      0x1A
#define DMCTR5_SUB      0x1B
#define DMSFC5_SUB      0x1C
#define DMMCR5_SUB      0x1D
#define DMSRCP_SUB      0x1E
#define DMDSTP_SUB      0x1F
#define DMIDX0_SUB      0x20
#define DMIDX1_SUB      0x21
#define DMFRI0_SUB      0x22
#define DMFRI1_SUB      0x23
#define DMGSA_SUB       0x24
#define DMGDA_SUB       0x25
#define DMGCR_SUB       0x26
#define DMGFR_SUB       0x27


/* Define the base addresses for auto-incrementing */
/* Autoincrementing addresses will be denotated with a A ending */

⌨️ 快捷键说明

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