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

📄 led-8-2.s

📁 16个单片机c语言实验程序
💻 S
📖 第 1 页 / 共 2 页
字号:
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a6+2
	lds R9,_a6+2+1
	lds R6,_a6
	lds R7,_a6+1
	ldi R20,160
	ldi R21,134
	ldi R22,1
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a5+2
	lds R9,_a5+2+1
	lds R6,_a5
	lds R7,_a5+1
	ldi R20,16
	ldi R21,39
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a4+2
	lds R9,_a4+2+1
	lds R6,_a4
	lds R7,_a4+1
	ldi R20,232
	ldi R21,3
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	ldi R20,100
	ldi R21,0
	ldi R22,0
	ldi R23,0
	st -y,R23
	st -y,R22
	st -y,R21
	st -y,R20
	movw R16,R2
	movw R18,R4
	xcall div32u
	sts _a3+1,R17
	sts _a3,R16
	sts _a3+2+1,R19
	sts _a3+2,R18
	.dbline 25
	lds R4,_a8+2
	lds R5,_a8+2+1
	lds R2,_a8
	lds R3,_a8+1
	ldi R20,128
	ldi R21,150
	ldi R22,152
	ldi R23,0
	st -y,R5
	st -y,R4
	st -y,R3
	st -y,R2
	movw R16,R20
	movw R18,R22
	xcall empy32u
	ldd R2,y+6
	ldd R3,y+7
	ldd R4,y+8
	ldd R5,y+9
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a7+2
	lds R9,_a7+2+1
	lds R6,_a7
	lds R7,_a7+1
	ldi R20,64
	ldi R21,66
	ldi R22,15
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a6+2
	lds R9,_a6+2+1
	lds R6,_a6
	lds R7,_a6+1
	ldi R20,160
	ldi R21,134
	ldi R22,1
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a5+2
	lds R9,_a5+2+1
	lds R6,_a5
	lds R7,_a5+1
	ldi R20,16
	ldi R21,39
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a4+2
	lds R9,_a4+2+1
	lds R6,_a4
	lds R7,_a4+1
	ldi R20,232
	ldi R21,3
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a3+2
	lds R9,_a3+2+1
	lds R6,_a3
	lds R7,_a3+1
	ldi R20,100
	ldi R21,0
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	ldi R20,10
	ldi R21,0
	ldi R22,0
	ldi R23,0
	st -y,R23
	st -y,R22
	st -y,R21
	st -y,R20
	movw R16,R2
	movw R18,R4
	xcall div32u
	sts _a2+1,R17
	sts _a2,R16
	sts _a2+2+1,R19
	sts _a2+2,R18
	.dbline 26
	lds R4,_a8+2
	lds R5,_a8+2+1
	lds R2,_a8
	lds R3,_a8+1
	ldi R20,128
	ldi R21,150
	ldi R22,152
	ldi R23,0
	st -y,R5
	st -y,R4
	st -y,R3
	st -y,R2
	movw R16,R20
	movw R18,R22
	xcall empy32u
	ldd R2,y+6
	ldd R3,y+7
	ldd R4,y+8
	ldd R5,y+9
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a7+2
	lds R9,_a7+2+1
	lds R6,_a7
	lds R7,_a7+1
	ldi R20,64
	ldi R21,66
	ldi R22,15
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a6+2
	lds R9,_a6+2+1
	lds R6,_a6
	lds R7,_a6+1
	ldi R20,160
	ldi R21,134
	ldi R22,1
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a5+2
	lds R9,_a5+2+1
	lds R6,_a5
	lds R7,_a5+1
	ldi R20,16
	ldi R21,39
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a4+2
	lds R9,_a4+2+1
	lds R6,_a4
	lds R7,_a4+1
	ldi R20,232
	ldi R21,3
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a3+2
	lds R9,_a3+2+1
	lds R6,_a3
	lds R7,_a3+1
	ldi R20,100
	ldi R21,0
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	lds R8,_a2+2
	lds R9,_a2+2+1
	lds R6,_a2
	lds R7,_a2+1
	ldi R20,10
	ldi R21,0
	ldi R22,0
	ldi R23,0
	st -y,R9
	st -y,R8
	st -y,R7
	st -y,R6
	movw R16,R20
	movw R18,R22
	xcall empy32u
	sub R2,R16
	sbc R3,R17
	sbc R4,R18
	sbc R5,R19
	sts _a1+1,R3
	sts _a1,R2
	sts _a1+2+1,R5
	sts _a1+2,R4
	.dbline -2
L27:
	.dbline 0 ; func end
	xcall pop_xgsetF00C
	adiw R28,4
	ret
	.dbsym l data 6 l
	.dbend
	.dbfunc e main _main fI
;             bb -> R10,R11
;             aa -> y+0
	.even
_main::
	sbiw R28,4
	.dbline -1
	.dbline 32
; 
; //主函数
; main()
; {
	.dbline 33
; unsigned  long aa=10000;
	ldi R24,16
	ldi R25,39
	ldi R26,0
	ldi R27,0
	std y+0,R24
	std y+1,R25
	std y+2,R26
	std y+3,R27
	.dbline 34
; uint bb=0;
	clr R10
	clr R11
	.dbline 35
; DDRA=0xff;      //初始化端口A
	ldi R24,255
	out 0x1a,R24
	.dbline 36
; PORTA=0xff;
	out 0x1b,R24
	xjmp L30
L29:
	.dbline 38
; while(1)
;      {
	.dbline 39
; 	  disa(aa);          //提取aa的各位
	ldd R16,y+0
	ldd R17,y+1
	ldd R18,y+2
	ldd R19,y+3
	xcall _disa
	.dbline 40
;       sendbyte(a1);//数码管1
	lds R16,_a1
	xcall _sendbyte
	.dbline 41
; 	  PORTA&=~(1<<ls138a);
	cbi 0x1b,7
	.dbline 42
; 	  PORTA&=~(1<<ls138b);
	cbi 0x1b,6
	.dbline 43
; 	  PORTA&=~(1<<ls138c);
	cbi 0x1b,5
	.dbline 44
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 45
; 	  sendbyte(a2);//数码管2
	lds R16,_a2
	xcall _sendbyte
	.dbline 46
; 	  PORTA|=(1<<ls138a);
	sbi 0x1b,7
	.dbline 47
; 	  PORTA&=~(1<<ls138b);
	cbi 0x1b,6
	.dbline 48
; 	  PORTA&=~(1<<ls138c);
	cbi 0x1b,5
	.dbline 49
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 50
; 	  sendbyte(a3);//数码管3
	lds R16,_a3
	xcall _sendbyte
	.dbline 51
; 	  PORTA&=~(1<<ls138a);
	cbi 0x1b,7
	.dbline 52
; 	  PORTA|=(1<<ls138b);
	sbi 0x1b,6
	.dbline 53
; 	  PORTA&=~(1<<ls138c);
	cbi 0x1b,5
	.dbline 54
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 55
; 	  sendbyte(a4);//数码管4
	lds R16,_a4
	xcall _sendbyte
	.dbline 56
; 	  PORTA|=(1<<ls138a);
	sbi 0x1b,7
	.dbline 57
; 	  PORTA|=(1<<ls138b);
	sbi 0x1b,6
	.dbline 58
; 	  PORTA&=~(1<<ls138c);
	cbi 0x1b,5
	.dbline 59
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 60
; 	  sendbyte(a5);//数码管5
	lds R16,_a5
	xcall _sendbyte
	.dbline 61
; 	  PORTA&=~(1<<ls138a);
	cbi 0x1b,7
	.dbline 62
; 	  PORTA&=~(1<<ls138b);
	cbi 0x1b,6
	.dbline 63
; 	  PORTA|=(1<<ls138c);
	sbi 0x1b,5
	.dbline 64
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 65
; 	  sendbyte(a6);//数码管6
	lds R16,_a6
	xcall _sendbyte
	.dbline 66
; 	  PORTA|=(1<<ls138a);
	sbi 0x1b,7
	.dbline 67
; 	  PORTA&=~(1<<ls138b);
	cbi 0x1b,6
	.dbline 68
; 	  PORTA|=(1<<ls138c);
	sbi 0x1b,5
	.dbline 69
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 70
; 	  sendbyte(a7);//数码管7
	lds R16,_a7
	xcall _sendbyte
	.dbline 71
; 	  PORTA&=~(1<<ls138a);
	cbi 0x1b,7
	.dbline 72
; 	  PORTA|=(1<<ls138b);
	sbi 0x1b,6
	.dbline 73
; 	  PORTA|=(1<<ls138c);
	sbi 0x1b,5
	.dbline 74
; 	  s_ms(600); 
	ldi R16,600
	ldi R17,2
	xcall _s_ms
	.dbline 75
; 	  sendbyte(a8);//数码管8
	lds R16,_a8
	xcall _sendbyte
	.dbline 76
; 	  PORTA|=(1<<ls138a);
	sbi 0x1b,7
	.dbline 77
; 	  PORTA|=(1<<ls138b);
	sbi 0x1b,6
	.dbline 78
; 	  PORTA|=(1<<ls138c);
	sbi 0x1b,5
	.dbline 79
; 	  aa++;
	ldi R24,1
	ldi R25,0
	ldi R26,0
	ldi R27,0
	ldd R2,y+0
	ldd R3,y+1
	ldd R4,y+2
	ldd R5,y+3
	add R2,R24
	adc R3,R25
	adc R4,R26
	adc R5,R27
	std y+0,R2
	std y+1,R3
	std y+2,R4
	std y+3,R5
	.dbline 80
; 	 }
L30:
	.dbline 37
	xjmp L29
X13:
	.dbline -2
L28:
	.dbline 0 ; func end
	adiw R28,4
	ret
	.dbsym r bb 10 i
	.dbsym l aa 0 l
	.dbend
	.area bss(ram, con, rel)
	.dbfile E:\16实验程序\数码管显示2\led-8-2.c
_a8::
	.blkb 4
	.dbsym e a8 _a8 l
_a7::
	.blkb 4
	.dbsym e a7 _a7 l
_a6::
	.blkb 4
	.dbsym e a6 _a6 l
_a5::
	.blkb 4
	.dbsym e a5 _a5 l
_a4::
	.blkb 4
	.dbsym e a4 _a4 l
_a3::
	.blkb 4
	.dbsym e a3 _a3 l
_a2::
	.blkb 4
	.dbsym e a2 _a2 l
_a1::
	.blkb 4
	.dbsym e a1 _a1 l
; }

⌨️ 快捷键说明

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