📄 main.asm
字号:
;ZY13DSP12BD CONTROL Digital LED
;Mr Li Xiao Bei
;Hu Bei Zhong You
;2004.4.16
;KEY
;======================== main.asm =========================
;
.mmregs
.def _c_int00
.include c54.inc
.ref c54init
.def Get_KeyValue
;数码管地址
Digital0 .set 0x0010
Digital1 .set 0x0011
Digital2 .set 0x0012
Digital3 .set 0x0013
Digital4 .set 0x0014
Digital5 .set 0x0015
Digital6 .set 0x0016
Digital7 .set 0x0017
;按键地址
Key .set 0x0001
.data
DATA: .word 80FCH,8060H,80DAh,80F2h,8066H,80B6H,80BEH,80E0H,80FEH ;显示段码数据
;设置按键偏移量
.bss key_p,1
.sect "progsys"
.align 0x10
_c_int00:
STM #0x0f80,SP
CALL c54init
LD #DATA ,DP
LOOP:
LD #DATA,A
ADD key_p,A
STLM A,AR1
PORTW *AR1,Digital7
CALL Delay
B LOOP
Delay:
STM #999,AR3 ;循环次数1000
LOOP1:
STM #9, AR2 ;循环次数10
LOOP2:
BANZ LOOP2,*AR2- ;如果AR2不等于0,AR2减1,再判断
BANZ LOOP1,*AR3- ;如果AR1不等于0,AR1减1,跳转到LOOP1
RET
**********ISR Get KeyValue*************
Get_KeyValue:
PSHM AL
PSHM AH
PSHM AG
PSHM AR2
PSHM AR3
*Read KeyValue
PORTR Key,@(key_p)
STM #0FFH,IFR
STM #0x0002,IMR
RSBX INTM
POPM AR3
POPM AR2
POPM AG
POPM AH
POPM AL
RET
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -