main.s

来自「AVR 单片机」· S 代码 · 共 58 行

S
58
字号
	.module Main.c
	.area text(rom, con, rel)
	.dbfile E:\__test\_Delay_nus_Count_uint_n--_ok\Main.c
	.dbfunc e Delay_nus_Count _Delay_nus_Count fV
;              n -> R16,R17
	.even
_Delay_nus_Count::
	.dbline -1
	.dbline 8
; #include <iom16v.h>    
; #include <macros.h> 
; 
; //通过计数的N us延时函数
; //--延时计算:t_delay = 4 * nt + 12t
; //--延时范围:n>=0, n<=255 (即12t - 1032t )  //8M时,是1.5us - 129us
; void Delay_nus_Count(unsigned int n)    //--0.5us左右 
; { 
	xjmp L3
L2:
	.dbline 10
;    while(n) 
;       n--;    
	subi R16,1
	sbci R17,0
L3:
	.dbline 9
	cpi R16,0
	cpc R16,R17
	brne L2
X0:
	.dbline -2
L1:
	.dbline 0 ; func end
	ret
	.dbsym r n 16 i
	.dbend
	.dbfunc e main _main fV
	.even
_main::
	.dbline -1
	.dbline 14
; } 
; 
; void main(void)
; {
	.dbline 15
;    Delay_nus_Count(10);
	ldi R16,10
	ldi R17,0
	xcall _Delay_nus_Count
	.dbline -2
L5:
	.dbline 0 ; func end
	ret
	.dbend
; }
; 

⌨️ 快捷键说明

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