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

📄 f2407regs.asm

📁 ucosz在2407上的移植代码
💻 ASM
📖 第 1 页 / 共 2 页
字号:
_mbx4d		.set	07227h		
;邮包#5
_msgid5l	.set	07228h		
_msgid5h	.set	07229h		
_msgctrl5	.set	0722ah		
_mbx5a		.set	0722ch		
_mbx5b		.set	0722dh		
_mbx5c		.set	0722eh		
_mbx5d		.set	0722fh		
;通用定时器 -- 事件管理器a (eva)
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _gptcona	
	.def _t1cnt		
	.def _t1cmpr		
	.def _t1pr		
	.def _t1con		
	.def _t2cnt		
	.def _t2cmpr		
	.def _t2pr		
	.def _t2con		
_gptcona	.set	7400h		;通用定时控制寄存器
_t1cnt		.set	7401h		;通用定时器 1 计数寄存器
_t1cmpr		.set	7402h		;通用定时器 1 比较寄存器
_t1pr		.set	7403h		;通用定时器 1 周期寄存器
_t1con		.set	7404h		;通用定时器 1 控制寄存器
_t2cnt		.set	7405h		;通用定时器 2 计数寄存器
_t2cmpr		.set	7406h		;通用定时器 2 比较寄存器
_t2pr		.set	7407h		;通用定时器 2 周期寄存器
_t2con		.set	7408h		;通用定时器 2 控制寄存器
;full & simple compare unit registers --事件管理器a (eva)
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _comcona	
	.def _actra		
	.def _dbtcona	
	.def _cmpr1		
	.def _cmpr2		
	.def _cmpr3		
_comcona	.set	7411h		;比较控制寄存器 a
_actra		.set	7413h		;全比较动作控制寄存器 a
_dbtcona	.set	7415h		;死区时间控制寄存器 a
_cmpr1		.set	7417h		;全比较单元 1 比较寄存器
_cmpr2		.set	7418h		;全比较单元 2 比较寄存器
_cmpr3		.set	7419h		;全比较单元 3 比较寄存器
;捕捉和正交编码寄存器事件管理器(eva)
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _capcona	
	.def _capfifoa	
	.def _cap1fifo	
	.def _cap2fifo	
	.def _cap3fifo	
	.def _cap1fbot			
	.def _cap2fbot			
	.def _cap3fbot			
_capcona	.set	7420h		;捕捉控制寄存器 a
_capfifoa	.set	7422h		;捕捉fifo 状态寄存器 a
_cap1fifo	.set	7423h		;捕捉 1 二级 fifo 寄存器
_cap2fifo	.set	7424h		;捕捉 2 二级 fifo 寄存器
_cap3fifo	.set	7425h		;捕捉 3 二级 fifo 寄存器
_cap1fbot	.set	7427h		
_cap2fbot	.set	7428h		
_cap3fbot	.set	7429h		
;事件管理器 (eva) 中断控制寄存器
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _evaimra	
	.def _evaimrb	
	.def _evaimrc	
	.def _evaifra	
	.def _evaifrb	
	.def _evaifrc	
_evaimra	.set	742ch		;事件管理器中断屏蔽寄存器 a
_evaimrb	.set	742dh		;事件管理器中断屏蔽寄存器 b
_evaimrc	.set	742eh		;事件管理器中断屏蔽寄存器 c
_evaifra	.set	742fh		;事件管理器中断标志寄存器 a
_evaifrb	.set	7430h		;事件管理器中断标志寄存器 b
_evaifrc	.set	7431h		;事件管理器中断标志寄存器 c
;通用(gp)定时器配置控制寄存器--evb
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _gptconb				
	.def _t3cnt					
	.def _t3cmpr					
	.def _t3pr					
	.def _t3con					
	.def _t4cnt					
	.def _t4cmpr					
	.def _t4pr				
	.def _t4con					
_gptconb	.set	7500h			
_t3cnt		.set	7501h			
_t3cmpr		.set	7502h			
_t3pr		.set	7503h			
_t3con		.set	7504h			
_t4cnt		.set	7505h			
_t4cmpr		.set	7506h			
_t4pr		.set	7507h			
_t4con		.set	7508h			
;比较单元寄存器--evb
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _comconb				
	.def _actrb					
	.def _dbtconb				
	.def _cmpr4					
	.def _cmpr5					
	.def _cmpr6				
_comconb	.set	07511h			
_actrb		.set	07513h			
_dbtconb	.set	07515h			
_cmpr4		.set	07517h			
_cmpr5		.set	07518h			
_cmpr6		.set	07519h			
;捕捉单元寄存器--evb
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _capconb				
	.def _capfifob				
	.def _cap4fifo				
	.def _cap5fifo				
	.def _cap6fifo				
	.def _cap4fbot				
	.def _cap5fbot				
	.def _cap6fbot				
_capconb	.set	7520h			
_capfifob	.set	7522h			
_cap4fifo	.set	7523h			
_cap5fifo	.set	7524h			
_cap6fifo	.set	7525h			
_cap4fbot	.set	7527h			
_cap5fbot	.set	7528h			
_cap6fbot	.set	7529h			
;事件管理器 (evb) 中断控制寄存器
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _evbimra	
	.def _evbimrb	
	.def _evbimrc	
	.def _evbifra	
	.def _evbifrb	
	.def _evbifrc	
_evbimra	.set	752ch		;事件管理器中断屏蔽寄存器 a
_evbimrb	.set	752dh		;事件管理器中断屏蔽寄存器 b
_evbimrc	.set	752eh		;事件管理器中断屏蔽寄存器 c
_evbifra	.set	752fh		;事件管理器中断标志寄存器 a
_evbifrb	.set	7530h		;事件管理器中断标志寄存器 b
_evbifrc	.set	7531h		;事件管理器中断标志寄存器 c
;程序存储器空间 --flash 寄存器
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;pmpc		.set	0h		;flash 段控制寄存器
;ctrl		.set	01h		
;waddr		.set	2h		;flash 写地址寄存器
;wdata		.set	3h		;flash 写数据寄存器
;tcr		.set	4h		
;enab		.set	5h		
;setc		.set	6h		
;i/o 存储空间
	.def fcmr		
fcmr		.set	0ff0fh		
;等待状态产生寄存器 (映射到 i/o 空间)
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def wsgr		
wsgr		.set	0ffffh		;等待状态产生寄存器
;数据存储器块地址
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def _b0_saddr	
	.def _b0_eaddr	
	.def _b1_saddr	
	.def _b1_eaddr	
	.def _b2_saddr	
	.def _b2_eaddr	
	.def _xdata_saddr	
	.def _xdata_eaddr	
_b0_saddr	.set	00200h		;块 b0 开始地址
_b0_eaddr	.set	002ffh		;块 b0 结束地址
_b1_saddr	.set	00400h		;块 b1 开始地址
_b1_eaddr	.set	004ffh		;块 b1 结束地址
_b2_saddr	.set	00060h		;块 b2 开始地址
_b2_eaddr	.set	0007fh		;块 b2 结束地址
_xdata_saddr	.set	08000h		;外部数据空间开始地址
_xdata_eaddr	.set  	0ffffh		;外部数据空间结束地址
;经常使用的数据页
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dp_b2      	.set 	0		;页 0 数据空间
dp_b01		.set	4		;页 4  b0(200h/80h)	
dp_b02		.set	5		;页 5  b0(280h/80h)	
dp_b11		.set	6		;页 6  b1(300h/80h)	
dp_b12		.set	7		;页 7  ad(380h/80h)	
dp_saram1	.set	16		;页 1  saram(800h/80h)
dp_saram2	.set	26		;页 2  saram(0d00h/80h)
dp_saram3	.set	18		;页 3  saram(900h/80h)
dp_saram4	.set	19		;页 4  saram(980h/80h)
dp_pf1    	.set 	224		;页 1  外设帧文件 (7000h/80h)(0xe0)
dp_pf2    	.set 	225		;页 2  外设帧文件  (7080h/80h)(0xe1)
dp_pf3    	.set 	226		;页 3  外设帧文件  (7100h/80h)(0xe2)
dp_pf4    	.set 	227		;页 4  外设帧文件(7080h/80h)(0xe3)
dp_pf5    	.set 	228		;页 5  外设帧文件(7200h/80h)(0xe4)
dp_eva		.set	232		;页 0 事件管理器-eva 文件 (7400h/80h)(0xe8)
dp_evb		.set	234		;页 0 事件管理器-evb 文件 (7500h/80h)(0xe9)
;位测试指令的位代码(bit)
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def bit15
	.def bit14
	.def bit13
	.def bit12
	.def bit11
	.def bit10
	.def bit9
	.def bit8
	.def bit7
	.def bit6
	.def bit5
	.def bit4
	.def bit3
	.def bit2
	.def bit1
	.def bit0
bit15		.set	0000h		;位代码15
bit14		.set	0001h		;位代码14
bit13		.set	0002h		;位代码13
bit12		.set	0003h		;位代码12
bit11		.set	0004h		;位代码11
bit10		.set	0005h		;位代码10
bit9		.set	0006h		;位代码9
bit8		.set	0007h		;位代码8
bit7		.set	0008h		;位代码7
bit6		.set	0009h		;位代码6
bit5		.set	000ah		;位代码5
bit4		.set	000bh		;位代码4
bit3		.set	000ch		;位代码3
bit2		.set	000dh		;位代码2
bit1		.set	000eh		;位代码1
bit0		.set	000fh		;位代码 0
;用 sbit0 和 sbit1 宏屏蔽位
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	.def b15_msk
	.def b14_msk
	.def b13_msk
	.def b12_msk
	.def b11_msk
	.def b10_msk
	.def b9_msk
	.def b8_msk
	.def b7_msk
	.def b6_msk
	.def b5_msk
	.def b4_msk
	.def b3_msk
	.def b2_msk
	.def b1_msk
	.def b0_msk
b15_msk 	.set	8000h		;位屏蔽15
b14_msk 	.set	4000h		;位屏蔽 14
b13_msk 	.set	2000h		;位屏蔽 13
b12_msk 	.set	1000h		;位屏蔽12
b11_msk 	.set	0800h		;位屏蔽11
b10_msk 	.set	0400h		;位屏蔽 10
b9_msk		.set	0200h		;位屏蔽 9
b8_msk		.set	0100h		;位屏蔽 8
b7_msk		.set	0080h		;位屏蔽 7
b6_msk		.set	0040h		;位屏蔽 6
b5_msk		.set	0020h		;位屏蔽 5
b4_msk		.set	0010h		;位屏蔽 4
b3_msk		.set	0008h		;位屏蔽3
b2_msk		.set	0004h		;位屏蔽 2
b1_msk		.set	0002h		;位屏蔽 1
b0_msk		.set	0001h		;位屏蔽 0
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;宏定义
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sbit0	.macro	dma, mask	;清位宏定义
	lacc dma				
	and	#(0ffffh-mask)		
	sacl dma				
	.endm
sbit1	.macro	dma, mask	;置位宏定义
	lacc dma
	or #(mask)
	sacl dma
	.endm
kick_dog	.macro			;程序监视器复位宏定义
	ldp	#00e0h		;dp→7000h~707fh
	splk #05555h,_wdkey	;wdcntr由下一步复位被使能
	splk #0aaaah,_wdkey	;wdcntr 被复位
	.endm
delay_s .macro	delay_value	;延时 = 0.05 μs × 延时计数
	rpt #delay_value
	nop
	.endm
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;以下为用户自行定义的变量
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 

⌨️ 快捷键说明

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