📄 uncode.lis
字号:
015C .dbline 143
015C 0000 nop
015E .dbline 143
015E L71:
015E .dbline 143
015E ;
015E ; //通道6
015E ; WaitHigh ();
015E 869B sbis 0x10,6
0160 FDCF rjmp L70
0162 .dbline 143
0162 .dbline 143
0162 .dbline 144
0162 ; TimerStart();
0162 .dbline 144
0162 82E8 ldi R24,130
0164 8EBD out 0x2e,R24
0166 .dbline 144
0166 .dbline 145
0166 ; PD|=0x10;
0166 949A sbi 0x12,4
0168 .dbline 146
0168 01C0 rjmp L74
016A L73:
016A .dbline 146
016A .dbline 146
016A 0000 nop
016C .dbline 146
016C L74:
016C .dbline 146
016C ; WaitLow ();
016C 8699 sbic 0x10,6
016E FDCF rjmp L73
0170 .dbline 146
0170 .dbline 146
0170 .dbline 147
0170 ; PD&=(~0x10);
0170 9498 cbi 0x12,4
0172 .dbline 148
0172 ; if(HowLong()>RESET_TIME){error=1;break;}
0172 46DF rcall _HowLong
0174 84E5 ldi R24,2900
0176 9BE0 ldi R25,11
0178 8017 cp R24,R16
017A 9107 cpc R25,R17
017C 20F4 brsh L79
017E .dbline 148
017E .dbline 148
017E AA24 clr R10
0180 A394 inc R10
0182 .dbline 148
0182 64C0 rjmp L29
0184 X7:
0184 .dbline 151
0184 L78:
0184 .dbline 151
0184 .dbline 151
0184 0000 nop
0186 .dbline 151
0186 L79:
0186 .dbline 151
0186 ;
0186 ; //开关数据通道
0186 ; WaitHigh ();
0186 869B sbis 0x10,6
0188 FDCF rjmp L78
018A .dbline 151
018A .dbline 151
018A .dbline 152
018A ; TimerStart();
018A .dbline 152
018A 82E8 ldi R24,130
018C 8EBD out 0x2e,R24
018E .dbline 152
018E .dbline 153
018E 01C0 rjmp L82
0190 L81:
0190 .dbline 153
0190 .dbline 153
0190 0000 nop
0192 .dbline 153
0192 L82:
0192 .dbline 153
0192 ; WaitLow ();
0192 8699 sbic 0x10,6
0194 FDCF rjmp L81
0196 .dbline 153
0196 .dbline 153
0196 .dbline 154
0196 ; temp=HowLong();
0196 34DF rcall _HowLong
0198 E02E mov R14,R16
019A F12E mov R15,R17
019C .dbline 155
019C ; if(temp>RESET_TIME){error=1;break;}
019C 84E5 ldi R24,2900
019E 9BE0 ldi R25,11
01A0 8017 cp R24,R16
01A2 9107 cpc R25,R17
01A4 18F4 brsh L84
01A6 .dbline 155
01A6 .dbline 155
01A6 AA24 clr R10
01A8 A394 inc R10
01AA .dbline 155
01AA 50C0 rjmp L29
01AC L84:
01AC .dbline 156
01AC 80EB ldi R24,1200
01AE 94E0 ldi R25,4
01B0 8E15 cp R24,R14
01B2 9F05 cpc R25,R15
01B4 18F4 brsh L86
01B6 .dbline 156
01B6 CC24 clr R12
01B8 C394 inc R12
01BA 03C0 rjmp L89
01BC L86:
01BC .dbline 156
01BC ; if(temp>MID_TIME)sw_estate=1;else sw_estate=0;
01BC CC24 clr R12
01BE .dbline 159
01BE 01C0 rjmp L89
01C0 L88:
01C0 .dbline 159
01C0 .dbline 159
01C0 0000 nop
01C2 .dbline 159
01C2 L89:
01C2 .dbline 159
01C2 ;
01C2 ; //开关复位信号通道
01C2 ; WaitHigh ();
01C2 869B sbis 0x10,6
01C4 FDCF rjmp L88
01C6 .dbline 159
01C6 .dbline 159
01C6 .dbline 160
01C6 ; TimerStart();
01C6 .dbline 160
01C6 82E8 ldi R24,130
01C8 8EBD out 0x2e,R24
01CA .dbline 160
01CA .dbline 161
01CA 01C0 rjmp L92
01CC L91:
01CC .dbline 161
01CC .dbline 161
01CC 0000 nop
01CE .dbline 161
01CE L92:
01CE .dbline 161
01CE ; WaitLow ();
01CE 8699 sbic 0x10,6
01D0 FDCF rjmp L91
01D2 .dbline 161
01D2 .dbline 161
01D2 .dbline 162
01D2 ; temp=HowLong();
01D2 16DF rcall _HowLong
01D4 E02E mov R14,R16
01D6 F12E mov R15,R17
01D8 .dbline 163
01D8 ; if(temp>RESET_TIME){error=1;break;}
01D8 84E5 ldi R24,2900
01DA 9BE0 ldi R25,11
01DC 8017 cp R24,R16
01DE 9107 cpc R25,R17
01E0 18F4 brsh L94
01E2 .dbline 163
01E2 .dbline 163
01E2 AA24 clr R10
01E4 A394 inc R10
01E6 .dbline 163
01E6 32C0 rjmp L29
01E8 L94:
01E8 .dbline 164
01E8 80EB ldi R24,1200
01EA 94E0 ldi R25,4
01EC 8E15 cp R24,R14
01EE 9F05 cpc R25,R15
01F0 10F4 brsh L96
01F2 .dbline 164
01F2 41E0 ldi R20,1
01F4 01C0 rjmp L97
01F6 L96:
01F6 .dbline 164
01F6 ; if(temp>MID_TIME)sw_reset=1;else sw_reset=0;
01F6 4427 clr R20
01F8 L97:
01F8 .dbline 165
01F8 ; sw_counter++;
01F8 6395 inc R22
01FA .dbline 168
01FA 01C0 rjmp L99
01FC L98:
01FC .dbline 168
01FC .dbline 168
01FC 0000 nop
01FE .dbline 168
01FE L99:
01FE .dbline 168
01FE ;
01FE ;
01FE ; WaitHigh ();
01FE 869B sbis 0x10,6
0200 FDCF rjmp L98
0202 .dbline 168
0202 .dbline 168
0202 .dbline 169
0202 ; TimerStart();//利用复位时间长,输出开关信号
0202 .dbline 169
0202 82E8 ldi R24,130
0204 8EBD out 0x2e,R24
0206 .dbline 169
0206 .dbline 170
0206 ; if(sw_counter<8)
0206 6830 cpi R22,8
0208 88F4 brsh L101
020A .dbline 171
020A CC20 tst R12
020C 39F0 breq L103
020E .dbline 171
020E 01E0 ldi R16,1
0210 162F mov R17,R22
0212 00D0 rcall lsl8
0214 28B2 in R2,0x18
0216 202A or R2,R16
0218 28BA out 0x18,R2
021A 08C0 rjmp L104
021C L103:
021C .dbline 171
021C ; if(sw_estate)PB|=(1<<sw_counter);else PB&=(~(1<<sw_counter));
021C 01E0 ldi R16,1
021E 162F mov R17,R22
0220 00D0 rcall lsl8
0222 202E mov R2,R16
0224 2094 com R2
0226 38B2 in R3,0x18
0228 3220 and R3,R2
022A 38BA out 0x18,R3
022C L104:
022C L101:
022C .dbline 172
022C ; if(sw_reset)
022C 4423 tst R20
022E 09F0 breq L105
0230 .dbline 173
0230 ; sw_counter=255;
0230 6FEF ldi R22,255
0232 L105:
0232 .dbline 174
0232 ; WDR();
0232 A895 wdr
0234 .dbline 175
0234 01C0 rjmp L108
0236 L107:
0236 .dbline 175
0236 .dbline 175
0236 0000 nop
0238 .dbline 175
0238 L108:
0238 .dbline 175
0238 ; WaitLow ();
0238 8699 sbic 0x10,6
023A FDCF rjmp L107
023C .dbline 175
023C .dbline 175
023C .dbline 176
023C ; if(HowLong()>RESET_TIME)break;
023C E1DE rcall _HowLong
023E 84E5 ldi R24,2900
0240 9BE0 ldi R25,11
0242 8017 cp R24,R16
0244 9107 cpc R25,R17
0246 08F4 brsh L110
0248 .dbline 176
0248 01C0 rjmp L29
024A L110:
024A .dbline 178
024A L28:
024A .dbline 101
024A 25CF rjmp L31
024C L29:
024C .dbline 179
024C L23:
024C .dbline 98
024C 1ECF rjmp L22
024E X8:
024E .dbline -2
024E L21:
024E .dbline 0 ; func end
024E 0895 ret
0250 .dbsym r sw_estate 12 c
0250 .dbsym r sw_reset 20 c
0250 .dbsym r sw_counter 22 c
0250 .dbsym r error 10 c
0250 .dbsym r temp 14 i
0250 .dbend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -