📄 mydesign.lst
字号:
04C3 822A STD Y+2,R2
04C4 823B STD Y+3,R3
04C5 824C STD Y+4,R4
04C6 825D STD Y+5,R5
04C7 E085 LDI R24,5
04C8 8388 STD Y+0,R24
04C9 2722 CLR R18
04CA 2700 CLR R16
04CB D35F RCALL _LCD_display
(0087) LCD_write_string(6,0,"-10e4");
04CC EB82 LDI R24,0xB2
04CD E090 LDI R25,0
04CE 8399 STD Y+1,R25
04CF 8388 STD Y+0,R24
04D0 2722 CLR R18
04D1 E006 LDI R16,6
04D2 D32A RCALL _LCD_write_string
(0088) LCD_write_string(0,1,"^ Set K");
04D3 EA81 LDI R24,0xA1
04D4 E090 LDI R25,0
04D5 8399 STD Y+1,R25
04D6 8388 STD Y+0,R24
04D7 E021 LDI R18,1
04D8 2700 CLR R16
04D9 D323 RCALL _LCD_write_string
(0089) j=0;
04DA 2422 CLR R2
04DB 922000F9 STS _j,R2
(0090) data_init(changK1());
04DD DE36 RCALL _changK1
04DE DBE2 RCALL _data_init
04DF C115 RJMP 0x05F5
(0091) while(flag)
(0092) {
(0093) key_temp=keypad();
04E0 D3F9 RCALL _keypad
04E1 2EA0 MOV R10,R16
(0094) switch(key_temp)
04E2 2CCA MOV R12,R10
04E3 24DD CLR R13
04E4 2D8C MOV R24,R12
04E5 2D9D MOV R25,R13
04E6 3081 CPI R24,1
04E7 E0E0 LDI R30,0
04E8 079E CPC R25,R30
04E9 F409 BNE 0x04EB
04EA C08D RJMP 0x0578
04EB 3082 CPI R24,2
04EC E0E0 LDI R30,0
04ED 079E CPC R25,R30
04EE F051 BEQ 0x04F9
04EF 3083 CPI R24,3
04F0 E0E0 LDI R30,0
04F1 079E CPC R25,R30
04F2 F121 BEQ 0x0517
04F3 3084 CPI R24,4
04F4 E0E0 LDI R30,0
04F5 079E CPC R25,R30
04F6 F409 BNE 0x04F8
04F7 C050 RJMP 0x0548
04F8 C0FC RJMP 0x05F5
(0095) {
(0096) case KEY_CU:
(0097) LCD_write(j,1,' ');
04F9 E280 LDI R24,0x20
04FA E090 LDI R25,0
04FB 8399 STD Y+1,R25
04FC 8388 STD Y+0,R24
04FD E021 LDI R18,1
04FE 910000F9 LDS R16,_j
0500 D315 RCALL _LCD_write
(0098) j++;
0501 918000F9 LDS R24,_j
0503 5F8F SUBI R24,0xFF
0504 938000F9 STS _j,R24
(0099) if(j>4) j=0;
0506 E084 LDI R24,4
0507 902000F9 LDS R2,_j
0509 1582 CP R24,R2
050A F418 BCC 0x050E
050B 2422 CLR R2
050C 922000F9 STS _j,R2
(0100) LCD_write(j,1,'^');
050E E58E LDI R24,0x5E
050F E090 LDI R25,0
0510 8399 STD Y+1,R25
0511 8388 STD Y+0,R24
0512 E021 LDI R18,1
0513 910000F9 LDS R16,_j
0515 D300 RCALL _LCD_write
(0101) break;
0516 C0DE RJMP 0x05F5
(0102) case KEY_INC:
(0103) value_table[j]++;
0517 EF8C LDI R24,0xFC
0518 E090 LDI R25,0
0519 902000F9 LDS R2,_j
051B 2433 CLR R3
051C 0E28 ADD R2,R24
051D 1E39 ADC R3,R25
051E 2DE2 MOV R30,R2
051F 2DF3 MOV R31,R3
0520 8180 LDD R24,Z+0
0521 5F8F SUBI R24,0xFF
0522 8380 STD Z+0,R24
(0104) if(value_table[j]>9) value_table[j]=0;
0523 EF8C LDI R24,0xFC
0524 E090 LDI R25,0
0525 91E000F9 LDS R30,_j
0527 27FF CLR R31
0528 0FE8 ADD R30,R24
0529 1FF9 ADC R31,R25
052A 8020 LDD R2,Z+0
052B E089 LDI R24,0x9
052C 1582 CP R24,R2
052D F448 BCC 0x0537
052E EF8C LDI R24,0xFC
052F E090 LDI R25,0
0530 91E000F9 LDS R30,_j
0532 27FF CLR R31
0533 0FE8 ADD R30,R24
0534 1FF9 ADC R31,R25
0535 2422 CLR R2
0536 8220 STD Z+0,R2
(0105) LCD_write(j,0,value_table[j]+'0');
0537 EF8C LDI R24,0xFC
0538 E090 LDI R25,0
0539 91E000F9 LDS R30,_j
053B 27FF CLR R31
053C 0FE8 ADD R30,R24
053D 1FF9 ADC R31,R25
053E 8180 LDD R24,Z+0
053F 2799 CLR R25
0540 96C0 ADIW R24,0x30
0541 8399 STD Y+1,R25
0542 8388 STD Y+0,R24
0543 2722 CLR R18
0544 910000F9 LDS R16,_j
0546 D2CF RCALL _LCD_write
(0106) break;
0547 C0AD RJMP 0x05F5
(0107) case KEY_DEC:
(0108) value_table[j]--;
0548 EF8C LDI R24,0xFC
0549 E090 LDI R25,0
054A 902000F9 LDS R2,_j
054C 2433 CLR R3
054D 0E28 ADD R2,R24
054E 1E39 ADC R3,R25
054F 2DE2 MOV R30,R2
0550 2DF3 MOV R31,R3
0551 8180 LDD R24,Z+0
0552 5081 SUBI R24,1
0553 8380 STD Z+0,R24
(0109) if(value_table[j]==255) value_table[j]=9;
0554 EF8C LDI R24,0xFC
0555 E090 LDI R25,0
0556 91E000F9 LDS R30,_j
0558 27FF CLR R31
0559 0FE8 ADD R30,R24
055A 1FF9 ADC R31,R25
055B 8180 LDD R24,Z+0
055C 3F8F CPI R24,0xFF
055D F449 BNE 0x0567
055E EF8C LDI R24,0xFC
055F E090 LDI R25,0
0560 91E000F9 LDS R30,_j
0562 27FF CLR R31
0563 0FE8 ADD R30,R24
0564 1FF9 ADC R31,R25
0565 E089 LDI R24,0x9
0566 8380 STD Z+0,R24
(0110) LCD_write(j,0,value_table[j]+'0');
0567 EF8C LDI R24,0xFC
0568 E090 LDI R25,0
0569 91E000F9 LDS R30,_j
056B 27FF CLR R31
056C 0FE8 ADD R30,R24
056D 1FF9 ADC R31,R25
056E 8180 LDD R24,Z+0
056F 2799 CLR R25
0570 96C0 ADIW R24,0x30
0571 8399 STD Y+1,R25
0572 8388 STD Y+0,R24
0573 2722 CLR R18
0574 910000F9 LDS R16,_j
0576 D29F RCALL _LCD_write
(0111) break;
0577 C07D RJMP 0x05F5
(0112) case KEY_FN:
(0113) K1=value_table[0]+ value_table[1]*0.1+value_table[2]*0.01+value_table[3]*0.001+value_table[4]*0.0001;
0578 910000FC LDS R16,_value_table
057A 2711 CLR R17
057B D796 RCALL int2fp
057C 933A ST R19,-Y
057D 932A ST R18,-Y
057E 931A ST R17,-Y
057F 930A ST R16,-Y
0580 E30A LDI R16,0x3A
0581 E010 LDI R17,0
0582 D6D9 RCALL lpm32
0583 933A ST R19,-Y
0584 932A ST R18,-Y
0585 931A ST R17,-Y
0586 930A ST R16,-Y
0587 910000FD LDS R16,_value_table+1
0589 2711 CLR R17
058A D787 RCALL int2fp
058B 933A ST R19,-Y
058C 932A ST R18,-Y
058D 931A ST R17,-Y
058E 930A ST R16,-Y
058F D8B2 RCALL mpy32fs
0590 D7D6 RCALL add32fs
0591 E306 LDI R16,0x36
0592 E010 LDI R17,0
0593 D6C8 RCALL lpm32
0594 933A ST R19,-Y
0595 932A ST R18,-Y
0596 931A ST R17,-Y
0597 930A ST R16,-Y
0598 910000FE LDS R16,_value_table+2
059A 2711 CLR R17
059B D776 RCALL int2fp
059C 933A ST R19,-Y
059D 932A ST R18,-Y
059E 931A ST R17,-Y
059F 930A ST R16,-Y
05A0 D8A1 RCALL mpy32fs
05A1 D7C5 RCALL add32fs
05A2 E302 LDI R16,0x32
05A3 E010 LDI R17,0
05A4 D6B7 RCALL lpm32
05A5 933A ST R19,-Y
05A6 932A ST R18,-Y
05A7 931A ST R17,-Y
05A8 930A ST R16,-Y
05A9 910000FF LDS R16,_value_table+3
05AB 2711 CLR R17
05AC D765 RCALL int2fp
05AD 933A ST R19,-Y
05AE 932A ST R18,-Y
05AF 931A ST R17,-Y
05B0 930A ST R16,-Y
05B1 D890 RCALL mpy32fs
05B2 D7B4 RCALL add32fs
05B3 E20E LDI R16,0x2E
05B4 E010 LDI R17,0
05B5 D6A6 RCALL lpm32
05B6 933A ST R19,-Y
05B7 932A ST R18,-Y
05B8 931A ST R17,-Y
05B9 930A ST R16,-Y
05BA 91000100 LDS R16,0x100
05BC 2711 CLR R17
05BD D754 RCALL int2fp
05BE 933A ST R19,-Y
05BF 932A ST R18,-Y
05C0 931A ST R17,-Y
05C1 930A ST R16,-Y
05C2 D87F RCALL mpy32fs
05C3 D7A5 RCALL add32f
05C4 93100084 STS 0x84,R17
05C6 93000083 STS 0x83,R16
05C8 93300086 STS 0x86,R19
05CA 93200085 STS 0x85,R18
(0114) data_init(changK1());
05CC DD47 RCALL _changK1
05CD DAF3 RCALL _data_init
(0115) SaveToEEPROM(0,5,0);
05CE 2422 CLR R2
05CF 2433 CLR R3
05D0 8239 STD Y+1,R3
05D1 8228 STD Y+0,R2
05D2 E025 LDI R18,5
05D3 2700 CLR R16
05D4 DD1B RCALL _SaveToEEPROM
(0116) LCD_clr();
05D5 D24D RCALL _LCD_clr
(0117) LCD_display(0,0,4,Time1);
05D6 902000F7 LDS R2,__idata_end
05D8 903000F8 LDS R3,__idata_end+1
05DA 2444 CLR R4
05DB 2455 CLR R5
05DC 822A STD Y+2,R2
05DD 823B STD Y+3,R3
05DE 824C STD Y+4,R4
05DF 825D STD Y+5,R5
05E0 E084 LDI R24,4
05E1 8388 STD Y+0,R24
05E2 2722 CLR R18
05E3 2700 CLR R16
05E4 D246 RCALL _LCD_display
(0118) LCD_write_string(0,1,"^ Set T");
05E5 E980 LDI R24,0x90
05E6 E090 LDI R25,0
05E7 8399 STD Y+1,R25
05E8 8388 STD Y+0,R24
05E9 E021 LDI R18,1
05EA 2700 CLR R16
05EB D211 RCALL _LCD_write_string
(0119) j=0;
05EC 2422 CLR R2
05ED 922000F9 STS _j,R2
(0120) data_init(Time1);
05EF 910000F7 LDS R16,__idata_end
05F1 911000F8 LDS R17,__idata_end+1
05F3 DACD RCALL _data_init
(0121) flag=0;
05F4 2744 CLR R20
05F5 2344 TST R20
05F6 F009 BEQ 0x05F8
05F7 CEE8 RJMP 0x04E0
(0122) break;
(0123) }
(0124) }
(0125) flag=1;
05F8 E041 LDI R20,1
05F9 C0D2 RJMP 0x06CC
(0126) while(flag)
(0127) {
(0128) key_temp=keypad();
05FA D2DF RCALL _keypad
05FB 2EA0 MOV R10,R16
(0129) switch(key_temp)
05FC 2D6A MOV R22,R10
05FD 2777 CLR R23
05FE 3061 CPI R22,1
05FF E0E0 LDI R30,0
0600 077E CPC R23,R30
0601 F409 BNE 0x0603
0602 C08D RJMP 0x0690
0603 3062 CPI R22,2
0604 E0E0 LDI R30,0
0605 077E CPC R23,R30
0606 F051 BEQ 0x0611
0607 3063 CPI R22,3
0608 E0E0 LDI R30,0
0609 077E CPC R23,R30
060A F121 BEQ 0x062F
060B 3064 CPI R22,4
060C E0E0 LDI R30,0
060D 077E CPC R23,R30
060E F409 BNE 0x0610
060F C050 RJMP 0x0660
0610 C0BB RJMP 0x06CC
(0130) {
(0131) case KEY_CU:
(0132) LCD_write(j,1,' ');
0611 E280 LDI R24,0x20
0612 E090 LDI R25,0
0613 8399 STD Y+1,R25
0614 8388 STD Y+0,R24
0615 E021 LDI R18,1
0616 910000F9 LDS R16,_j
0618 D1FD RCALL _LCD_write
(0133) j++;
0619 918000F9 LDS R24,_j
061B 5F8F SUBI R24,0xFF
061C 938000F9 STS _j,R24
(0134) if(j>3) j=0;
061E E083 LDI R24,3
061F 902000F9 LDS R2,_j
0621 1582 CP R24,R2
0622 F418 BCC 0x0626
0623 2422 CLR R2
0624 922000F9 STS _j,R2
(0135) LCD_write(j,1,'^');
0626 E58E LDI R24,0x5E
0627 E090 LDI R25,0
0628 8399 STD Y+1,R25
0629 8388 STD Y+0,R24
062A E021 LDI R18,1
062B 910000F9 LDS R16,_j
062D D1E8 RCALL _LCD_write
(0136) break;
062E C09D RJMP 0x06CC
(0137) case KEY_INC:
(0138) value_table[j+1]++;
062F EF8D LDI R24,0xFD
0630 E090 LDI R25,0
0631 902000F9 LDS R2,_j
0633 2433 CLR R3
0634 0E28 ADD R2,R24
0635 1E39 ADC R3,R25
0636 2DE2 MOV R30,R2
0637 2DF3 MOV R31,R3
0638 8180 LDD R24,Z+0
0639 5F8F SUBI R24,0xFF
063A 8380 STD Z+0,R24
(0139) if(value_table[j+1]>9) value_table[j+1]=0;
063B EF8D LDI R24,0xFD
063C E090 LDI R25,0
063D 91E000F9 LDS R30,_j
063F 27FF CLR R31
0640 0FE8 ADD R30,R24
0641 1FF9 ADC R31,R25
0642 8020 LDD R2,Z+0
0643 E089 LDI R24,0x9
0644 1582 CP R24,R2
0645 F448 BCC 0x064F
0646 EF8D LDI R24,0xFD
0647 E090 LDI R25,0
0648 91E000F9 LDS R30,_j
064A 27FF CLR R31
064B 0FE8 ADD R30,R24
064C 1FF9 ADC R31,R25
064D 2422 CLR R2
064E 8220 STD Z+0,R2
(0140) LCD_write(j,0,value_table[j+1]+'0');
064F EF8D LDI R24,0xFD
0650 E090 LDI R25,0
0651 91E000F9 LDS R30,_j
0653 27FF CLR R31
0654 0FE8 ADD R30,R24
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -