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

📄 2407regs.h

📁 这是DSP2407的一个例子
💻 H
📖 第 1 页 / 共 2 页
字号:
/* 邮包 4 D*/
#define CANMSGID5L  *(volatile unsigned int *)0x7228
/* 对于邮包5的信息标志符 低位 */
#define CANMSGID5H  *(volatile unsigned int *)0x7229
/* 对于邮包5的信息标志符 高位 */
#define CANMSGCTRL5 *(volatile unsigned int *)0x722A
/*对于邮包5的信息控制域*/
#define CANMBX5A	*(volatile unsigned int *)0x722C
/* 邮包 5 A*/
#define CANMBX5B	*(volatile unsigned int *)0x722D
/* 邮包 5 B*/
#define CANMBX5C    *(volatile unsigned int *)0x722E
/* 邮包 5 C*/
#define CANMBX5D    *(volatile unsigned int *)0x722F
/*邮包5 D*/
/*事件管理器 (EV)/ 事件管理器 A (EVA) 寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define GPTCONA     *(volatile unsigned int *)0x7400
/* 通用定时器控制寄存器*/
#define T1CNT 	    *(volatile unsigned int *)0x7401
/* T1 计数器*/
#define T1CMP       *(volatile unsigned int *)0x7402
/* T1 比较寄存器*/
#define T1PER 	    *(volatile unsigned int *)0x7403
/* T1 周期寄存器*/
#define T1PR 	    *(volatile unsigned int *)0x7403
/* T1 周期寄存器*/
#define T1CON 	    *(volatile unsigned int *)0x7404
/* T1 控制寄存器*/
#define T2CNT 	    *(volatile unsigned int *)0x7405
/* T2 计数器*/
#define T2CMP 	    *(volatile unsigned int *)0x7406
/* T2 比较寄存器*/
#define T2PER 	    *(volatile unsigned int *)0x7407
/* T2 周期寄存器*/
#define T2PR 	    *(volatile unsigned int *)0x7407
/* T2 周期寄存器*/
#define T2CON 	    *(volatile unsigned int *)0x7408
/* T2 控制寄存器*/
#define COMCONA 	*(volatile unsigned int *)0x7411
/* 比较控制寄存器*/
#define ACTRA 	    *(volatile unsigned int *)0x7413
/* 比较输出动作控制寄存器*/
#define DBTCONA 	*(volatile unsigned int *)0x7415
/* 死区控制寄存器*/
#define CMPR1 	    *(volatile unsigned int *)0x7417
/* 比较值1*/
#define CMPR2 	    *(volatile unsigned int *)0x7418
/* 比较值2*/
#define CMPR3 	    *(volatile unsigned int *)0x7419
/* 比较值3*/
#define CAPCONA 	*(volatile unsigned int *)0x7420
/* 捕捉控制寄存器*/
#define CAPFIFOA	*(volatile unsigned int *)0x7422
/* 捕捉 FIFO A 状态寄存器*/
#define CAP1FIFO	*(volatile unsigned int *)0x7423
/* 捕捉 1 FIFO 顶部*/
#define CAP2FIFO	*(volatile unsigned int *)0x7424
/* 捕捉 2 FIFO 顶部*/
#define CAP3FIFO	*(volatile unsigned int *)0x7425
/* 捕捉 3 FIFO 顶部*/
#define CAP1FBOT	*(volatile unsigned int *)0x7427
/* 捕捉 1 FIFO 底部 */
#define CAP2FBOT	*(volatile unsigned int *)0x7428
/* 捕捉 2 FIFO 底部 */
#define CAP3FBOT    *(volatile unsigned int *)0x7429
/* 捕捉 2 FIFO 底部 */
#define EVAIMRA	    *(volatile unsigned int *)0x742C
/* EVA 中断屏蔽寄存器 A*/
#define EVAIMRB	    *(volatile unsigned int *)0x742D
/* EVA中断屏蔽寄存器 B*/
#define EVAIMRC	    *(volatile unsigned int *)0x742E
/* EVA 中断屏蔽寄存器 C*/
#define EVAIFRA	    *(volatile unsigned int *)0x742F
/* EVA中断标志寄存器 A*/
#define EVAIFRB	    *(volatile unsigned int *)0x7430
/* EVA 中断标志寄存器 B*/
#define EVAIFRC	    *(volatile unsigned int *)0x7431
/* EVA中断标志寄存器 C*/
/*事件管理器 B (EVB) 寄存器
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define GPTCONB 	*(volatile unsigned int *)0x7500
/*通用定时器控制寄存器*/
#define T3CNT 	    *(volatile unsigned int *)0x7501
/* T3计数器*/
#define T3CMP 	    *(volatile unsigned int *)0x7502
/* T3比较值寄存器*/
#define T3PER 	    *(volatile unsigned int *)0x7503
/* T3周期寄存器*/
#define T3PR 	    *(volatile unsigned int *)0x7503
/* T3周期寄存器*/
#define T3CON       *(volatile unsigned int *)0x7504
/* T3控制寄存器*/
#define T4CNT 	    *(volatile unsigned int *)0x7505
/* T4计数器*/
#define T4CMP 	    *(volatile unsigned int *)0x7506
/* T4比较值寄存器*/
#define T4PER 	    *(volatile unsigned int *)0x7507
/* T4周期寄存器*/
#define T4PR 	    *(volatile unsigned int *)0x7507
/* T4周期寄存器*/
#define T4CON 	    *(volatile unsigned int *)0x7508
/* T4控制寄存器*/
#define COMCONB 	*(volatile unsigned int *)0x7511
/*比较控制寄存器*/
#define ACTRB 	    *(volatile unsigned int *)0x7513
/*比较输出动作控制寄存器*/
#define DBTCONB 	*(volatile unsigned int *)0x7515
/*死区控制寄存器*/
#define CMPR4 	    *(volatile unsigned int *)0x7517
/*比较值4*/
#define CMPR5 	    *(volatile unsigned int *)0x7518
/*比较值5*/
#define CMPR6       *(volatile unsigned int *)0x7519
/*比较值6*/
#define CAPCONB     *(volatile unsigned int *)0x7520
/*捕捉控制寄存器*/
#define CAPFIFOB	*(volatile unsigned int *)0x7522
/* 捕捉FIFO A 状态寄存器*/
#define CAP4FIFO	*(volatile unsigned int *)0x7523
/* 捕捉 4 FIFO 顶部*/
#define CAP5FIFO	*(volatile unsigned int *)0x7524
/* 捕捉 5 FIFO 顶部*/
#define CAP6FIFO	*(volatile unsigned int *)0x7525
/* 捕捉 6 FIFO 顶部*/
#define CAP4FBOT	*(volatile unsigned int *)0x7527
/* 捕捉 4 FIFO 底部*/ 
#define CAP5FBOT	*(volatile unsigned int *)0x7528	
/*捕捉 5 FIFO 底部*/ 
#define CAP6FBOT    *(volatile unsigned int *)0x7529	
/*捕捉 6 FIFO 底部*/ 
#define EVBIMRA	    *(volatile unsigned int *)0x752C
/* EVB中断屏蔽寄存器A*/
#define EVBIMRB	    *(volatile unsigned int *)0x752D	
/* EVB 中断屏蔽寄存器B*/
#define EVBIMRC	    *(volatile unsigned int *)0x752E
/* EVB 中断屏蔽寄存器 C*/
#define EVBIFRA     *(volatile unsigned int *)0x752F	
/* EVB 中断标志寄存器 A*/
#define EVBIFRB	    *(volatile unsigned int *)0x7530
/* EVB 中断标志寄存器 B*/
#define EVBIFRC	    *(volatile unsigned int *)0x7531
/* EVB 中断标志寄存器 C*/
/*-----------------------------------------------------------------------------
;常量的定义
;-----------------------------------------------------------------------------
;数据空间
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define		B2_SADDR	0x0060	/*块 B2 的开始地址*/
#define		B2_EADDR	0x007F	/*块 B2 的结束地址*/
#define		B0_SADDR	0x0200	/*块 B0 的开始地址*/
#define		B0_EADDR	0x02FF	/*块 B0 的结束地址*/
#define		B1_SADDR	0x0300	/*块 B1 的开始地址*/
#define		B1_EADDR	0x03FF	/*块 B1 的结束地址*/
#define		SARAM		0x0800	/*SARAM 的开始地址(0800h-0FFFh)*/
#define		EXTDATA		0x8000	/*外部的数据空间的开始地址*/
/*经常用到的数据页
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define		DP_B2		0	     /*页 0  数据空间*/
#define		DP_B01		4	     /*页 4  B0(200H/80H)*/	
#define		DP_B02		5	     /*页 5  B0(280H/80H)*/	
#define		DP_B11		6	     /*页 6  B1(300H/80H)*/	
#define		DP_B12		7	     /*页 7  B1(380H/80H)*/
#define		DP_SARAM1   16	     /*页 16 SARAM(800H/80H)*/
#define		DP_PF1	    224      /*页1 外设帧文件 (7000h/80h)(0XE0)*/
#define		DP_PF2	    225      /*页 2 外设帧文件 (7080h/80h)(0XE1)*/
#define		DP_PF3	    226      /*页 3 外设帧文件 (7100h/80h)(0XE2)*/
#define		DP_PF4	    227      /*页 4外设帧文件(7180h/80h)(0XE3)*/
#define		DP_PF5      228      /*页 5外设帧文件(7200h/80h)(0XE4)*/
#define		DP_EVA	    232	     /*EVA 寄存器文件 (7400h/80h)(0XE8)*/
#define		DP_EVB	    234	     /*EVB 寄存器文件 (7500h/80h)(0XEA)*/
#define		DP_EXT1	    256      /*外部存储器的第一块(8000H/80H)*/
/*位测试指令的位代码(BIT)
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define		BIT15		0	/*位代码 15*/
#define		BIT14		1	/*位代码14*/
#define		BIT13		2	/*位代码13*/
#define		BIT12		3	/*位代码12*/
#define		BIT11		4	/*位代码11*/
#define		BIT10		5	/*位代码10*/
#define		BIT9		6	/*位代码9*/
#define		BIT8		7	/*位代码8*/
#define		BIT7		8	/*位代码7*/
#define		BIT6		9	/*位代码6*/
#define		BIT5		10	/*位代码5*/
#define		BIT4		11	/*位代码4*/
#define		BIT3		12	/*位代码3*/
#define		BIT2		13	/*位代码2*/
#define		BIT1		14	/*位代码1*/
#define		BIT0		15	/*位代码0*/
/*用SBIT0和SBIT1宏屏蔽位
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define		B15_MSK		0x8000	/*位屏蔽15*/
#define		B14_MSK		0x4000	/*位屏蔽14*/
#define		B13_MSK		0x2000	/*位屏蔽13*/
#define		B12_MSK		0x1000	/*位屏蔽12*/
#define		B11_MSK		0x0800	/*位屏蔽11*/
#define		B10_MSK		0x0400	/*位屏蔽10*/
#define		B9_MSK		0x0200	/*位屏蔽9*/
#define		B8_MSK		0x0100	/*位屏蔽8*/
#define		B7_MSK		0x0080	/*位屏蔽7*/
#define		B6_MSK		0x0040	/*位屏蔽6*/
#define		B5_MSK		0x0020	/*位屏蔽5*/
#define		B4_MSK		0x0010	/*位屏蔽4*/
#define		B3_MSK		0x0008	/*位屏蔽3*/
#define		B2_MSK		0x0004	/*位屏蔽2*/
#define		B1_MSK		0x0002	/*位屏蔽1*/
#define		B0_MSK		0x0001	/*位屏蔽0*/
/*看门狗定时器复位字符串 
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#define		wd_rst_1	0x0055
#define		wd_rst_2	0x00AA
/*以下为用户自行定义的变量
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*******************以下为用户自行定义的变量**************************************************************/

/*****************并口通讯的状态寄存器********************************************************************/
/*volatile unsigned int *PIO_RD_state   =(volatile unsigned int *)0x;
volatile unsigned int *PIO_RD_data   =(volatile unsigned int *)0x;
volatile unsigned int *PIO_WR_state   =(volatile unsigned int *)0x;
volatile unsigned int *PIO_WR_data   =(volatile unsigned int *)0x;
*/

/********************数字量IO寄存器******************************************************************/
/*******根据CPLD得译码,DI_CSL地址为0xxx xxxx xxx0 1010,即IO空间0x000A
                      DI_CSH地址为0xxx xxxx xxx0 1011,即IO空间0x000B
                      DO_CSL地址为0xxx xxxx xxx0 1100,即IO空间0x000C
                      DO_CSH地址为0xxx xxxx xxx0 1101,即IO空间0x000D     
*********************************************************************/ 
/*ioport   unsigned port000A;		
#define DI_CSL  port000A  

ioport   unsigned port000B;	                
#define DI_CSH  port000B 

ioport   unsigned port000C;	
#define DO_CSL  port000C  

ioport   unsigned port000D;	
#define DO_CSH  port000D    */

#define DIL_State *(volatile unsigned int *)0xFF03
#define DIH_State *(volatile unsigned int *)0xFF05  
#define DOL_State *(volatile unsigned int *)0xFF01 
#define DOH_State *(volatile unsigned int *)0xFF02
/**volatile unsigned int *DICSL   =(volatile unsigned int *)0x000A;  **/
#define _setbit(B,b)             ((B)|=(0x0001<<(b)))             /**将某一位置位****/
#define _clrbit(B,b)             ((B)&=~(0x0001<<(b)))            /***将某一位清零*****/
#define _tstbit(B,b)             ((B)&(0x0001<<(b)))              /***测试某一位的状态******/    
/**********************************************************************/
 /********************编码器反馈部分********************************************/ 
/******编码器反馈地址:  Encode_Clr地址为IO空间	     0x0000,读该地址,使三路轴编码器计数清零 
                      Hand_Clr    地址为IO空间    0x0001,读该地址,使手脉输入计数清零 
					  Encode1_Rd  地址为IO空间    0x0002,读该地址,得到第一路编码器计数
					  Encode2_Rd  地址为IO空间    0x0003,读该地址,得到第二路编码器计数
					  Encode3_Rd  地址为IO空间    0x0004,读该地址,得到第三路编码器计数
                      Hand_Rd     地址为IO空间    0x0009,读该地址,得到手轮输入的计数					  
*********************************************************************/
/*ioport   unsigned port0000;	
#define Encode_Clr port0000              /**读该地址,使三路轴编码器计数清零 **/
/*ioport   unsigned port0001;	
#define Hand_Clr   port0001              /**读该地址,使手脉输入计数清零**/ 
/*ioport   unsigned port0002;	
#define	Encode1_Rd port0002              /**读该地址,得到第一路编码器计数**/
/*ioport   unsigned port0003;	
#define	Encode2_Rd port0003              /**读该地址,得到第二路编码器计数**/
/*ioport   unsigned port0004;	
#define	Encode3_Rd port0004              /**读该地址,得到第三路编码器计数**/
/*ioport   unsigned port0009;	
#define Hand_Rd    port0009              /**读该地址,得到手轮输入的计数**/   

#define Encode_CLRlt  *(volatile unsigned int *)0xFF06             /**暂存读清零地址得数据,无实际用处***/
#define Encode1_Rlt   *(volatile unsigned int *)0xFF07
#define Encode2_Rlt   *(volatile unsigned int *)0xFF08
#define Encode3_Rlt   *(volatile unsigned int *)0xFF09 
#define Hand_Rlt      *(volatile unsigned int *)0xFF0A
#define Hand_CLRlt    *(volatile unsigned int *)0xFF0B
/****************************************************************************/

⌨️ 快捷键说明

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