⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 display.lis

📁 LED显示面板
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 031A 2094              com R2
 031C 6221              and R22,R2
 031E                   .dbline 146
 031E           ;       }
 031E 97C0              xjmp L89
 0320           L91:
 0320                   .dbline 148
 0320           ;         else                                             //有闭锁则不输出
 0320           ;         {
 0320                   .dbline 149
 0320           ;           d&= ~(1<<i);                                   
 0320 01E0              ldi R16,1
 0322 1C2D              mov R17,R12
 0324 0E940000          xcall lsl8
 0328 202E              mov R2,R16
 032A 2094              com R2
 032C A220              and R10,R2
 032E                   .dbline 150
 032E           ;         dd&= ~(1<<i); 
 032E 01E0              ldi R16,1
 0330 1C2D              mov R17,R12
 0332 0E940000          xcall lsl8
 0336 202E              mov R2,R16
 0338 2094              com R2
 033A 6221              and R22,R2
 033C                   .dbline 151
 033C           ;         }
 033C                   .dbline 152
 033C           ;    }
 033C 88C0              xjmp L89
 033E           L88:
 033E                   .dbline 153
 033E           ;   else if(pannel_led[j*8+i].state==normal)             //正常显示
 033E 88E0              ldi R24,8
 0340 849F              mul R24,R20
 0342 102D              mov R17,R0
 0344 1C0D              add R17,R12
 0346 04E1              ldi R16,20
 0348 0102              muls R16,R17
 034A F001              movw R30,R0
 034C 80E0              ldi R24,<_pannel_led+13
 034E 90E0              ldi R25,>_pannel_led+13
 0350 E80F              add R30,R24
 0352 F91F              adc R31,R25
 0354 2080              ldd R2,z+0
 0356 2220              tst R2
 0358 79F4              brne L94
 035A                   .dbline 154
 035A           ;   {
 035A                   .dbline 155
 035A           ;     d&= ~(1<<i);                                   
 035A 01E0              ldi R16,1
 035C 1C2D              mov R17,R12
 035E 0E940000          xcall lsl8
 0362 202E              mov R2,R16
 0364 2094              com R2
 0366 A220              and R10,R2
 0368                   .dbline 156
 0368           ;    dd&= ~(1<<i); 
 0368 01E0              ldi R16,1
 036A 1C2D              mov R17,R12
 036C 0E940000          xcall lsl8
 0370 202E              mov R2,R16
 0372 2094              com R2
 0374 6221              and R22,R2
 0376                   .dbline 157
 0376           ;    }
 0376 6BC0              xjmp L95
 0378           L94:
 0378                   .dbline 158
 0378           ;   else if(pannel_led[j*8+i].state==acked)              //应答显示
 0378 88E0              ldi R24,8
 037A 849F              mul R24,R20
 037C 102D              mov R17,R0
 037E 1C0D              add R17,R12
 0380 04E1              ldi R16,20
 0382 0102              muls R16,R17
 0384 F001              movw R30,R0
 0386 80E0              ldi R24,<_pannel_led+13
 0388 90E0              ldi R25,>_pannel_led+13
 038A E80F              add R30,R24
 038C F91F              adc R31,R25
 038E 8081              ldd R24,z+0
 0390 8230              cpi R24,2
 0392 39F5              brne L97
 0394                   .dbline 159
 0394           ;   {
 0394                   .dbline 161
 0394           ;   
 0394           ;     if(pannel_led[j*8+i].cut_off==off)  
 0394 88E0              ldi R24,8
 0396 849F              mul R24,R20
 0398 102D              mov R17,R0
 039A 1C0D              add R17,R12
 039C 0102              muls R16,R17
 039E F001              movw R30,R0
 03A0 80E0              ldi R24,<_pannel_led+16
 03A2 90E0              ldi R25,>_pannel_led+16
 03A4 E80F              add R30,R24
 03A6 F91F              adc R31,R25
 03A8 8081              ldd R24,z+0
 03AA 853A              cpi R24,165
 03AC 59F4              brne L100
 03AE                   .dbline 162
 03AE           ;      {
 03AE                   .dbline 163
 03AE           ;         d|=(1<<i);  
 03AE 01E0              ldi R16,1
 03B0 1C2D              mov R17,R12
 03B2 0E940000          xcall lsl8
 03B6 A02A              or R10,R16
 03B8                   .dbline 164
 03B8           ;       dd|= (1<<i); 
 03B8 01E0              ldi R16,1
 03BA 1C2D              mov R17,R12
 03BC 0E940000          xcall lsl8
 03C0 602B              or R22,R16
 03C2                   .dbline 165
 03C2           ;         }
 03C2 45C0              xjmp L98
 03C4           L100:
 03C4                   .dbline 167
 03C4           ;        else
 03C4           ;        {
 03C4                   .dbline 168
 03C4           ;           d&= ~(1<<i);                                   
 03C4 01E0              ldi R16,1
 03C6 1C2D              mov R17,R12
 03C8 0E940000          xcall lsl8
 03CC 202E              mov R2,R16
 03CE 2094              com R2
 03D0 A220              and R10,R2
 03D2                   .dbline 169
 03D2           ;         dd&= ~(1<<i); 
 03D2 01E0              ldi R16,1
 03D4 1C2D              mov R17,R12
 03D6 0E940000          xcall lsl8
 03DA 202E              mov R2,R16
 03DC 2094              com R2
 03DE 6221              and R22,R2
 03E0                   .dbline 170
 03E0           ;        } 
 03E0                   .dbline 171
 03E0           ;   }
 03E0 36C0              xjmp L98
 03E2           L97:
 03E2                   .dbline 172
 03E2           ;   else if(pannel_led[j*8+i].state==fault)              //故障显示
 03E2 88E0              ldi R24,8
 03E4 849F              mul R24,R20
 03E6 102D              mov R17,R0
 03E8 1C0D              add R17,R12
 03EA 04E1              ldi R16,20
 03EC 0102              muls R16,R17
 03EE F001              movw R30,R0
 03F0 80E0              ldi R24,<_pannel_led+13
 03F2 90E0              ldi R25,>_pannel_led+13
 03F4 E80F              add R30,R24
 03F6 F91F              adc R31,R25
 03F8 8081              ldd R24,z+0
 03FA 8330              cpi R24,3
 03FC 41F5              brne L103
 03FE                   .dbline 173
 03FE           ;   {
 03FE                   .dbline 174
 03FE           ;   if(pannel_led[j*8+i].cut_off==off)
 03FE 88E0              ldi R24,8
 0400 849F              mul R24,R20
 0402 102D              mov R17,R0
 0404 1C0D              add R17,R12
 0406 0102              muls R16,R17
 0408 F001              movw R30,R0
 040A 80E0              ldi R24,<_pannel_led+16
 040C 90E0              ldi R25,>_pannel_led+16
 040E E80F              add R30,R24
 0410 F91F              adc R31,R25
 0412 8081              ldd R24,z+0
 0414 853A              cpi R24,165
 0416 69F4              brne L106
 0418                   .dbline 175
 0418           ;   {
 0418                   .dbline 176
 0418           ;     d|=(1<<i);
 0418 01E0              ldi R16,1
 041A 1C2D              mov R17,R12
 041C 0E940000          xcall lsl8
 0420 A02A              or R10,R16
 0422                   .dbline 177
 0422           ;     dd&= ~(1<<i);
 0422 01E0              ldi R16,1
 0424 1C2D              mov R17,R12
 0426 0E940000          xcall lsl8
 042A 202E              mov R2,R16
 042C 2094              com R2
 042E 6221              and R22,R2
 0430                   .dbline 178
 0430           ;    }
 0430 0EC0              xjmp L107
 0432           L106:
 0432                   .dbline 180
 0432           ;    else
 0432           ;    {
 0432                   .dbline 181
 0432           ;      d&= ~(1<<i);                                   
 0432 01E0              ldi R16,1
 0434 1C2D              mov R17,R12
 0436 0E940000          xcall lsl8
 043A 202E              mov R2,R16
 043C 2094              com R2
 043E A220              and R10,R2
 0440                   .dbline 182
 0440           ;      dd&= ~(1<<i); 
 0440 01E0              ldi R16,1
 0442 1C2D              mov R17,R12
 0444 0E940000          xcall lsl8
 0448 202E              mov R2,R16
 044A 2094              com R2
 044C 6221              and R22,R2
 044E                   .dbline 183
 044E           ;    }
 044E           L107:
 044E                   .dbline 184
 044E           ;   }
 044E           L103:
 044E           L98:
 044E           L95:
 044E           L89:
 044E                   .dbline 185
 044E           L85:
 044E                   .dbline 138
 044E C394              inc R12
 0450           L87:
 0450                   .dbline 138
 0450 8C2D              mov R24,R12
 0452 8830              cpi R24,8
 0454 08F4              brsh X2
 0456 3BCF              xjmp L84
 0458           X2:
 0458                   .dbline 186
 0458 A895              wdr
 045A                   .dbline 187
 045A 20900000          lds R2,_T1
 045E 2A82              std y+2,R2
 0460 6883              std y+0,R22
 0462 2A2D              mov R18,R10
 0464 042F              mov R16,R20
 0466 0E940000          xcall _led_on
 046A                   .dbline 189
 046A           L81:
 046A                   .dbline 134
 046A 4395              inc R20
 046C           L83:
 046C                   .dbline 134
 046C 4630              cpi R20,6
 046E 08F4              brsh X3
 0470 2ACF              xjmp L80
 0472           X3:
 0472                   .dbline -2
 0472           L79:
 0472 2396              adiw R28,3
 0474 0E940000          xcall pop_gset4
 0478                   .dbline 0 ; func end
 0478 0895              ret
 047A                   .dbsym r dd 22 c
 047A                   .dbsym r d 10 c
 047A                   .dbsym r j 20 c
 047A                   .dbsym r i 12 c
 047A                   .dbend
 047A                   .dbfunc e turn_display _turn_display fV
 047A           ;             t4 -> R22
 047A           ;             t3 -> R12
 047A           ;             t5 -> R20,R21
 047A           ;             t2 -> R10
 047A           ;             t1 -> R14
 047A           ;           data -> y+17
 047A           ;     point_flag -> y+15
 047A           ;        channel -> y+13
                        .even
 047A           _turn_display::
 047A 0E940000          xcall push_arg4
 047E 0E940000          xcall push_gset5
 0482 2397              sbiw R28,3
 0484                   .dbline -1
 0484                   .dbline 195
 0484           ;  }
 0484           ;  WDR();
 0484           ;  led_on(j,d,dd,T1);
 0484           ;  
 0484           ; }
 0484           ; }
 0484           ; 
 0484           ; 
 0484           ; 
 0484           ; void turn_display(unsigned char channel,unsigned char point_flag,unsigned int data)
 0484           ; {
 0484                   .dbline 198
 0484           ; unsigned char t1,t2,t3,t4;
 0484           ; unsigned int t5;
 0484           ; if( pannel_led[channel].alarm_type==above)
 0484 84E1              ldi R24,20
 0486 0D84              ldd R0,y+13
 0488 809D              mul R24,R0
 048A F001              movw R30,R0
 048C 80E0              ldi R24,<_pannel_led+3
 048E 90E0              ldi R25,>_pannel_led+3
 0490 E80F              add R30,R24
 0492 F91F              adc R31,R25
 0494 8081              ldd R24,z+0
 0496 8A35              cpi R24,90
 0498 09F0              breq X4
 049A 3AC0              xjmp L110
 049C           X4:
 049C                   .dbline 199
 049C           ; {
 049C                   .dbline 200
 049C           ;  if( (pannel_led[channel].state==noack)||(pannel_led[channel].state==acked))    //上限报警指示
 049C 84E1              ldi R24,20
 049E 0D84              ldd R0,y+13
 04A0 809D              mul R24,R0
 04A2 80E0              ldi R24,<_pannel_led+13
 04A4 90E0              ldi R25,>_pannel_led+13
 04A6 F001              movw R30,R0
 04A8 E80F              add R30,R24
 04AA F91F              adc R31,R25
 04AC 8081              ldd R24,z+0
 04AE 8130              cpi R24,1
 04B0 41F0              breq L117
 04B2 80E0              ldi R24,<_pannel_led+13
 04B4 90E0              ldi R25,>_pannel_led+13
 04B6 F001              movw R30,R0
 04B8 E80F              add R30,R24
 04BA F91F              adc R31,R25
 04BC 8081              ldd R24,z+0
 04BE 8230              cpi R24,2
 04C0 29F4              brne L113
 04C2           L117:
 04C2                   .dbline 201
 04C2           ;    {
 04C2                   .dbline 202
 04C2           ;    PORTD |= 0x01;
 04C2 589A              sbi 0xb,0
 04C4                   .dbline 203
 04C4           ;    PORTD &= 0x7f;
 04C4 8BB1              in R24,0xb
 04C6 8F77              andi R24,127
 04C8 8BB9              out 0xb,R24
 04CA                   .dbline 204
 04CA           ;    }
 04CA 66C0              xjmp L111
 04CC           L113:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -