📄 main.lst
字号:
1002 041a 8F93 push r24
1003 041c 9F93 push r25
1004 /* prologue end (size=8) */
187:main.c **** make=1;
1006 .LM117:
1007 041e 21E0 ldi r18,lo8(1)
1008 0420 2093 0000 sts make,r18
188:main.c **** if((PIND&0x0c)==0x0c)return;
1010 .LM118:
1011 0424 80B3 in r24,48-0x20
1012 0426 9927 clr r25
1013 0428 8C70 andi r24,lo8(12)
1014 042a 9070 andi r25,hi8(12)
1015 042c 0C97 sbiw r24,12
1016 042e 59F0 breq .L102
189:main.c **** if(s_down){s_down=0;return;}
1018 .LM119:
1019 0430 8091 0000 lds r24,s_down
1020 0434 8823 tst r24
1021 0436 19F0 breq .L104
1022 0438 1092 0000 sts s_down,__zero_reg__
1023 043c 04C0 rjmp .L102
1024 .L104:
190:main.c **** s_up=1;
1026 .LM120:
1027 043e 2093 0000 sts s_up,r18
191:main.c **** int_=1;
1029 .LM121:
1030 0442 2093 0000 sts int_,r18
1031 .L102:
1032 /* epilogue: frame size=0 */
1033 0446 9F91 pop r25
1034 0448 8F91 pop r24
1035 044a 2F91 pop r18
1036 044c 0F90 pop __tmp_reg__
1037 044e 0FBE out __SREG__,__tmp_reg__
1038 0450 0F90 pop __tmp_reg__
1039 0452 1F90 pop __zero_reg__
1040 0454 1895 reti
1041 /* epilogue end (size=8) */
1042 /* function __vector_1 size 37 (21) */
1044 .Lscope12:
1046 .global __vector_2
1048 __vector_2:
192:main.c **** }
193:main.c **** SIGNAL(SIG_INTERRUPT1){
1050 .LM122:
1051 /* prologue: frame size=0 */
1052 0456 1F92 push __zero_reg__
1053 0458 0F92 push __tmp_reg__
1054 045a 0FB6 in __tmp_reg__,__SREG__
1055 045c 0F92 push __tmp_reg__
1056 045e 1124 clr __zero_reg__
1057 0460 2F93 push r18
1058 0462 8F93 push r24
1059 0464 9F93 push r25
1060 /* prologue end (size=8) */
194:main.c **** make=1;//有修改
1062 .LM123:
1063 0466 21E0 ldi r18,lo8(1)
1064 0468 2093 0000 sts make,r18
195:main.c **** if((PIND&0x0c)==0x0c)return;
1066 .LM124:
1067 046c 80B3 in r24,48-0x20
1068 046e 9927 clr r25
1069 0470 8C70 andi r24,lo8(12)
1070 0472 9070 andi r25,hi8(12)
1071 0474 0C97 sbiw r24,12
1072 0476 61F0 breq .L105
196:main.c **** if(s_up){s_up=0;return;}
1074 .LM125:
1075 0478 8091 0000 lds r24,s_up
1076 047c 8823 tst r24
1077 047e 19F0 breq .L107
1078 0480 1092 0000 sts s_up,__zero_reg__
1079 0484 05C0 rjmp .L105
1080 .L107:
197:main.c **** s_down=1;
1082 .LM126:
1083 0486 2093 0000 sts s_down,r18
198:main.c **** int_=2;
1085 .LM127:
1086 048a 82E0 ldi r24,lo8(2)
1087 048c 8093 0000 sts int_,r24
1088 .L105:
1089 /* epilogue: frame size=0 */
1090 0490 9F91 pop r25
1091 0492 8F91 pop r24
1092 0494 2F91 pop r18
1093 0496 0F90 pop __tmp_reg__
1094 0498 0FBE out __SREG__,__tmp_reg__
1095 049a 0F90 pop __tmp_reg__
1096 049c 1F90 pop __zero_reg__
1097 049e 1895 reti
1098 /* epilogue end (size=8) */
1099 /* function __vector_2 size 38 (22) */
1101 .Lscope13:
1103 .global daly
1105 daly:
199:main.c **** }
200:main.c ****
201:main.c **** void daly(void){
1107 .LM128:
1108 /* prologue: frame size=0 */
1109 /* prologue end (size=0) */
202:main.c **** uch x,y;
203:main.c **** for(x=100;x!=0;x--);
1111 .LM129:
1112 04a0 84E6 ldi r24,lo8(100)
1113 .L112:
1115 .LM130:
1116 04a2 8253 subi r24,lo8(-(-50))
1117 04a4 F1F7 brne .L112
204:main.c **** for(y=250;y!=0;y--)for(x=250;x!=0;x--);
1119 .LM131:
1120 04a6 9AEF ldi r25,lo8(-6)
1121 .L120:
1122 04a8 8AEF ldi r24,lo8(-6)
1123 .L119:
1124 04aa 8150 subi r24,lo8(-(-1))
1125 04ac F1F7 brne .L119
1126 04ae 9150 subi r25,lo8(-(-1))
1127 04b0 D9F7 brne .L120
1128 /* epilogue: frame size=0 */
1129 04b2 0895 ret
1130 /* epilogue end (size=1) */
1131 /* function daly size 13 (12) */
1137 .Lscope14:
1139 .global ini
1141 ini:
205:main.c **** }
206:main.c ****
207:main.c **** void ini(void){
1143 .LM132:
1144 /* prologue: frame size=0 */
1145 /* prologue end (size=0) */
208:main.c ****
209:main.c **** PORTD=0xff;
1147 .LM133:
1148 04b4 8FEF ldi r24,lo8(-1)
1149 04b6 82BB out 50-0x20,r24
210:main.c **** PORTB=0xff;
1151 .LM134:
1152 04b8 88BB out 56-0x20,r24
211:main.c **** DDRB=0xff;
1154 .LM135:
1155 04ba 87BB out 55-0x20,r24
212:main.c **** DDRC=0xff;
1157 .LM136:
1158 04bc 84BB out 52-0x20,r24
213:main.c **** DDRA=0x0;
1160 .LM137:
1161 04be 1ABA out 58-0x20,__zero_reg__
214:main.c **** DDRD=0xf0;
1163 .LM138:
1164 04c0 80EF ldi r24,lo8(-16)
1165 04c2 81BB out 49-0x20,r24
215:main.c **** daly();
1167 .LM139:
1168 04c4 0E94 0000 call daly
216:main.c **** cli();
1170 .LM140:
1171 /* #APP */
1172 04c8 F894 cli
217:main.c **** c_b(ASSR,AS2);
1174 .LM141:
1175 /* #NOAPP */
1176 04ca 82B5 in r24,66-0x20
1177 04cc 877F andi r24,lo8(-9)
1178 04ce 82BD out 66-0x20,r24
218:main.c **** s_b(MCUCSR,JTD);s_b(MCUCSR,JTD);//关闭JTAG
1180 .LM142:
1181 04d0 84B7 in r24,84-0x20
1182 04d2 8068 ori r24,lo8(-128)
1183 04d4 84BF out 84-0x20,r24
1184 04d6 84B7 in r24,84-0x20
1185 04d8 8068 ori r24,lo8(-128)
1186 04da 84BF out 84-0x20,r24
219:main.c **** ADMUX=0xC0;//选择第七通道换转
1188 .LM143:
1189 04dc 90EC ldi r25,lo8(-64)
1190 04de 97B9 out 39-0x20,r25
220:main.c **** ADCSRA=_BV(ADEN)|_BV(ADSC)|_BV(ADPS0)|_BV(ADSC)|_BV(ADIE);
1192 .LM144:
1193 04e0 89EC ldi r24,lo8(-55)
1194 04e2 86B9 out 38-0x20,r24
221:main.c ****
222:main.c **** GICR=0xc0;//设置中断
1196 .LM145:
1197 04e4 9BBF out 91-0x20,r25
223:main.c **** MCUCR=0x0f;
1199 .LM146:
1200 04e6 8FE0 ldi r24,lo8(15)
1201 04e8 85BF out 85-0x20,r24
224:main.c ****
225:main.c **** TCCR0=(1<<CS02)|(1<<CS00);
1203 .LM147:
1204 04ea 85E0 ldi r24,lo8(5)
1205 04ec 83BF out 83-0x20,r24
226:main.c **** TCCR1A=(1<<WGM11)|0xa0;
1207 .LM148:
1208 04ee 82EA ldi r24,lo8(-94)
1209 04f0 8FBD out 79-0x20,r24
227:main.c **** TCCR1B=(1<<WGM13)|(1<<CS10);//
1211 .LM149:
1212 04f2 81E1 ldi r24,lo8(17)
1213 04f4 8EBD out 78-0x20,r24
228:main.c **** ICR1=2000;
1215 .LM150:
1216 04f6 80ED ldi r24,lo8(2000)
1217 04f8 97E0 ldi r25,hi8(2000)
1218 04fa 97BD out (70)+1-0x20,r25
1219 04fc 86BD out 70-0x20,r24
229:main.c **** lcdini();
1221 .LM151:
1222 04fe 0E94 0000 call lcdini
230:main.c **** ch_sp=&xy_ch;
1224 .LM152:
1225 0502 80E0 ldi r24,lo8(xy_ch)
1226 0504 90E0 ldi r25,hi8(xy_ch)
1227 0506 9093 0000 sts (ch_sp)+1,r25
1228 050a 8093 0000 sts ch_sp,r24
231:main.c **** ch_x=0;
1230 .LM153:
1231 050e 1092 0000 sts ch_x,__zero_reg__
232:main.c **** xini(0);
1233 .LM154:
1234 0512 80E0 ldi r24,lo8(0)
1235 0514 0E94 0000 call xini
233:main.c **** dlay(80);
1237 .LM155:
1238 0518 80E5 ldi r24,lo8(80)
1239 051a 90E0 ldi r25,hi8(80)
1240 051c 0E94 0000 call dlay
234:main.c **** TCNT0=220;
1242 .LM156:
1243 0520 8CED ldi r24,lo8(-36)
1244 0522 82BF out 82-0x20,r24
235:main.c ****
236:main.c ****
237:main.c **** TIMSK=(1<<TOIE0);
1246 .LM157:
1247 0524 81E0 ldi r24,lo8(1)
1248 0526 89BF out 89-0x20,r24
238:main.c **** sei();
1250 .LM158:
1251 /* #APP */
1252 0528 7894 sei
1253 /* #NOAPP */
1254 /* epilogue: frame size=0 */
1255 052a 0895 ret
1256 /* epilogue end (size=1) */
1257 /* function ini size 62 (61) */
1259 .Lscope15:
1262 .global shu_f
1264 shu_f:
239:main.c ****
240:main.c **** }
241:main.c **** uch dip;//小数点
242:main.c **** uch shu_z;//符号
243:main.c **** uch _shu[6];
244:main.c **** void shu_f(int x){
1266 .LM159:
1267 /* prologue: frame size=0 */
1268 /* prologue end (size=0) */
1269 052c 9C01 movw r18,r24
245:main.c **** uint tep;
246:main.c **** if(x<0){shu_z=1;x=~x+1;}
1271 .LM160:
1272 052e 97FF sbrs r25,7
1273 0530 06C0 rjmp .L229
1275 .LM161:
1276 0532 81E0 ldi r24,lo8(1)
1277 0534 8093 0000 sts shu_z,r24
1278 0538 3095 com r19
1279 053a 2195 neg r18
1280 053c 3F4F sbci r19,lo8(-1)
1281 .L229:
247:main.c **** _shu[3]=x/1000;
1283 .LM162:
1284 053e C901 movw r24,r18
1285 0540 68EE ldi r22,lo8(1000)
1286 0542 73E0 ldi r23,hi8(1000)
1287 0544 0E94 0000 call __divmodhi4
1288 0548 6093 0000 sts _shu+3,r22
248:main.c **** tep=x%1000;
1290 .LM163:
1291 054c C901 movw r24,r18
1292 054e 68EE ldi r22,lo8(1000)
1293 0550 73E0 ldi r23,hi8(1000)
1294 0552 0E94 0000 call __divmodhi4
1295 0556 9C01 movw r18,r24
249:main.c **** _shu[2]=tep/100;
1297 .LM164:
1298 0558 64E6 ldi r22,lo8(100)
1299 055a 70E0 ldi r23,hi8(100)
1300 055c 0E94 0000 call __udivmodhi4
1301 0560 6093 0000 sts _shu+2,r22
250:main.c **** x=tep%100;
1303 .LM165:
1304 0564 C901 movw r24,r18
1305 0566 64E6 ldi r22,lo8(100)
1306 0568 70E0 ldi r23,hi8(100)
1307 056a 0E94 0000 call __udivmodhi4
1308 056e 9C01 movw r18,r24
251:main.c **** _shu[1]=x/10;
1310 .LM166:
1311 0570 6AE0 ldi r22,lo8(10)
1312 0572 70E0 ldi r23,hi8(10)
1313 0574 0E94 0000 call __divmodhi4
1314 0578 6093 0000 sts _shu+1,r22
252:main.c **** _shu[0]=x%10;
1316 .LM167:
1317 057c C901 movw r24,r18
1318 057e 6AE0 ldi r22,lo8(10)
1319 0580 70E0 ldi r23,hi8(10)
1320 0582 0E94 0000 call __divmodhi4
1321 0586 8093 0000 sts _shu,r24
1322 /* epilogue: frame size=0 */
1323 058a 0895 ret
1324 /* epilogue end (size=1) */
1325 /* function shu_f size 48 (47) */
1327 .Lscope16:
1331 .global di_OA
1333 di_OA:
253:main.c **** }
254:main.c **** void di_OA(int x,uch a){//下行显示电流
1335 .LM168:
1336 /* prologue: frame size=0 */
1337 058c FF92 push r15
1338 058e 0F93 push r16
1339 0590 1F93 push r17
1340 /* prologue end (size=3) */
1341 0592 162F mov r17,r22
255:main.c **** shu_f(x);
1343 .LM169:
1344 0594 0E94 0000 call shu_f
256:main.c **** xy_ch[a][0]='V';
1346 .LM170:
1347 0598 012F mov r16,r17
1348 059a 1127 clr r17
1349 059c 33E0 ldi r19,3
1350 059e 000F 1: lsl r16
1351 05a0 111F rol r17
1352 05a2 3A95 dec r19
1353 05a4 E1F7 brne 1b
1354 05a6 0050 subi r16,lo8(-(xy_ch))
1355 05a8 1040 sbci r17,hi8(-(xy_ch))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -