📄 pll41dly.asm
字号:
;File: pll41dly.a51
;Author: Eckart Hartmann Date:15/10/2003
;Development progress: Pll814.df
;
;PllDly==========Software delay
;C Function prototype: char PllDly(uint uDlyMs);
;Description of Function: Causes software delay of uDlyMs milliseconds.
;User interface: Put delay in parameter1. Call PllDly.
; Returns with 1 (always).
;Robustness: This function assumes a crystal of 11.058MHz.
; Delay will be increased if normal interrupts occur during delay.
;Side effects: Overwrites a, p and iP2l.
;
NAME PLLDLY
$NOMOD51
$IC(..kei841.inc) ; Parameter passing registers for Keil .
$IC(..kei841.dat) ; SFR definition for Keil .
;
public _PllDly
?PR?_PllDly?PLLDLY SEGMENT CODE
RSEG ?PR?_PllDly?PLLDLY
_PllDly:
mov a,iP1l ;for(; rR7; rR7--)
jnz PlDCd ; {
PlDCh6: mov a,iP1h ; for(; rR6; rR6--)
jz PlDR ; { //High byte with low byte full scale.
dec iP1h
PlDCd: mov iP2li,#11 ; for(c5=11 ; c5; c5--)
LpC5: mov a,#250 ; {
djnz ACC,$ ; 4*250 cycles.
djnz iP2li,LpC5 ; }
djnz iP1l,PlDCd ; }
sjmp PlDCh6 ; }
PlDR: mov cP1l,#1 ;return(1); // Always.
ret
;
;Function End==========================================================Function End
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -