📄 delay.asm
字号:
;延时子程序 delay.asm
;===============================================
.global ms_delay ,us_delay,t_delay1,t_delay2
ms_delay:
stm #1444h,ar4 ;1ms=4(cycles)x5000x0.05us 1388h=5000d(f=10MHz)
ms_loop:
banz ms_loop,*ar4-
banz ms_delay,*ar3-
ret
;===============================================
us_delay:
;stm #184h,ar4 ;1us=4(cycles)x5x0.05us (5h=5d) (f=10MHz)
stm #4h,ar4
us_loop:
banz us_loop,*ar4- ;1 个指令周期 = 0.05uS=1*1/20us(when f=20MHz=10MHzx2)
banz us_delay,*ar3- ;banz when TRUE 4 cycles
nop
ret ; FALSE 2 cycles
;stm 2 cycles
;0f9h=>249d
;270fh=>9999d
;===============================================
t_delay1:
nop
nop
nop
nop
nop
ret
t_delay2:
nop
nop
ret
;===============================================
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -