📄 f2407regs.asm
字号:
_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 + -