📄 delays.asm
字号:
;------------------------------------------------------------------------------------------------------
;Name :Delays
;------------------------------------------------------------------------------------------------------
.cseg
.org SegmentDelays
;------------------------------------------------------------------------------------------------------
WaitOneInterrupt: ;Return when next interrupt will finish
wdr
sbrs ProgramFlagRegister,InterruptFlag
rjmp WaitOneInterrupt
andi ProgramFlagRegister,ClrInterruptFlag
ret
;------------------------------------------------------------------------------------------------------
Delay100usec: ;General x100 usec subroutine
ldi DelayRegisterB,_100_USEC
Delay100usecInLoop:
wdr
dec DelayRegisterB
brne Delay100usecInLoop
ret
;------------------------------------------------------------------------------------------------------
Delaymsec: ;General x msec subroutine
mov DelayRegisterA,TempRegister
DelaymsecInLoop:
rcall Delay100usec
dec DelayRegisterA
brne DelaymsecInLoop
ret
;------------------------------------------------------------------------------------------------------
Delaysec: ;General x sec subroutine
mov DelayRegisterC,TempRegisterB
DelaysecInLoop:
rcall Delaymsec
dec DelayRegisterC
brne DelaysecInLoop
ret
;------------------------------------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -