📄 macro_fs9821.asm
字号:
;===========================================
; macro_FS9821.asm version 0.1
; User Define 8051 macor for FS9821 used
; Edit gavannis.hsu 2005/01/03
;===========================================
;--------------------------------
; Clear Carry
;--------------------------------
clrC macro
bcf Status,C
endm
;--------------------------------
; Set Carry
;--------------------------------
setC macro
bsf Status,C
endm
;--------------------------------
; Clear Zero
;--------------------------------
clrZ macro
bcf Status,Z
endm
;--------------------------------
; Set Zero
;--------------------------------
setZ macro
bsf Status,Z
endm
;--------------------------------
; Skip on Zero
;--------------------------------
jz macro
btfss Status,Z
endm
;--------------------------------
; Skip on Non Zero
;--------------------------------
jnz macro
btfsc Status,Z
endm
;--------------------------------
; Skip on Carry
;--------------------------------
jc macro
btfss Status,C
endm
;--------------------------------
; Skip on No Carry
;--------------------------------
jnc macro
btfsc Status,C
endm
;--------------------------------
; Negate File
;--------------------------------
negf macro f1
comf f1,1
incf f1,1
endm
;--------------------------------
; Branch
;--------------------------------
b macro k
goto k
endm
;--------------------------------
; Branch on Carry
;--------------------------------
bc macro k
jnc
goto k
endm
;--------------------------------
; Branch on No Carry
;--------------------------------
bnc macro k
jc
goto k
endm
;--------------------------------
; Branch on Zero
;--------------------------------
bz macro k
jnz
goto k
endm
;--------------------------------
; Branch on Non Zero
;--------------------------------
bnz macro k
jz
goto k
endm
;--------------------------------
; Move Number to File Register
;--------------------------------
movlf macro d1,f1
movlw d1
movwf f1
endm
;--------------------------------
; Move File to File Register
;--------------------------------
movff macro f1,f2
movfw f1
movwf f2
endm
movff2 macro f1,f2
movff f1,f2
movff f1+1,f2+1
endm
movff3 macro f1,f2
movff2 f1,f2
movff f1+2,f2+2
endm
movff4 macro f1,f2
movff3 f1,f2
movff f1+3,f2+3
endm
add_4b macro f1,f2
movfw f1
addwf f2,1
movfw f1+1
addwfc f2+1,1
movfw f1+2
addwfc f2+2,1
movfw f1+3
addwfc f2+3,1
endm
sub_4b macro f1,f2
movfw f2
subwf f1,1
movfw f2+1
subwfc f1+1,1
movfw f2+2
subwfc f1+2,1
movfw f2+3
subwfc f1+3,1
endm
rrf4b macro f1
rrf f1,1
rrf f1-1,1
rrf f1-2,1
rrf f1-3,1
endm
rlf4b macro f1
rlf f1,1
rlf f1+1,1
rlf f1+2,1
rlf f1+3,1
endm
Delay macro d1
movlw d1
call _s_Delay
endm
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -