📄 main.lst
字号:
02EA 8053 LDD R5,Z+3
02EB 925A ST R5,-Y
02EC 924A ST R4,-Y
02ED 923A ST R3,-Y
02EE 922A ST R2,-Y
02EF EB00 LDI R16,0xB0
02F0 E010 LDI R17,0
02F1 940E0948 CALL lpm32
02F3 933A ST R19,-Y
02F4 932A ST R18,-Y
02F5 931A ST R17,-Y
02F6 930A ST R16,-Y
02F7 940E0A92 CALL cmp32f
02F9 F0D4 BLT 0x0314
02FA 01FE MOVW R30,R28
02FB 8020 LDD R2,Z+0
02FC 8031 LDD R3,Z+1
02FD 8042 LDD R4,Z+2
02FE 8053 LDD R5,Z+3
02FF 925A ST R5,-Y
0300 924A ST R4,-Y
0301 923A ST R3,-Y
0302 922A ST R2,-Y
0303 EB00 LDI R16,0xB0
0304 E010 LDI R17,0
0305 940E0948 CALL lpm32
0307 933A ST R19,-Y
0308 932A ST R18,-Y
0309 931A ST R17,-Y
030A 930A ST R16,-Y
030B 940E09DF CALL sub32f
030D 940E0962 CALL fp2int
030F 01C8 MOVW R24,R16
0310 5080 SUBI R24,0
0311 4890 SBCI R25,0x80
0312 015C MOVW R10,R24
0313 C008 RJMP 0x031C
0314 01FE MOVW R30,R28
0315 8100 LDD R16,Z+0
0316 8111 LDD R17,Z+1
0317 8122 LDD R18,Z+2
0318 8133 LDD R19,Z+3
0319 940E0962 CALL fp2int
031B 0158 MOVW R10,R16
031C 2D4A MOV R20,R10
(0182) display_one(7,temp);
031D 2F24 MOV R18,R20
031E E007 LDI R16,7
031F DDB3 RCALL _display_one
(0183) led_port &= 0x7F; //点亮对应小数点
0320 B38B IN R24,0x1B
0321 778F ANDI R24,0x7F
0322 BB8B OUT 0x1B,R24
(0184) delay_ms(6);
0323 E006 LDI R16,6
0324 E010 LDI R17,0
0325 DD94 RCALL _delay_ms
(0185) led_contrl_port |= (1<<7);
0326 9A97 SBI 0x12,7
(0186) //第一位小数
(0187) temp2=(data*10);
0327 EB04 LDI R16,0xB4
0328 E010 LDI R17,0
0329 940E0948 CALL lpm32
032B 933A ST R19,-Y
032C 932A ST R18,-Y
032D 931A ST R17,-Y
032E 930A ST R16,-Y
032F 01FE MOVW R30,R28
0330 8C22 LDD R2,Z+26
0331 8C33 LDD R3,Z+27
0332 8C44 LDD R4,Z+28
0333 8C55 LDD R5,Z+29
0334 925A ST R5,-Y
0335 924A ST R4,-Y
0336 923A ST R3,-Y
0337 922A ST R2,-Y
0338 940E0AC6 CALL empy32f
033A 01FE MOVW R30,R28
033B 8304 STD Z+4,R16
033C 8315 STD Z+5,R17
033D 8326 STD Z+6,R18
033E 8337 STD Z+7,R19
033F 01FE MOVW R30,R28
0340 8024 LDD R2,Z+4
0341 8035 LDD R3,Z+5
0342 8046 LDD R4,Z+6
0343 8057 LDD R5,Z+7
0344 925A ST R5,-Y
0345 924A ST R4,-Y
0346 923A ST R3,-Y
0347 922A ST R2,-Y
0348 EB00 LDI R16,0xB0
0349 E010 LDI R17,0
034A 940E0948 CALL lpm32
034C 933A ST R19,-Y
034D 932A ST R18,-Y
034E 931A ST R17,-Y
034F 930A ST R16,-Y
0350 940E0A92 CALL cmp32f
0352 F0D4 BLT 0x036D
0353 01FE MOVW R30,R28
0354 8024 LDD R2,Z+4
0355 8035 LDD R3,Z+5
0356 8046 LDD R4,Z+6
0357 8057 LDD R5,Z+7
0358 925A ST R5,-Y
0359 924A ST R4,-Y
035A 923A ST R3,-Y
035B 922A ST R2,-Y
035C EB00 LDI R16,0xB0
035D E010 LDI R17,0
035E 940E0948 CALL lpm32
0360 933A ST R19,-Y
0361 932A ST R18,-Y
0362 931A ST R17,-Y
0363 930A ST R16,-Y
0364 940E09DF CALL sub32f
0366 940E0962 CALL fp2int
0368 01C8 MOVW R24,R16
0369 5080 SUBI R24,0
036A 4890 SBCI R25,0x80
036B 015C MOVW R10,R24
036C C008 RJMP 0x0375
036D 01FE MOVW R30,R28
036E 8104 LDD R16,Z+4
036F 8115 LDD R17,Z+5
0370 8126 LDD R18,Z+6
0371 8137 LDD R19,Z+7
0372 940E0962 CALL fp2int
0374 0158 MOVW R10,R16
0375 01B5 MOVW R22,R10
(0188) temp=temp2%10; // 1.234*10%10 = 2
0376 E02A LDI R18,0xA
0377 E030 LDI R19,0
0378 018B MOVW R16,R22
0379 940E08FE CALL mod16u
037B 2F40 MOV R20,R16
(0189) display_one(6,temp);
037C 2F24 MOV R18,R20
037D E006 LDI R16,6
037E DD54 RCALL _display_one
(0190) delay_ms(6);
037F E006 LDI R16,6
0380 E010 LDI R17,0
0381 DD38 RCALL _delay_ms
(0191) led_contrl_port |= (1<<6);
0382 9A96 SBI 0x12,6
(0192) //第二位小数
(0193) temp2=(data*100);
0383 EA0C LDI R16,0xAC
0384 E010 LDI R17,0
0385 940E0948 CALL lpm32
0387 933A ST R19,-Y
0388 932A ST R18,-Y
0389 931A ST R17,-Y
038A 930A ST R16,-Y
038B 01FE MOVW R30,R28
038C 8C22 LDD R2,Z+26
038D 8C33 LDD R3,Z+27
038E 8C44 LDD R4,Z+28
038F 8C55 LDD R5,Z+29
0390 925A ST R5,-Y
0391 924A ST R4,-Y
0392 923A ST R3,-Y
0393 922A ST R2,-Y
0394 940E0AC6 CALL empy32f
0396 01FE MOVW R30,R28
0397 8700 STD Z+8,R16
0398 8711 STD Z+9,R17
0399 8722 STD Z+10,R18
039A 8733 STD Z+11,R19
039B 01FE MOVW R30,R28
039C 8420 LDD R2,Z+8
039D 8431 LDD R3,Z+9
039E 8442 LDD R4,Z+10
039F 8453 LDD R5,Z+11
03A0 925A ST R5,-Y
03A1 924A ST R4,-Y
03A2 923A ST R3,-Y
03A3 922A ST R2,-Y
03A4 EB00 LDI R16,0xB0
03A5 E010 LDI R17,0
03A6 940E0948 CALL lpm32
03A8 933A ST R19,-Y
03A9 932A ST R18,-Y
03AA 931A ST R17,-Y
03AB 930A ST R16,-Y
03AC 940E0A92 CALL cmp32f
03AE F0D4 BLT 0x03C9
03AF 01FE MOVW R30,R28
03B0 8420 LDD R2,Z+8
03B1 8431 LDD R3,Z+9
03B2 8442 LDD R4,Z+10
03B3 8453 LDD R5,Z+11
03B4 925A ST R5,-Y
03B5 924A ST R4,-Y
03B6 923A ST R3,-Y
03B7 922A ST R2,-Y
03B8 EB00 LDI R16,0xB0
03B9 E010 LDI R17,0
03BA 940E0948 CALL lpm32
03BC 933A ST R19,-Y
03BD 932A ST R18,-Y
03BE 931A ST R17,-Y
03BF 930A ST R16,-Y
03C0 940E09DF CALL sub32f
03C2 940E0962 CALL fp2int
03C4 01C8 MOVW R24,R16
03C5 5080 SUBI R24,0
03C6 4890 SBCI R25,0x80
03C7 015C MOVW R10,R24
03C8 C008 RJMP 0x03D1
03C9 01FE MOVW R30,R28
03CA 8500 LDD R16,Z+8
03CB 8511 LDD R17,Z+9
03CC 8522 LDD R18,Z+10
03CD 8533 LDD R19,Z+11
03CE 940E0962 CALL fp2int
03D0 0158 MOVW R10,R16
03D1 01B5 MOVW R22,R10
(0194) temp=temp2%10; // 1.234*100%10 = 3
03D2 E02A LDI R18,0xA
03D3 E030 LDI R19,0
03D4 018B MOVW R16,R22
03D5 940E08FE CALL mod16u
03D7 2F40 MOV R20,R16
(0195) display_one(5,temp);
03D8 2F24 MOV R18,R20
03D9 E005 LDI R16,5
03DA DCF8 RCALL _display_one
(0196) delay_ms(6);
03DB E006 LDI R16,6
03DC E010 LDI R17,0
03DD DCDC RCALL _delay_ms
(0197) led_contrl_port |= (1<<5);
03DE 9A95 SBI 0x12,5
(0198) //第三位小数
(0199) temp2=(data*1000);
03DF EC00 LDI R16,0xC0
03E0 E010 LDI R17,0
03E1 940E0948 CALL lpm32
03E3 933A ST R19,-Y
03E4 932A ST R18,-Y
03E5 931A ST R17,-Y
03E6 930A ST R16,-Y
03E7 01FE MOVW R30,R28
03E8 8C22 LDD R2,Z+26
03E9 8C33 LDD R3,Z+27
03EA 8C44 LDD R4,Z+28
03EB 8C55 LDD R5,Z+29
03EC 925A ST R5,-Y
03ED 924A ST R4,-Y
03EE 923A ST R3,-Y
03EF 922A ST R2,-Y
03F0 940E0AC6 CALL empy32f
03F2 01FE MOVW R30,R28
03F3 8704 STD Z+12,R16
03F4 8715 STD Z+13,R17
03F5 8726 STD Z+14,R18
03F6 8737 STD Z+15,R19
03F7 01FE MOVW R30,R28
03F8 8424 LDD R2,Z+12
03F9 8435 LDD R3,Z+13
03FA 8446 LDD R4,Z+14
03FB 8457 LDD R5,Z+15
03FC 925A ST R5,-Y
03FD 924A ST R4,-Y
03FE 923A ST R3,-Y
03FF 922A ST R2,-Y
0400 EB00 LDI R16,0xB0
0401 E010 LDI R17,0
0402 940E0948 CALL lpm32
0404 933A ST R19,-Y
0405 932A ST R18,-Y
0406 931A ST R17,-Y
0407 930A ST R16,-Y
0408 940E0A92 CALL cmp32f
040A F0D4 BLT 0x0425
040B 01FE MOVW R30,R28
040C 8424 LDD R2,Z+12
040D 8435 LDD R3,Z+13
040E 8446 LDD R4,Z+14
040F 8457 LDD R5,Z+15
0410 925A ST R5,-Y
0411 924A ST R4,-Y
0412 923A ST R3,-Y
0413 922A ST R2,-Y
0414 EB00 LDI R16,0xB0
0415 E010 LDI R17,0
0416 940E0948 CALL lpm32
0418 933A ST R19,-Y
0419 932A ST R18,-Y
041A 931A ST R17,-Y
041B 930A ST R16,-Y
041C 940E09DF CALL sub32f
041E 940E0962 CALL fp2int
0420 01C8 MOVW R24,R16
0421 5080 SUBI R24,0
0422 4890 SBCI R25,0x80
0423 015C MOVW R10,R24
0424 C008 RJMP 0x042D
0425 01FE MOVW R30,R28
0426 8504 LDD R16,Z+12
0427 8515 LDD R17,Z+13
0428 8526 LDD R18,Z+14
0429 8537 LDD R19,Z+15
042A 940E0962 CALL fp2int
042C 0158 MOVW R10,R16
042D 01B5 MOVW R22,R10
(0200) temp=temp2%10; // 1.234*1000%10 = 4
042E E02A LDI R18,0xA
042F E030 LDI R19,0
0430 018B MOVW R16,R22
0431 940E08FE CALL mod16u
0433 2F40 MOV R20,R16
(0201) display_one(4,temp);
0434 2F24 MOV R18,R20
0435 E004 LDI R16,4
0436 DC9C RCALL _display_one
(0202) delay_ms(6);
0437 E006 LDI R16,6
0438 E010 LDI R17,0
0439 DC80 RCALL _delay_ms
(0203) led_contrl_port |= (1<<4);
043A 9A94 SBI 0x12,4
(0204) }
043B C2B3 RJMP 0x06EF
(0205) else if(data<100) // 例如12.34
043C 01FE MOVW R30,R28
043D 8826 LDD R2,Z+22
043E 8837 LDD R3,Z+23
043F 8C40 LDD R4,Z+24
0440 8C51 LDD R5,Z+25
0441 925A ST R5,-Y
0442 924A ST R4,-Y
0443 923A ST R3,-Y
0444 922A ST R2,-Y
0445 EA0C LDI R16,0xAC
0446 E010 LDI R17,0
0447 940E0948 CALL lpm32
0449 933A ST R19,-Y
044A 932A ST R18,-Y
044B 931A ST R17,-Y
044C 930A ST R16,-Y
044D 940E0A92 CALL cmp32f
044F F00C BLT 0x0451
0450 C144 RJMP 0x0595
(0206) {
(0207) temp2=data;
0451 01FE MOVW R30,R28
0452 8826 LDD R2,Z+22
0453 8837 LDD R3,Z+23
0454 8C40 LDD R4,Z+24
0455 8C51 LDD R5,Z+25
0456 925A ST R5,-Y
0457 924A ST R4,-Y
0458 923A ST R3,-Y
0459 922A ST R2,-Y
045A EB00 LDI R16,0xB0
045B E010 LDI R17,0
045C 940E0948 CALL lpm32
045E 933A ST R19,-Y
045F 932A ST R18,-Y
0460 931A ST R17,-Y
0461 930A ST R16,-Y
0462 940E0A92 CALL cmp32f
0464 F0D4 BLT 0x047F
0465 01FE MOVW R30,R28
0466 8826 LDD R2,Z+22
0467 8837 LDD R3,Z+23
0468 8C40 LDD R4,Z+24
0469 8C51 LDD R5,Z+25
046A 925A ST R5,-Y
046B 924A ST R4,-Y
046C 923A ST R3,-Y
046D 922A ST R2,-Y
046E EB00 LDI R16,0xB0
046F E010 LDI R17,0
0470 940E0948 CALL lpm32
0472 933A ST R19,-Y
0473 932A ST R18,-Y
0474 931A ST R17,-Y
0475 930A ST R16,-Y
0476 940E09DF CALL sub32f
0478 940E0962 CALL fp2int
047A 01C8 MOVW R24,R16
047B 5080 SUBI R24,0
047C 4890 SBCI R25,0x80
047D 015C MOVW R10,R24
047E C008 RJMP 0x0487
047F 01FE MOVW R30,R28
0480 8906 LDD R16,Z+22
0481 8917 LDD R17,Z+23
0482 8D20 LDD R18,Z+24
0483 8D31 LDD R19,Z+25
0484 940E0962 CALL fp2int
0486 0158 MOVW R10,R16
0487 01B5 MOVW R22,R10
(0208) temp=(temp2/10); // 12.34/10=1
0488 E02A LDI R18,0xA
0489 E030 LDI R19,0
048A 018B MOVW R16,R22
048B 940E0900 CALL div16u
048D 2F40 MOV R20,R16
(0209) display_one(7,temp);
048E 2F24 MOV R18,R20
048F E007 LDI R16,7
0490 DC42 RCALL _display_one
(0210) delay_ms(6);
0491 E006 LDI R16,6
0492 E010 LDI R17,0
0493 DC26 RCALL _delay_ms
(0211) led_contrl_port |= (1<<7);
0494 9A97 SBI 0x12,7
(0212)
(0213) temp2=data;
0495 01FE MOVW R30,R28
0496 8826 LDD R2,Z+22
0497 8837 LDD R3,Z+23
0498 8C40 LDD R4,Z+24
0499 8C51 LDD R5,Z+25
049A 925A ST R5,-Y
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -