📄 discharger.lis
字号:
06D2 .dbsym r ID 20 c
06D2 .dbend
06D2 .dbfunc e Record _Record fV
06D2 ; ID -> R20
.even
06D2 _Record::
06D2 00D0 rcall push_gset1
06D4 2997 sbiw R28,9
06D6 .dbline -1
06D6 .dbline 232
06D6 ; LCD_write_string(0,0,Menu[path],6);
06D6 ; LCD_write_number(7,0,0,BT1_time,"sec",10);
06D6 ; LCD_write_number(0,1,1,BT1_T,"C",0);
06D6 ; LCD_write_number(7,1,0,D882_P,"mW",0);
06D6 ; }
06D6 ; }
06D6 ;
06D6 ; void Record(void)
06D6 ; {
06D6 .dbline 233
06D6 ; unsigned char ID=13; //程序标识
06D6 4DE0 ldi R20,13
06D8 .dbline 234
06D8 ; if(RunTab==ID)
06D8 20901100 lds R2,_RunTab
06DC 2416 cp R2,R20
06DE 09F0 breq X21
06E0 BEC0 rjmp L117
06E2 X21:
06E2 .dbline 235
06E2 ; {
06E2 .dbline 236
06E2 ; if(keyboard!=0)
06E2 20903200 lds R2,_keyboard
06E6 2220 tst R2
06E8 09F4 brne X22
06EA 65C0 rjmp L119
06EC X22:
06EC .dbline 237
06EC ; {
06EC .dbline 238
06EC ; if(keyboard==back){RunTab=2;}
06EC 822D mov R24,R2
06EE 8830 cpi R24,8
06F0 19F4 brne L121
06F2 .dbline 238
06F2 .dbline 238
06F2 82E0 ldi R24,2
06F4 80931100 sts _RunTab,R24
06F8 .dbline 238
06F8 L121:
06F8 .dbline 239
06F8 ; if((BT1_V_num_temp<BT1_V_num-1)&&BT1_V_num!=0)
06F8 80911800 lds R24,_BT1_V_num
06FC 90911900 lds R25,_BT1_V_num+1
0700 0197 sbiw R24,1
0702 20901600 lds R2,_BT1_V_num_temp
0706 30901700 lds R3,_BT1_V_num_temp+1
070A 2816 cp R2,R24
070C 3906 cpc R3,R25
070E 40F5 brsh L123
0710 20901800 lds R2,_BT1_V_num
0714 30901900 lds R3,_BT1_V_num+1
0718 2220 tst R2
071A 11F4 brne X19
071C 3320 tst R3
071E 01F1 breq L123
0720 X19:
0720 .dbline 240
0720 ; {
0720 .dbline 241
0720 ; if(keyboard==up)
0720 80913200 lds R24,_keyboard
0724 8130 cpi R24,1
0726 E1F4 brne L125
0728 .dbline 242
0728 ; {
0728 .dbline 243
0728 ; BT1_V_num_temp++;
0728 80911600 lds R24,_BT1_V_num_temp
072C 90911700 lds R25,_BT1_V_num_temp+1
0730 0196 adiw R24,1
0732 90931700 sts _BT1_V_num_temp+1,R25
0736 80931600 sts _BT1_V_num_temp,R24
073A .dbline 244
073A ; EEPROM_READ(BT1_V_num_temp*2,bt1_v_temp_1);
073A 82E0 ldi R24,2
073C 90E0 ldi R25,0
073E 9983 std y+1,R25
0740 8883 std y+0,R24
0742 20E0 ldi R18,<_bt1_v_temp_1
0744 30E0 ldi R19,>_bt1_v_temp_1
0746 20901600 lds R2,_BT1_V_num_temp
074A 30901700 lds R3,_BT1_V_num_temp+1
074E 02E0 ldi R16,2
0750 10E0 ldi R17,0
0752 2F93 push R18
0754 3F93 push R19
0756 9101 movw R18,R2
0758 00D0 rcall empy16s
075A 3F91 pop R19
075C 2F91 pop R18
075E 00D0 rcall _EEPROMReadBytes
0760 .dbline 245
0760 ; }
0760 L125:
0760 .dbline 246
0760 ; }
0760 L123:
0760 .dbline 248
0760 ;
0760 ; if(BT1_V_num_temp>0)
0760 20901600 lds R2,_BT1_V_num_temp
0764 30901700 lds R3,_BT1_V_num_temp+1
0768 2220 tst R2
076A 11F4 brne X20
076C 3320 tst R3
076E 01F1 breq L127
0770 X20:
0770 .dbline 249
0770 ; {
0770 .dbline 250
0770 ; if(keyboard==down)
0770 80913200 lds R24,_keyboard
0774 8230 cpi R24,2
0776 E1F4 brne L129
0778 .dbline 251
0778 ; {
0778 .dbline 252
0778 ; BT1_V_num_temp--;
0778 80911600 lds R24,_BT1_V_num_temp
077C 90911700 lds R25,_BT1_V_num_temp+1
0780 0197 sbiw R24,1
0782 90931700 sts _BT1_V_num_temp+1,R25
0786 80931600 sts _BT1_V_num_temp,R24
078A .dbline 253
078A ; EEPROM_READ(BT1_V_num_temp*2,bt1_v_temp_1);
078A 82E0 ldi R24,2
078C 90E0 ldi R25,0
078E 9983 std y+1,R25
0790 8883 std y+0,R24
0792 20E0 ldi R18,<_bt1_v_temp_1
0794 30E0 ldi R19,>_bt1_v_temp_1
0796 20901600 lds R2,_BT1_V_num_temp
079A 30901700 lds R3,_BT1_V_num_temp+1
079E 02E0 ldi R16,2
07A0 10E0 ldi R17,0
07A2 2F93 push R18
07A4 3F93 push R19
07A6 9101 movw R18,R2
07A8 00D0 rcall empy16s
07AA 3F91 pop R19
07AC 2F91 pop R18
07AE 00D0 rcall _EEPROMReadBytes
07B0 .dbline 254
07B0 ; }
07B0 L129:
07B0 .dbline 255
07B0 ; }
07B0 L127:
07B0 .dbline 256
07B0 ; keyboard=0;
07B0 2224 clr R2
07B2 20923200 sts _keyboard,R2
07B6 .dbline 257
07B6 ; }
07B6 L119:
07B6 .dbline 258
07B6 88E0 ldi R24,8
07B8 8887 std y+8,R24
07BA 80E0 ldi R24,<L99
07BC 90E0 ldi R25,>L99
07BE 9F83 std y+7,R25
07C0 8E83 std y+6,R24
07C2 20901200 lds R2,_bt1_v_temp_1
07C6 30901300 lds R3,_bt1_v_temp_1+1
07CA 4424 clr R4
07CC 5524 clr R5
07CE 2A82 std y+2,R2
07D0 3B82 std y+3,R3
07D2 4C82 std y+4,R4
07D4 5D82 std y+5,R5
07D6 83E0 ldi R24,3
07D8 8883 std y+0,R24
07DA 21E0 ldi R18,1
07DC 0027 clr R16
07DE 00D0 rcall _LCD_write_number
07E0 .dbline 259
07E0 88E0 ldi R24,8
07E2 8887 std y+8,R24
07E4 80E0 ldi R24,<L131
07E6 90E0 ldi R25,>L131
07E8 9F83 std y+7,R25
07EA 8E83 std y+6,R24
07EC 20901600 lds R2,_BT1_V_num_temp
07F0 30901700 lds R3,_BT1_V_num_temp+1
07F4 4424 clr R4
07F6 5524 clr R5
07F8 2A82 std y+2,R2
07FA 3B82 std y+3,R3
07FC 4C82 std y+4,R4
07FE 5D82 std y+5,R5
0800 2224 clr R2
0802 2882 std y+0,R2
0804 2227 clr R18
0806 0027 clr R16
0808 00D0 rcall _LCD_write_number
080A .dbline 260
080A 8FE0 ldi R24,15
080C 8887 std y+8,R24
080E 80E0 ldi R24,<L131
0810 90E0 ldi R25,>L131
0812 9F83 std y+7,R25
0814 8E83 std y+6,R24
0816 20901800 lds R2,_BT1_V_num
081A 30901900 lds R3,_BT1_V_num+1
081E 4424 clr R4
0820 5524 clr R5
0822 2A82 std y+2,R2
0824 3B82 std y+3,R3
0826 4C82 std y+4,R4
0828 5D82 std y+5,R5
082A 2224 clr R2
082C 2882 std y+0,R2
082E 2227 clr R18
0830 0AE0 ldi R16,10
0832 00D0 rcall _LCD_write_number
0834 .dbline 261
0834 8FE0 ldi R24,15
0836 8887 std y+8,R24
0838 80E0 ldi R24,<L99
083A 90E0 ldi R25,>L99
083C 9F83 std y+7,R25
083E 8E83 std y+6,R24
0840 20901E00 lds R2,_BT1_V
0844 30901F00 lds R3,_BT1_V+1
0848 4424 clr R4
084A 5524 clr R5
084C 2A82 std y+2,R2
084E 3B82 std y+3,R3
0850 4C82 std y+4,R4
0852 5D82 std y+5,R5
0854 83E0 ldi R24,3
0856 8883 std y+0,R24
0858 21E0 ldi R18,1
085A 0AE0 ldi R16,10
085C 00D0 rcall _LCD_write_number
085E .dbline 262
085E L117:
085E .dbline -2
085E L116:
085E 2996 adiw R28,9
0860 00D0 rcall pop_gset1
0862 .dbline 0 ; func end
0862 0895 ret
0864 .dbsym r ID 20 c
0864 .dbend
0864 .dbfunc e Clear _Clear fV
0864 ; ID -> R10
.even
0864 _Clear::
0864 00D0 rcall push_gset3
0866 2997 sbiw R28,9
0868 .dbline -1
0868 .dbline 266
0868 ; LCD_write_number(0,1,3,bt1_v_temp_1,"V",8);
0868 ; LCD_write_number(0,0,0,BT1_V_num_temp,"min",8);
0868 ; LCD_write_number(10,0,0,BT1_V_num,"min",15);
0868 ; LCD_write_number(10,1,3,BT1_V,"V",15);
0868 ; }
0868 ; }
0868 ;
0868 ; void Clear (void)
0868 ; {
0868 .dbline 267
0868 ; unsigned char ID=14;
0868 8EE0 ldi R24,14
086A A82E mov R10,R24
086C .dbline 268
086C ; if(RunTab==ID)
086C 20901100 lds R2,_RunTab
0870 2816 cp R2,R24
0872 09F0 breq X23
0874 8AC0 rjmp L133
0876 X23:
0876 .dbline 269
0876 ; {
0876 .dbline 270
0876 ; if(keyboard!=0)
0876 20903200 lds R2,_keyboard
087A 2220 tst R2
087C 09F4 brne X24
087E 51C0 rjmp L135
0880 X24:
0880 .dbline 271
0880 ; {
0880 .dbline 272
0880 ; if(keyboard==back){RunTab=2;}
0880 822D mov R24,R2
0882 8830 cpi R24,8
0884 19F4 brne L137
0886 .dbline 272
0886 .dbline 272
0886 82E0 ldi R24,2
0888 80931100 sts _RunTab,R24
088C .dbline 272
088C L137:
088C .dbline 273
088C ; if(keyboard==enter_long)
088C 80913200 lds R24,_keyboard
0890 8431 cpi R24,20
0892 09F0 breq X25
0894 43C0 rjmp L139
0896 X25:
0896 .dbline 274
0896 ; {
0896 .dbline 275
0896 ; BT1_mAh=0;
0896 40E0 ldi R20,0
0898 50E0 ldi R21,0
089A 60E0 ldi R22,0
089C 70E0 ldi R23,0
089E 50930B00 sts _BT1_mAh+1,R21
08A2 40930A00 sts _BT1_mAh,R20
08A6 70930D00 sts _BT1_mAh+2+1,R23
08AA 60930C00 sts _BT1_mAh+2,R22
08AE .dbline 276
08AE ; BT1_time=0;
08AE 40E0 ldi R20,0
08B0 50E0 ldi R21,0
08B2 60E0 ldi R22,0
08B4 70E0 ldi R23,0
08B6 50930700 sts _BT1_time
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -