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

📄 main.lst

📁 我学习AVR的代码例子
💻 LST
📖 第 1 页 / 共 4 页
字号:
 265:main.c        **** 	if(c==0) c=10;
 971               	.LM122:
 972 0356 8091 0000 		lds r24,c
 973 035a 8823      		tst r24
 974 035c 19F4      		brne .L96
 975 035e 8AE0      		ldi r24,lo8(10)
 976 0360 8093 0000 		sts c,r24
 977               	.L96:
 266:main.c        **** 	SENDCOMB(0x1c);                        //Write address
 979               	.LM123:
 980 0364 8CE1      		ldi r24,lo8(28)
 981 0366 0E94 0000 		call SENDCOMB
 982               	.LBB2:
 267:main.c        **** 	SendByte(pgm_read_byte(S+a));                //write data
 984               	.LM124:
 985 036a 8091 0000 		lds r24,a
 986 036e E82F      		mov r30,r24
 987 0370 FF27      		clr r31
 988 0372 E050      		subi r30,lo8(-(S))
 989 0374 F040      		sbci r31,hi8(-(S))
 990               	/* #APP */
 991 0376 8491      		lpm r24, Z
 992               		
 993               	/* #NOAPP */
 994               	.LBE2:
 995 0378 0E94 0000 		call SendByte
 996               	.LBB3:
 268:main.c        **** 	SendByte(pgm_read_byte(S+LOBYTE(hours)));    //write data
 998               	.LM125:
 999 037c 8091 0000 		lds r24,hours
 1000 0380 9091 0000 		lds r25,(hours)+1
 1001 0384 E82F      		mov r30,r24
 1002 0386 FF27      		clr r31
 1003 0388 EF70      		andi r30,lo8(15)
 1004 038a F070      		andi r31,hi8(15)
 1005 038c E050      		subi r30,lo8(-(S))
 1006 038e F040      		sbci r31,hi8(-(S))
 1007               	/* #APP */
 1008 0390 8491      		lpm r24, Z
 1009               		
 1010               	/* #NOAPP */
 1011               	.LBE3:
 1012 0392 0E94 0000 		call SendByte
 1013               	.LBB4:
 269:main.c        **** 	SendByte(pgm_read_byte(S+b));  //write data
 1015               	.LM126:
 1016 0396 8091 0000 		lds r24,b
 1017 039a E82F      		mov r30,r24
 1018 039c FF27      		clr r31
 1019 039e E050      		subi r30,lo8(-(S))
 1020 03a0 F040      		sbci r31,hi8(-(S))
 1021               	/* #APP */
 1022 03a2 8491      		lpm r24, Z
 1023               		
 1024               	/* #NOAPP */
 1025               	.LBE4:
 1026 03a4 0E94 0000 		call SendByte
 1027               	.LBB5:
 270:main.c        **** 	SendByte(pgm_read_byte(S+LOBYTE(minutes)));  //write data
 1029               	.LM127:
 1030 03a8 8091 0000 		lds r24,minutes
 1031 03ac 9091 0000 		lds r25,(minutes)+1
 1032 03b0 E82F      		mov r30,r24
 1033 03b2 FF27      		clr r31
 1034 03b4 EF70      		andi r30,lo8(15)
 1035 03b6 F070      		andi r31,hi8(15)
 1036 03b8 E050      		subi r30,lo8(-(S))
 1037 03ba F040      		sbci r31,hi8(-(S))
 1038               	/* #APP */
 1039 03bc 8491      		lpm r24, Z
 1040               		
 1041               	/* #NOAPP */
 1042               	.LBE5:
 1043 03be 0E94 0000 		call SendByte
 1044               	.LBB6:
 271:main.c        **** 	SendByte(pgm_read_byte(S+c)); //write data
 1046               	.LM128:
 1047 03c2 8091 0000 		lds r24,c
 1048 03c6 E82F      		mov r30,r24
 1049 03c8 FF27      		clr r31
 1050 03ca E050      		subi r30,lo8(-(S))
 1051 03cc F040      		sbci r31,hi8(-(S))
 1052               	/* #APP */
 1053 03ce 8491      		lpm r24, Z
 1054               		
 1055               	/* #NOAPP */
 1056               	.LBE6:
 1057 03d0 0E94 0000 		call SendByte
 1058               	.LBB7:
 272:main.c        **** 	SendByte(pgm_read_byte(S+LOBYTE(senconds))); //write data
 1060               	.LM129:
 1061 03d4 8091 0000 		lds r24,senconds
 1062 03d8 E82F      		mov r30,r24
 1063 03da FF27      		clr r31
 1064 03dc EF70      		andi r30,lo8(15)
 1065 03de F070      		andi r31,hi8(15)
 1066 03e0 E050      		subi r30,lo8(-(S))
 1067 03e2 F040      		sbci r31,hi8(-(S))
 1068               	/* #APP */
 1069 03e4 8491      		lpm r24, Z
 1070               		
 1071               	/* #NOAPP */
 1072               	.LBE7:
 1073 03e6 0E94 0000 		call SendByte
 1074               	/* epilogue: frame size=0 */
 1075 03ea 0895      		ret
 1076               	/* epilogue end (size=1) */
 1077               	/* function disp size 135 (134) */
 1097               	.Lscope16:
 1099               	.global	__vector_8
 1101               	__vector_8:
 273:main.c        **** 	/*
 274:main.c        **** 	a=HIBYTE(month);
 275:main.c        **** 	b=HIBYTE(date);
 276:main.c        **** 	SENDCOMB(0x2c);       //Write address
 277:main.c        **** 	SendByte(pgm_read_byte(S+a));         //write data
 278:main.c        **** 	SendByte(pgm_read_byte(S+LOBYTE(month)));         //write data
 279:main.c        **** 	SendByte(pgm_read_byte(S+HIBYTE(date)));     //write data
 280:main.c        **** 	SendByte((pgm_read_byte(S+LOBYTE(date)));     //write data
 281:main.c        **** 	*/
 282:main.c        **** }
 283:main.c        **** 
 284:main.c        **** //#pragma interrupt_handler timer1_ovf:9
 285:main.c        **** //void timer1_ovf(void)                    //位闪动即修改
 286:main.c        **** SIGNAL(SIG_OVERFLOW1)
 287:main.c        **** {
 1103               	.LM130:
 1104               	/* prologue: frame size=0 */
 1105 03ec 1F92      		push __zero_reg__
 1106 03ee 0F92      		push __tmp_reg__
 1107 03f0 0FB6      		in __tmp_reg__,__SREG__
 1108 03f2 0F92      		push __tmp_reg__
 1109 03f4 1124      		clr __zero_reg__
 1110 03f6 2F93      		push r18
 1111 03f8 3F93      		push r19
 1112 03fa 4F93      		push r20
 1113 03fc 5F93      		push r21
 1114 03fe 6F93      		push r22
 1115 0400 7F93      		push r23
 1116 0402 8F93      		push r24
 1117 0404 9F93      		push r25
 1118 0406 AF93      		push r26
 1119 0408 BF93      		push r27
 1120 040a EF93      		push r30
 1121 040c FF93      		push r31
 1122               	/* prologue end (size=17) */
 288:main.c        **** 	TCNT1H=0xc2;
 1124               	.LM131:
 1125 040e 82EC      		ldi r24,lo8(-62)
 1126 0410 8DBD      		out 77-0x20,r24
 289:main.c        **** 	TCNT1L=0xf7;
 1128               	.LM132:
 1129 0412 87EF      		ldi r24,lo8(-9)
 1130 0414 8CBD      		out 76-0x20,r24
 290:main.c        **** 	TCCR1B=0x04;
 1132               	.LM133:
 1133 0416 84E0      		ldi r24,lo8(4)
 1134 0418 8EBD      		out 78-0x20,r24
 291:main.c        **** 	Gettime();
 1136               	.LM134:
 1137 041a 0E94 0000 		call Gettime
 292:main.c        **** 	disp();
 1139               	.LM135:
 1140 041e 0E94 0000 		call disp
 1141               	/* epilogue: frame size=0 */
 1142 0422 FF91      		pop r31
 1143 0424 EF91      		pop r30
 1144 0426 BF91      		pop r27
 1145 0428 AF91      		pop r26
 1146 042a 9F91      		pop r25
 1147 042c 8F91      		pop r24
 1148 042e 7F91      		pop r23
 1149 0430 6F91      		pop r22
 1150 0432 5F91      		pop r21
 1151 0434 4F91      		pop r20
 1152 0436 3F91      		pop r19
 1153 0438 2F91      		pop r18
 1154 043a 0F90      		pop __tmp_reg__
 1155 043c 0FBE      		out __SREG__,__tmp_reg__
 1156 043e 0F90      		pop __tmp_reg__
 1157 0440 1F90      		pop __zero_reg__
 1158 0442 1895      		reti
 1159               	/* epilogue end (size=17) */
 1160               	/* function __vector_8 size 44 (10) */
 1162               	.Lscope17:
 1164               	.global	start_t1
 1166               	start_t1:
 293:main.c        **** }
 294:main.c        **** void start_t1(void)
 295:main.c        **** {
 1168               	.LM136:
 1169               	/* prologue: frame size=0 */
 1170               	/* prologue end (size=0) */
 296:main.c        **** 	TCNT1H=0xc2;
 1172               	.LM137:
 1173 0444 82EC      		ldi r24,lo8(-62)
 1174 0446 8DBD      		out 77-0x20,r24
 297:main.c        **** 	TCNT1L=0xf7;              //设初值
 1176               	.LM138:
 1177 0448 87EF      		ldi r24,lo8(-9)
 1178 044a 8CBD      		out 76-0x20,r24
 298:main.c        **** 	TCCR1B=0X05;               //启动定时器1,采用1024分频
 1180               	.LM139:
 1181 044c 85E0      		ldi r24,lo8(5)
 1182 044e 8EBD      		out 78-0x20,r24
 299:main.c        **** 	TIMSK|=(1<<TOIE1);
 1184               	.LM140:
 1185 0450 89B7      		in r24,89-0x20
 1186 0452 8460      		ori r24,lo8(4)
 1187 0454 89BF      		out 89-0x20,r24
 300:main.c        **** 	sei();
 1189               	.LM141:
 1190               	/* #APP */
 1191 0456 7894      		sei
 1192               	/* #NOAPP */
 1193               	/* epilogue: frame size=0 */
 1194 0458 0895      		ret
 1195               	/* epilogue end (size=1) */
 1196               	/* function start_t1 size 12 (11) */
 1198               	.Lscope18:
 1200               	.global	main
 1202               	main:
 301:main.c        **** }
 302:main.c        **** int main(void)
 303:main.c        **** {
 1204               	.LM142:
 1205               	/* prologue: frame size=0 */
 1206 045a C0E0      		ldi r28,lo8(__stack - 0)
 1207 045c D0E0      		ldi r29,hi8(__stack - 0)
 1208 045e DEBF      		out __SP_H__,r29
 1209 0460 CDBF      		out __SP_L__,r28
 1210               	/* prologue end (size=4) */
 304:main.c        **** 	port_init();
 1212               	.LM143:
 1213 0462 0E94 0000 		call port_init
 305:main.c        **** 	disp_init();
 1215               	.LM144:
 1216 0466 0E94 0000 		call disp_init
 306:main.c        **** 	I2C_init();
 1218               	.LM145:
 1219 046a 0E94 0000 		call I2C_init
 307:main.c        **** 	time_init();
 1221               	.LM146:
 1222 046e 0E94 0000 		call time_init
 308:main.c        **** 	delay_ms(10);
 1224               	.LM147:
 1225 0472 8AE0      		ldi r24,lo8(10)
 1226 0474 90E0      		ldi r25,hi8(10)
 1227 0476 0E94 0000 		call delay_ms
 309:main.c        **** 	start_t1();
 1229               	.LM148:
 1230 047a 0E94 0000 		call start_t1
 1231               	.L100:
 310:main.c        **** 	while(1)
 311:main.c        **** 	{
 312:main.c        **** 		delay_ms(100);
 1233               	.LM149:
 1234 047e 84E6      		ldi r24,lo8(100)
 1235 0480 90E0      		ldi r25,hi8(100)
 1236 0482 0E94 0000 		call delay_ms
 1237 0486 FBCF      		rjmp .L100
 1238               	/* epilogue: frame size=0 */
 1239               	/* epilogue: noreturn */
 1240               	/* epilogue end (size=0) */
 1241               	/* function main size 23 (19) */
 1243               	.Lscope19:
 1244               		.comm hours,2,1
 1245               		.comm minutes,2,1
 1246               		.comm senconds,1,1
 1247               		.comm a,1,1
 1248               		.comm b,1,1
 1249               		.comm c,1,1
 1259               		.text
 1261               	Letext:
 1262               	/* File "main.c": code  611 = 0x0263 ( 523), prologues  38, epilogues  50 */
DEFINED SYMBOLS
                            *ABS*:00000000 main.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:96     .data:00000000 date
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:101    .data:00000002 month
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:107    .progmem.data:00000000 S
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:123    .text:00000000 port_init
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:156    .text:00000012 delay_us
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:180    .text:0000001c delay_ms
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:214    .text:00000038 Delay
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:267    .text:00000072 SendBit
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:338    .text:000000a4 Start_spi
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:378    .text:000000c2 SendByte
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:397    .text:000000ca SENDCOMA
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:427    .text:000000e4 SENDCOMB
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:457    .text:00000100 disp_init
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:515    .text:0000013e disp_off
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:537    .text:0000014c I2C_init
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:560    .text:00000154 i2c_Write
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:673    .text:000001d0 i2c_Read
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:826    .text:0000027a Gettime
                            *COM*:00000002 hours
                            *COM*:00000002 minutes
                            *COM*:00000001 senconds
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:882    .text:000002d8 time_init
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:921    .text:00000302 disp
                            *COM*:00000001 a
                            *COM*:00000001 b
                            *COM*:00000001 c
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:1101   .text:000003ec __vector_8
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:1166   .text:00000444 start_t1
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:1202   .text:0000045a main
C:\DOCUME~1\钱巍\LOCALS~1\Temp/cceiaaaa.s:1261   .text:00000488 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack

⌨️ 快捷键说明

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