⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 delay.a51

📁 基于USB接口的GPS驱动程序.gps后段接受以及输出,及usp驱动读写
💻 A51
字号:
;*********************************************************************************
; Module description:
;   provide delay functions  
;   It is written in ASM 
;
;
;Author : Yu Lu ,
;         luyu1974@gmail.com
;
;*********************************************************************************/

NAME   DELAY_MOD

PUBLIC DELAY_50US,DELAY_8US,DELAY_1MS,DELAY_25MS,DELAY_1S,DELAY_LY
       

USING 0  

SUB_DELAY  SEGMENT CODE
DT_DELAY   SEGMENT DATA OVERLAYABLE
	RSEG DT_DELAY
TIMER0: DS   1
TIMER1: DS   1
TIMER2: DS   1
	RSEG SUB_DELAY

;**********************************************************
; These are some delay subroutine;
; The time of delay is expressed in the name of subroutine.
;**********************************************************

DELAY_50US:
        
	MOV  TIMER0,#75;    #55 FOR 24MHZ, 22 FOR 11.0592MHZ
US50_1:
     	DJNZ TIMER0,US50_1
 	
	RET

DELAY_8US:
	
	MOV  TIMER0,#4  ;#10 FOR 24MHZ, 4 FOR 11.0592MHZ
US8_1:
	DJNZ TIMER0,US8_1
	
	RET

DELAY_1MS:
        MOV TIMER2, #20
MS1_1:
        LCALL DELAY_50US
        DJNZ  TIMER2,MS1_1
  	RET
	
DELAY_25MS:

	MOV  TIMER0,#45;  #93 FOR 24MHZ, 45 FOR 11.0592MHZ
MS25_1:
	MOV  TIMER1,#255
MS25_2:
	DJNZ TIMER1,MS25_2
	DJNZ TIMER0,MS25_1
	
	RET

DELAY_1S:
        MOV  TIMER2,#40
S1_1:
	LCALL DELAY_25MS
	DJNZ  TIMER2,S1_1
	RET

DELAY_LY:
        MOV TIMER2, #160
DELAY_LY1:
        LCALL DELAY_50US
        DJNZ  TIMER2,DELAY_LY1
  	RET

	END


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -