📄 output.lis
字号:
03D2 .dbline 199
03D2 ; IOAddr[OutputByte2]=OutputByte2Reg;
03D2 20900202 lds R2,_OutputByte2Reg
03D6 209206F0 sts _IOAddr+6,R2
03DA .dbline 201
03DA 4427 clr R20
03DC 5527 clr R21
03DE 02C0 xjmp L44
03E0 L41:
03E0 .dbline 201
03E0 L42:
03E0 .dbline 201
03E0 4F5F subi R20,255 ; offset = 1
03E2 5F4F sbci R21,255
03E4 L44:
03E4 .dbline 201
03E4 ;
03E4 ; for(Delay=0;Delay<5000;Delay++);
03E4 4838 cpi R20,136
03E6 E3E1 ldi R30,19
03E8 5E07 cpc R21,R30
03EA D0F3 brlo L41
03EC 0DC0 xjmp L46
03EE L45:
03EE .dbline 203
03EE ;
03EE ; while(i<5){
03EE .dbline 204
03EE ; if(InputByte0Reg==IOAddr[InputByte0])i++;
03EE 209000F0 lds R2,_IOAddr
03F2 30900000 lds R3,_InputByte0Reg
03F6 3214 cp R3,R2
03F8 11F4 brne L48
03FA .dbline 204
03FA 6395 inc R22
03FC 05C0 xjmp L49
03FE L48:
03FE .dbline 205
03FE ; else {InputByte0Reg=IOAddr[InputByte0];i=0;}
03FE .dbline 205
03FE 209000F0 lds R2,_IOAddr
0402 20920000 sts _InputByte0Reg,R2
0406 .dbline 205
0406 6627 clr R22
0408 .dbline 205
0408 L49:
0408 .dbline 206
0408 L46:
0408 .dbline 203
0408 6530 cpi R22,5
040A 88F3 brlo L45
040C .dbline 207
040C ; }
040C ; i=0;
040C 6627 clr R22
040E 0DC0 xjmp L51
0410 L50:
0410 .dbline 208
0410 ; while(i<5){
0410 .dbline 209
0410 ; if(InputByte1Reg==IOAddr[InputByte1])i++;
0410 209001F0 lds R2,_IOAddr+1
0414 30900100 lds R3,_InputByte1Reg
0418 3214 cp R3,R2
041A 11F4 brne L53
041C .dbline 209
041C 6395 inc R22
041E 05C0 xjmp L54
0420 L53:
0420 .dbline 210
0420 ; else {InputByte1Reg=IOAddr[InputByte1];i=0;}
0420 .dbline 210
0420 209001F0 lds R2,_IOAddr+1
0424 20920100 sts _InputByte1Reg,R2
0428 .dbline 210
0428 6627 clr R22
042A .dbline 210
042A L54:
042A .dbline 211
042A L51:
042A .dbline 208
042A 6530 cpi R22,5
042C 88F3 brlo L50
042E .dbline 212
042E ; }
042E ; i=0;
042E 6627 clr R22
0430 0DC0 xjmp L58
0432 L57:
0432 .dbline 213
0432 ; while(i<5){
0432 .dbline 214
0432 ; if(InputByte2Reg==IOAddr[InputByte2])i++;
0432 209002F0 lds R2,_IOAddr+2
0436 30900200 lds R3,_InputByte2Reg
043A 3214 cp R3,R2
043C 11F4 brne L60
043E .dbline 214
043E 6395 inc R22
0440 05C0 xjmp L61
0442 L60:
0442 .dbline 215
0442 ; else {InputByte2Reg=IOAddr[InputByte2];i=0;}
0442 .dbline 215
0442 209002F0 lds R2,_IOAddr+2
0446 20920200 sts _InputByte2Reg,R2
044A .dbline 215
044A 6627 clr R22
044C .dbline 215
044C L61:
044C .dbline 216
044C L58:
044C .dbline 213
044C 6530 cpi R22,5
044E 88F3 brlo L57
0450 .dbline 217
0450 ; }
0450 ; i=0;
0450 6627 clr R22
0452 0DC0 xjmp L65
0454 L64:
0454 .dbline 218
0454 ; while(i<5){
0454 .dbline 219
0454 ; if(InputByte3Reg==IOAddr[InputByte3])i++;
0454 209003F0 lds R2,_IOAddr+3
0458 30900300 lds R3,_InputByte3Reg
045C 3214 cp R3,R2
045E 11F4 brne L67
0460 .dbline 219
0460 6395 inc R22
0462 05C0 xjmp L68
0464 L67:
0464 .dbline 220
0464 ; else {InputByte3Reg=IOAddr[InputByte3];i=0;}
0464 .dbline 220
0464 209003F0 lds R2,_IOAddr+3
0468 20920300 sts _InputByte3Reg,R2
046C .dbline 220
046C 6627 clr R22
046E .dbline 220
046E L68:
046E .dbline 221
046E L65:
046E .dbline 218
046E 6530 cpi R22,5
0470 88F3 brlo L64
0472 .dbline 222
0472 ; }
0472 ; i=0;
0472 6627 clr R22
0474 .dbline 223
0474 ; TxBuffer0[TxOperateSp0++]=0x20;
0474 20900001 lds R2,_TxOperateSp0
0478 3324 clr R3
047A 822D mov R24,R2
047C 8F5F subi R24,255 ; addi 1
047E 80930001 sts _TxOperateSp0,R24
0482 80E0 ldi R24,<_TxBuffer0
0484 90E0 ldi R25,>_TxBuffer0
0486 E22D mov R30,R2
0488 FF27 clr R31
048A E80F add R30,R24
048C F91F adc R31,R25
048E 80E2 ldi R24,32
0490 8083 std z+0,R24
0492 .dbline 224
0492 ; tx0_uc_to_bcd(OutputByte0Reg);
0492 00910402 lds R16,_OutputByte0Reg
0496 0BDF xcall _tx0_uc_to_bcd
0498 .dbline 225
0498 ; TxBuffer0[TxOperateSp0++]=0x20;
0498 20900001 lds R2,_TxOperateSp0
049C 3324 clr R3
049E 822D mov R24,R2
04A0 8F5F subi R24,255 ; addi 1
04A2 80930001 sts _TxOperateSp0,R24
04A6 80E0 ldi R24,<_TxBuffer0
04A8 90E0 ldi R25,>_TxBuffer0
04AA E22D mov R30,R2
04AC FF27 clr R31
04AE E80F add R30,R24
04B0 F91F adc R31,R25
04B2 80E2 ldi R24,32
04B4 8083 std z+0,R24
04B6 .dbline 226
04B6 ; tx0_uc_to_bcd(OutputByte1Reg);
04B6 00910302 lds R16,_OutputByte1Reg
04BA F9DE xcall _tx0_uc_to_bcd
04BC .dbline 227
04BC ; TxBuffer0[TxOperateSp0++]=0x20;
04BC 20900001 lds R2,_TxOperateSp0
04C0 3324 clr R3
04C2 822D mov R24,R2
04C4 8F5F subi R24,255 ; addi 1
04C6 80930001 sts _TxOperateSp0,R24
04CA 80E0 ldi R24,<_TxBuffer0
04CC 90E0 ldi R25,>_TxBuffer0
04CE E22D mov R30,R2
04D0 FF27 clr R31
04D2 E80F add R30,R24
04D4 F91F adc R31,R25
04D6 80E2 ldi R24,32
04D8 8083 std z+0,R24
04DA .dbline 228
04DA ; tx0_uc_to_bcd(OutputByte2Reg);
04DA 00910202 lds R16,_OutputByte2Reg
04DE E7DE xcall _tx0_uc_to_bcd
04E0 .dbline 229
04E0 ; TxBuffer0[TxOperateSp0++]=0x20;
04E0 20900001 lds R2,_TxOperateSp0
04E4 3324 clr R3
04E6 822D mov R24,R2
04E8 8F5F subi R24,255 ; addi 1
04EA 80930001 sts _TxOperateSp0,R24
04EE 80E0 ldi R24,<_TxBuffer0
04F0 90E0 ldi R25,>_TxBuffer0
04F2 E22D mov R30,R2
04F4 FF27 clr R31
04F6 E80F add R30,R24
04F8 F91F adc R31,R25
04FA 80E2 ldi R24,32
04FC 8083 std z+0,R24
04FE .dbline 230
04FE ; tx0_uc_to_bcd(InputByte0Reg);
04FE 00910000 lds R16,_InputByte0Reg
0502 D5DE xcall _tx0_uc_to_bcd
0504 .dbline 231
0504 ; TxBuffer0[TxOperateSp0++]=0x20;
0504 20900001 lds R2,_TxOperateSp0
0508 3324 clr R3
050A 822D mov R24,R2
050C 8F5F subi R24,255 ; addi 1
050E 80930001 sts _TxOperateSp0,R24
0512 80E0 ldi R24,<_TxBuffer0
0514 90E0 ldi R25,>_TxBuffer0
0516 E22D mov R30,R2
0518 FF27 clr R31
051A E80F add R30,R24
051C F91F adc R31,R25
051E 80E2 ldi R24,32
0520 8083 std z+0,R24
0522 .dbline 232
0522 ; tx0_uc_to_bcd(InputByte1Reg);
0522 00910100 lds R16,_InputByte1Reg
0526 C3DE xcall _tx0_uc_to_bcd
0528 .dbline 233
0528 ; TxBuffer0[TxOperateSp0++]=0x20;
0528 20900001 lds R2,_TxOperateSp0
052C 3324 clr R3
052E 822D mov R24,R2
0530 8F5F subi R24,255 ; addi 1
0532 80930001 sts _TxOperateSp0,R24
0536 80E0 ldi R24,<_TxBuffer0
0538 90E0 ldi R25,>_TxBuffer0
053A E22D mov R30,R2
053C FF27 clr R31
053E E80F add R30,R24
0540 F91F adc R31,R25
0542 80E2 ldi R24,32
0544 8083 std z+0,R24
0546 .dbline 234
0546 ; tx0_uc_to_bcd(InputByte2Reg);
0546 00910200 lds R16,_InputByte2Reg
054A B1DE xcall _tx0_uc_to_bcd
054C .dbline 235
054C ; TxBuffer0[TxOperateSp0++]=0x20;
054C 20900001 lds R2,_TxOperateSp0
0550 3324 clr R3
0552 822D mov R24,R2
0554 8F5F subi R24,255 ; addi 1
0556 80930001 sts _TxOperateSp0,R24
055A 80E0 ldi R24,<_TxBuffer0
055C 90E0 ldi R25,>_TxBuffer0
055E E22D mov R30,R2
0560 FF27 clr R31
0562 E80F add R30,R24
0564 F91F adc R31,R25
0566 80E2 ldi R24,32
0568 8083 std z+0,R24
056A .dbline 236
056A ; tx0_uc_to_bcd(InputByte3Reg);
056A 00910300 lds R16,_InputByte3Reg
056E 9FDE xcall _tx0_uc_to_bcd
0570 .dbline 243
0570 ; // if(InputByte0Reg!=InputTable[TestIOSp][0])IOErrorFlag=ON;
0570 ; // else if(InputByte1Reg!=InputTable[TestIOSp][1])IOErrorFlag=ON;
0570 ; //else if(InputByte2Reg!=InputTable[TestIOSp][2])IOErrorFlag=ON;
0570 ; //else if(InputByte3Reg!=InputTable[TestIOSp][3])IOErrorFlag=ON;
0570 ; //else IOErrorFlag=OFF;
0570 ; // tx0_operate();
0570 ; if(InputByte0Reg==InputTable[TestIOSp][0]&& InputByte1Reg==InputTable[TestIOSp][1]
0570 20907400 lds R2,_TestIOSp
0574 84E0 ldi R24,4
0576 829D mul R24,R2
0578 80E0 ldi R24,<_InputTable
057A 90E0 ldi R25,>_InputTable
057C F001 movw R30,R0
057E E80F add R30,R24
0580 F91F adc R31,R25
0582 2080 ldd R2,z+0
0584 30900000 lds R3,_InputByte0Reg
0588 3214 cp R3,R2
058A 09F0 breq X1
058C 64C0 xjmp L71
058E X1:
058E 80E0 ldi R24,<_InputTable+1
0590 90E0 ldi R25,>_InputTable+1
0592 F001 movw R30,R0
0594 E80F add R30,R24
0596 F91F adc R31,R25
0598 2080 ldd R2,z+0
059A 30900100 lds R3,_InputByte1Reg
059E 3214 cp R3,R2
05A0 09F0 breq X2
05A2 59C0 xjmp L71
05A4 X2:
05A4 80E0 ldi R24,<_InputTable+2
05A6 90E0 ldi R25,>_InputTable+2
05A8 F001 movw R30,R0
05AA E80F
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -