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

📄 register.h

📁 利用汇编语言编写的SPI串行接口的DSP 实验程序。
💻 H
📖 第 1 页 / 共 2 页
字号:
/*C2xx内核寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *IMR                =(volatile unsigned int  *) 0x0004;
/*中断屏蔽寄存器*/
volatile unsigned int  *GREG            =(volatile unsigned int  *) 0x0005;
/*全局变量定位寄存器*/
volatile unsigned int  *IFR                 =(volatile unsigned int  *) 0x0006;
/*中断标志寄存器*/
volatile unsigned int  *ABRPT           =(volatile unsigned int  *) 0x01f;
/*分析断点*/
ioport   unsigned  portFFFF;
#define   WSGR  portFFFF

/*系统模块寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *PIRQR0	=(volatile unsigned int  *) 0x7010; 	 /*外部中断请求寄存器0*/
volatile unsigned int  *PIRQR1		=(volatile unsigned int  *) 0x7011; 	 /*外部中断请求寄存器1*/
volatile unsigned int  *PIRQR2		=(volatile unsigned int  *) 0x7012; 	 /*外部中断请求寄存器2*/
volatile unsigned int  *PIACKR0	=(volatile unsigned int  *) 0x7014; 	 /*外部中断响应寄存器0*/
volatile unsigned int  *PIACKR1	=(volatile unsigned int  *) 0x7015; 	 /*外部中断响应寄存器1*/
volatile unsigned int  *PIACKR2	=(volatile unsigned int  *) 0x7016;	 /*外部中断响应寄存器2*/
volatile unsigned int  *SCSR1            =(volatile unsigned int  *) 0x7018;
/*系统控制和状态寄存器1*/
volatile unsigned int  *SCSR2            =(volatile unsigned int  *) 0x7019;
/*系统控制和状态寄存器2*/
volatile unsigned int  *DINR	=(volatile unsigned int  *)0x701C; 	 /*器件版本号寄存器*/
volatile unsigned int  *PVIR		=(volatile unsigned int  *)0x701E; 	 /*外部中断矢量寄存器*/
/*看门狗/实时中断(RTI)/锁相环(PLL)寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *WDCNTR      =(volatile unsigned int  *) 0x7023;
/*看门狗计数寄存器*/
volatile unsigned int  *WDKEY        =(volatile unsigned int  *) 0x7025;
/*看门狗KEY寄存器*/
volatile unsigned int  *WDCR           =(volatile unsigned int  *) 0x7029;
/*看门狗控制寄存器*/ 
/*串行外设接口 (SPI) 寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *SPICCR	    =(volatile unsigned int  *)0x7040; 	                  /*SPI 配置控制寄存器*/
volatile unsigned int  *SPICTL		 =(volatile unsigned int  *)0x7041; 	                  /* SPI 操作控制寄存器*/
volatile unsigned int  *SPISTS		 =(volatile unsigned int  *)0x7042; 	                 /* SPI 状态寄存器*/
volatile unsigned int  *SPIBRR		 =(volatile unsigned int  *)0x7044; 	                   /*SPI 波特率控制寄存器*/
volatile unsigned int  *SPIEMU 		 =(volatile unsigned int  *)0x7046; 	                   /*SPI 仿真缓冲寄存器*/
volatile unsigned int  *SPIRXBUF	 =(volatile unsigned int  *)0x7047;	                  /* SPI 串行接收缓冲寄存器*/
volatile unsigned int  *SPITXBUF 	 =(volatile unsigned int  *)0x7048; 	                    /*SPI 串行发送缓冲寄存器*/
volatile unsigned int  *SPIDAT 		 =(volatile unsigned int  *)0x7049; 	                  /*SPI 串行数据寄存器*/
volatile unsigned int  *SPIPC1 		 =(volatile unsigned int  *)0x704D;		 /*SPI 端口控制寄存器1*/
volatile unsigned int  *SPIPC2 		 =(volatile unsigned int  *)0x704E;		 /*SPI 端口控制寄存器2*/
volatile unsigned int  *SPIPRI 		 =(volatile unsigned int  *)0x704F;		/* SPI 中断优先级控制寄存器*/
/*串行通信接口 (SCI) 寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *SCICCR		 =(volatile unsigned int  *) 0x7050; 	/*SCI 通信控制寄存器*/
volatile unsigned int  *SCICTL1		 =(volatile unsigned int  *) 0x7051; 	/* SCI 控制寄存器 1*/
volatile unsigned int  *SCIHBAUD	 =(volatile unsigned int  *) 0x7052; 	 /*SCI 波特率高位字节寄存器*/
volatile unsigned int  *SCILBAUD	 =(volatile unsigned int  *) 0x7053; 	/* SCI 波特率低位字节寄存器*/
volatile unsigned int  *SCICTL2		 =(volatile unsigned int  *) 0x7054; 	/* SCI 控制寄存器 2*/
volatile unsigned int  *SCIRXST	 =(volatile unsigned int  *) 0x07055; 	 /*SCI 接收状态寄存器*/
volatile unsigned int  *SCIRXEMU	 =(volatile unsigned int  *) 0x7056; 	 /*SCI 仿真数据缓冲寄存器*/
volatile unsigned int  *SCIRXBUF	 =(volatile unsigned int  *) 0x7057; 	/* SCI 接收数据缓冲寄存器*/
volatile unsigned int  *SCITXBUF	 =(volatile unsigned int  *) 0x7059; 	 /*SCI 发送数据缓冲寄存器*/
volatile unsigned int  *SCIPRI 		 =(volatile unsigned int  *) 0x705F; 	 /*SCI 中断优先级控制寄存器*/
/*外部中断配置寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *XINT1CR	=(volatile unsigned int  *) 0x7070;    	/* 外部中断 1 控制寄存器*/
volatile unsigned int  *XINT2CR	=(volatile unsigned int  *) 0x7071;    	 /*外部中断 2 控制寄存器*/
/*数字I/O控制寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *MCRA           =(volatile unsigned int  *) 0x7090;
/*I/O复用控制寄存器A*/
volatile unsigned int  *MCRB           =(volatile unsigned int  *) 0x7092;
/*I/O复用控制寄存器B*/
volatile unsigned int  *MCRC           =(volatile unsigned int  *) 0x7094;
/*I/O复用控制寄存器C*/
volatile unsigned int  *PADATDIR  =(volatile unsigned int  *) 0x7098;
/*I/O端口A数据和方向控制寄存器*/
volatile unsigned int  *PBDATDIR  =(volatile unsigned int  *) 0x709A;
/*I/O端口B数据和方向控制寄存器*/
volatile unsigned int  *PCDATDIR  =(volatile unsigned int  *) 0x709C;
/*I/O端口C数据和方向控制寄存器*/
volatile unsigned int  *PDDATDIR  =(volatile unsigned int  *) 0x709E;
/*I/O端口D数据和方向控制寄存器*/
volatile unsigned int  *PEDATDIR   =(volatile unsigned int  *) 0x7095;
/*I/O端口E数据和方向控制寄存器*/
volatile unsigned int  *PFDATDIR   =(volatile unsigned int  *) 0x7096;
/*I/O端口F数据和方向控制寄存器*/
/*模数转换(ADC) 寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *ADCTRL1   =(volatile unsigned int  *) 0x70A0;                 /*ADC 控制寄存器 1*/
volatile unsigned int  *ADCTRL2	 =(volatile unsigned int  *) 0x70A1; 		 /*ADC 控制寄存器 2*/
volatile unsigned int  *MAXCONV	     =(volatile unsigned int  *) 0x70A2; 		 /*最大转换通道个数寄存器*/
volatile unsigned int  *CHSELSEQ1	 =(volatile unsigned int  *) 0x70A3; 	                 /*通道选择排序控制寄存器1*/
volatile unsigned int  *CHSELSEQ2	 =(volatile unsigned int  *) 0x70A4; 	                /*通道选择排序控制寄存器2*/
volatile unsigned int  *CHSELSEQ3	 =(volatile unsigned int  *) 0x70A5; 	                /*通道选择排序控制寄存器3*/
volatile unsigned int  *CHSELSEQ4	 =(volatile unsigned int  *) 0x70A6;                /* 通道选择排序控制寄存器4*/
volatile unsigned int  *AUTO_SEQ_SR	 =(volatile unsigned int  *) 0x70A7;                 /*自动排序状态寄存器*/
volatile unsigned int  *RESULT0	 =(volatile unsigned int  *) 0x70A8; 	 /*A/D转换结果寄存器0*/
volatile unsigned int  *RESULT1	 =(volatile unsigned int  *) 0x70A9; 	 /*A/D转换结果寄存器1*/
volatile unsigned int  *RESULT2	 =(volatile unsigned int  *) 0x70AA; 	/* A/D转换结果寄存器2*/
volatile unsigned int  *RESULT3	 =(volatile unsigned int  *) 0x70AB; 	 /*A/D转换结果寄存器3*/
volatile unsigned int  *RESULT4	 =(volatile unsigned int  *) 0x70AC; 	 /*A/D转换结果寄存器4*/
volatile unsigned int  *RESULT5	 =(volatile unsigned int  *) 0x70AD; 	/* A/D转换结果寄存器5*/
volatile unsigned int  *RESULT6	 =(volatile unsigned int  *) 0x70AE; 	/* A/D转换结果寄存器6*/
volatile unsigned int  *RESULT7	 =(volatile unsigned int  *) 0x70AF;  	 /*A/D转换结果寄存器7*/
volatile unsigned int  *RESULT8	 =(volatile unsigned int  *) 0x70B0;	/* A/D转换结果寄存器8*/
volatile unsigned int  *RESULT9	 =(volatile unsigned int  *) 0x70B1; 	 /*A/D转换结果寄存器9*/
volatile unsigned int  *RESULT10	 =(volatile unsigned int  *) 0x70B2; 	/* A/D转换结果寄存器10*/
volatile unsigned int  *RESULT11	 =(volatile unsigned int  *) 0x70B3;	 /*A/D转换结果寄存器11*/
volatile unsigned int  *RESULT12	 =(volatile unsigned int  *) 0x70B4; 	 /*A/D转换结果寄存器12*/
volatile unsigned int  *RESULT13	 =(volatile unsigned int  *) 0x70B5; 	/* A/D转换结果寄存器13*/
volatile unsigned int  *RESULT14	 =(volatile unsigned int  *) 0x70B6; 	 /*A/D转换结果寄存器14*/
volatile unsigned int  *RESULT15	 =(volatile unsigned int  *) 0x70B7; 	 /*A/D转换结果寄存器15*/
volatile unsigned int  *CALIBRATION	 =(volatile unsigned int  *) 0x70B8; 	/* 校准结果寄存器*/

/*局部控制网络CAN 寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
volatile unsigned int  *MDER   =(volatile unsigned int  *)0x7100;	/*CAN邮箱方向/使能寄存器*/
volatile unsigned int  *TCR= (volatile unsigned int  *) 0x7101;	/*CAN发送控制寄存器*/
volatile unsigned int  *RCR=(volatile unsigned int  *)0x7102; 	 /*CAN接收控制寄存器*/
volatile unsigned int  *MCR=(volatile unsigned int  *)0x7103; 	 /*CAN主控制寄存器*/
volatile unsigned int  *BCR2  =(volatile unsigned int  *)0x7104; 	 /*CAN位配置寄存器2*/
volatile unsigned int  *BCR1  =(volatile unsigned int  *)0x7105; 	 /*CAN位配置寄存器1*/
volatile unsigned int  *ESR    =(volatile unsigned int  *)0x7106; 	 /*CAN错误状态寄存器*/
volatile unsigned int  *GSR   =(volatile unsigned int  *)0x7107; 	 /*CAN全局状态寄存器*/
volatile unsigned int  *CEC    =(volatile unsigned int  *)0x7108; 	 /*CAN传送和接收错误计数器*/
volatile unsigned int  *CAN_IFR       =(volatile unsigned int  *)0x7109; 	 /*CAN中断标志寄存器*/
volatile unsigned int  *CAN_IMR =(volatile unsigned int  *)0x710A;	/* CAN中断屏蔽寄存器*/
volatile unsigned int  *LAM0_H =(volatile unsigned int  *)0x710B; 	/* CAN本地接收屏蔽高位字寄存器(MBX0/1)*/
volatile unsigned int  *LAM0_L =(volatile unsigned int  *)0x710C; 	 /*CAN本地接收屏蔽低位字寄存器(MBX0/1)*/
volatile unsigned int  *LAM1_H =(volatile unsigned int  *)0x710D; 	 /*CAN本地接收屏蔽高位字寄存器(MBX2/3)*/
volatile unsigned int  *LAM1_L =(volatile unsigned int  *)0x710E; 	/* CAN本地接收屏蔽低位字寄存器(MBX2/3)*/

volatile unsigned int  *MSGID0L    =(volatile unsigned int  *)0x7200; 	/* CAN邮箱0消息标识符(低16位字)*/
volatile unsigned int  *MSGID0H   =(volatile unsigned int  *)0x7201; 	/* CAN邮箱0消息标识符(高16位字)*/
volatile unsigned int  *MSGCTRL0   =(volatile unsigned int  *)0x7202; 	/* CAN邮箱0消息控制域寄存器*/
volatile unsigned int  *MBX0A   =(volatile unsigned int  *)0x7204; 		/* CAN邮箱0中邮箱RAM的2个字节 */
volatile unsigned int  *MBX0B    =(volatile unsigned int  *)0x7205; 		 /*CAN邮箱0中邮箱RAM的2个字节*/
volatile unsigned int  *MBX0C    =(volatile unsigned int  *)0x7206; 		/* CAN邮箱0中邮箱RAM的2个字节 */
volatile unsigned int  *MBX0D    =(volatile unsigned int  *)0x7207; 		/* CAN邮箱0中邮箱RAM的2个字节 */

volatile unsigned int  *MSGID1L    =(volatile unsigned int  *)0x7208; 	 /*CAN邮箱1消息标识符(低16位字)*/
volatile unsigned int  *MSGID1H    =(volatile unsigned int  *)0x7209; 	/* CAN邮箱1消息标识符(高16位字)*/
volatile unsigned int  *MSGCTRL1   =(volatile unsigned int  *)0x720A; 	 /*CAN邮箱1消息控制域寄存器*/
volatile unsigned int  *MBX1A     =(volatile unsigned int  *)0x720C;  	 /*CAN邮箱1中邮箱RAM的2个字节*/
volatile unsigned int  *MBX1B     =(volatile unsigned int  *)0x720D;  	 /*CAN邮箱1中邮箱RAM的2个字节*/
volatile unsigned int  *MBX1C     =(volatile unsigned int  *)0x720E;  	 /*CAN邮箱1中邮箱RAM的2个字节*/
volatile unsigned int  *MBX1D      =(volatile unsigned int  *)0x720F; 	 /*CAN邮箱1中邮箱RAM的2个字节*/

volatile unsigned int  *MSGID2L     =(volatile unsigned int  *)0x7210; 	 /*CAN邮箱2消息标识符(低16位字)*/
volatile unsigned int  *MSGID2H     =(volatile unsigned int  *)0x7211; 	 /*CAN邮箱2消息标识符(高16位字)*/
volatile unsigned int  *MSGCTRL2    =(volatile unsigned int  *)0x7212; 	 /*CAN邮箱2消息控制域寄存器*/
volatile unsigned int  *MBX2A     	 =(volatile unsigned int  *)0x7214; 	/* CAN邮箱2中邮箱RAM的2个字节*/
volatile unsigned int  *MBX2B     	 =(volatile unsigned int  *)0x7215; 	 /*CAN邮箱2中邮箱RAM的2个字节*/
volatile unsigned int  *MBX2C     	 =(volatile unsigned int  *)0x7216; 	 /*CAN邮箱2中邮箱RAM的2个字节*/
volatile unsigned int  *MBX2D      =(volatile unsigned int  *)0x7217; 	 /*CAN邮箱2中邮箱RAM的2个字节*/

volatile unsigned int  *MSGID3L    =(volatile unsigned int  *)0x7218; 	/* CAN邮箱3消息标识符(低16位字)*/
volatile unsigned int  *MSGID3H    =(volatile unsigned int  *)0x7219; 	/* CAN邮箱3消息标识符(高16位字)*/
volatile unsigned int  *MSGCTRL3   =(volatile unsigned int  *)0x721A; 	/* CAN邮箱3消息控制域寄存器*/
volatile unsigned int  *MBX3A      =(volatile unsigned int  *)0x721C; 	/* CAN邮箱3中邮箱RAM的2个字节*/
volatile unsigned int  *MBX3B      =(volatile unsigned int  *)0x721D; 	 /*CAN邮箱3中邮箱RAM的2个字节*/
volatile unsigned int  *MBX3C      =(volatile unsigned int  *)0x721E; 	/* CAN邮箱3中邮箱RAM的2个字节*/
volatile unsigned int  *MBX3D      =(volatile unsigned int  *)0x721F; 	 /*CAN邮箱3中邮箱RAM的2个字节*/

⌨️ 快捷键说明

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