delay.s

来自「ICCAVR Rainguage counter program」· S 代码 · 共 72 行

S
72
字号
	.module delay.c
	.area text(rom, con, rel)
	.dbfile C:\RGauge\delay.c
	.dbfunc e delay_ms _delay_ms fV
;         outer1 -> R20,R21
;         outer2 -> R22,R23
;             ms -> R16,R17
	.even
_delay_ms::
	xcall push_gset2
	.dbline -1
	.dbline 3
; 
; 
; void delay_ms(unsigned short ms) {
	.dbline 5
; 	unsigned short outer1, outer2;
; 	outer1 = 200; 
	ldi R20,200
	ldi R21,0
	xjmp L3
L2:
	.dbline 6
; 	while (outer1) {
	.dbline 7
; 		outer2 = 1000;
	ldi R22,1000
	ldi R23,3
	xjmp L6
X0:
	.dbline 8
; 		while (outer2) {
L8:
	.dbline 9
	subi R16,1
	sbci R17,0
L9:
	.dbline 9
	cpi R16,0
	cpc R16,R17
	brne L8
X1:
	.dbline 10
	subi R22,1
	sbci R23,0
	.dbline 11
L6:
	.dbline 8
	cpi R22,0
	cpc R22,R23
	brne L9
X2:
	.dbline 12
	subi R20,1
	sbci R21,0
	.dbline 13
L3:
	.dbline 6
	cpi R20,0
	cpc R20,R21
	brne L2
X3:
	.dbline -2
L1:
	xcall pop_gset2
	.dbline 0 ; func end
	ret
	.dbsym r outer1 20 s
	.dbsym r outer2 22 s
	.dbsym r ms 16 s
	.dbend

⌨️ 快捷键说明

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