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

📄 main.lis

📁 433M收发,内有PCB(用99打开),源程序ICC打开,用了IC发送和三极管两种,接收用RX3310
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 033A           L69:
 033A                   .dbline 246
 033A           ;                }
 033A           ;        if(D4FC!=0)
 033A 20901A00          lds R2,_D4FC
 033E 2220              tst R2
 0340 39F0              breq L71
 0342                   .dbline 247
 0342           ;            {
 0342                   .dbline 248
 0342           ;                D4FC=0;
 0342 2224              clr R2
 0344 20921A00          sts _D4FC,R2
 0348                   .dbline 249
 0348           ;                D5FC=1;
 0348 81E0              ldi R24,1
 034A 80931900          sts _D5FC,R24
 034E                   .dbline 250
 034E           ;                goto exit_1;
 034E 10C0              rjmp L66
 0350           L71:
 0350                   .dbline 252
 0350           ;                }
 0350           ;        if(D5FC!=0)
 0350 20901900          lds R2,_D5FC
 0354 2220              tst R2
 0356 61F0              breq L73
 0358                   .dbline 253
 0358           ;            {
 0358                   .dbline 254
 0358           ;                D5FC=1;
 0358 81E0              ldi R24,1
 035A 80931900          sts _D5FC,R24
 035E                   .dbline 255
 035E           ;                D4FC=1;
 035E 80931A00          sts _D4FC,R24
 0362                   .dbline 256
 0362           ;                D3FC=1; 
 0362 80931B00          sts _D3FC,R24
 0366                   .dbline 257
 0366           ;                DECODER_FLAG_L;
 0366 80910200          lds R24,_flag
 036A 8B7F              andi R24,251
 036C 80930200          sts _flag,R24
 0370                   .dbline 258
 0370           ;                goto exit_1;
 0370           L73:
 0370           L66:
 0370                   .dbline 260
 0370           ;                }
 0370           ;       exit_1:;
 0370                   .dbline 261
 0370           ;        }
 0370           L62:
 0370                   .dbline 262
 0370           ;        e=(key_2());
 0370 00D0              rcall _key_2
 0372 A02E              mov R10,R16
 0374                   .dbline 263
 0374           ;    if(e==1)                      //闪烁数据加一
 0374 0130              cpi R16,1
 0376 09F0              breq X1
 0378 ABC0              rjmp L75
 037A           X1:
 037A                   .dbline 264
 037A           ;      {        
 037A                   .dbline 265
 037A           ;           sec=30;
 037A 8EE1              ldi R24,30
 037C 80930400          sts _sec,R24
 0380                   .dbline 266
 0380           ;           if(D1FC!=0)
 0380 20901D00          lds R2,_D1FC
 0384 2220              tst R2
 0386 09F4              brne X2
 0388 37C0              rjmp L77
 038A           X2:
 038A                   .dbline 267
 038A           ;                  {
 038A                   .dbline 268
 038A           ;                  if(d<99) d++;         //转成BCD到显示
 038A 6336              cpi R22,99
 038C 08F4              brsh L79
 038E                   .dbline 268
 038E 6395              inc R22
 0390           L79:
 0390                   .dbline 269
 0390           ;                  dipdata[1]=diptable[(d/10)];
 0390 2AE0              ldi R18,10
 0392 30E0              ldi R19,0
 0394 062F              mov R16,R22
 0396 1127              clr R17
 0398 00D0              rcall div16s
 039A F801              movw R30,R16
 039C 80E0              ldi R24,<_diptable
 039E 90E0              ldi R25,>_diptable
 03A0 E80F              add R30,R24
 03A2 F91F              adc R31,R25
 03A4 E491              lpm R30,Z
 03A6 E0930C00          sts _dipdata+1,R30
 03AA                   .dbline 270
 03AA           ;                  dipdata[2]=diptable[d%10];
 03AA 2AE0              ldi R18,10
 03AC 30E0              ldi R19,0
 03AE 062F              mov R16,R22
 03B0 1127              clr R17
 03B2 00D0              rcall mod16s
 03B4 F801              movw R30,R16
 03B6 80E0              ldi R24,<_diptable
 03B8 90E0              ldi R25,>_diptable
 03BA E80F              add R30,R24
 03BC F91F              adc R31,R25
 03BE E491              lpm R30,Z
 03C0 E0930D00          sts _dipdata+2,R30
 03C4                   .dbline 271
 03C4           ;                  lookup_led(d);
 03C4 062F              mov R16,R22
 03C6 FDDE              rcall _lookup_led
 03C8                   .dbline 272
 03C8           ;                  if((d3==0)&&(d4==0)&&(d5==0)) //未用过的EEPROM
 03C8 20901700          lds R2,_d3
 03CC 2220              tst R2
 03CE A1F4              brne L83
 03D0 20901600          lds R2,_d4
 03D4 2220              tst R2
 03D6 81F4              brne L83
 03D8 20901500          lds R2,_d5
 03DC 2220              tst R2
 03DE 61F4              brne L83
 03E0                   .dbline 273
 03E0           ;                     {   
 03E0                   .dbline 274
 03E0           ;                         EEPROM_write((d*4)+2,0);
 03E0 2227              clr R18
 03E2 84E0              ldi R24,4
 03E4 869F              mul R24,R22
 03E6 002D              mov R16,R0
 03E8 0E5F              subi R16,254    ; addi 2
 03EA 00D0              rcall _EEPROM_write
 03EC                   .dbline 275
 03EC           ;                         EEPROM_write((d*4)+3,0);
 03EC 2227              clr R18
 03EE 84E0              ldi R24,4
 03F0 869F              mul R24,R22
 03F2 002D              mov R16,R0
 03F4 0D5F              subi R16,253    ; addi 3
 03F6 00D0              rcall _EEPROM_write
 03F8                   .dbline 276
 03F8           ;                         }
 03F8           L83:
 03F8                   .dbline 277
 03F8           ;                  }
 03F8           L77:
 03F8                   .dbline 278
 03F8           ;               if((D3FC!=0)&&(D4FC==0))
 03F8 20901B00          lds R2,_D3FC
 03FC 2220              tst R2
 03FE E1F0              breq L85
 0400 20901A00          lds R2,_D4FC
 0404 2220              tst R2
 0406 C1F4              brne L85
 0408                   .dbline 279
 0408           ;                  {
 0408                   .dbline 280
 0408           ;                  if(d3<9) d3++;
 0408 80911700          lds R24,_d3
 040C 8930              cpi R24,9
 040E 18F4              brsh L87
 0410                   .dbline 280
 0410 8F5F              subi R24,255    ; addi 1
 0412 80931700          sts _d3,R24
 0416           L87:
 0416                   .dbline 281
 0416           ;                  dipdata[3]=diptable[d3];
 0416 80E0              ldi R24,<_diptable
 0418 90E0              ldi R25,>_diptable
 041A E0911700          lds R30,_d3
 041E FF27              clr R31
 0420 E80F              add R30,R24
 0422 F91F              adc R31,R25
 0424 E491              lpm R30,Z
 0426 E0930E00          sts _dipdata+3,R30
 042A                   .dbline 282
 042A           ;                  EEPROM_write((d*4)+2,d3); 
 042A 20911700          lds R18,_d3
 042E 84E0              ldi R24,4
 0430 869F              mul R24,R22
 0432 002D              mov R16,R0
 0434 0E5F              subi R16,254    ; addi 2
 0436 00D0              rcall _EEPROM_write
 0438                   .dbline 283
 0438           ;                  } 
 0438           L85:
 0438                   .dbline 284
 0438           ;               if((D4FC!=0)&&(D5FC==0))
 0438 20901A00          lds R2,_D4FC
 043C 2220              tst R2
 043E 11F1              breq L90
 0440 20901900          lds R2,_D5FC
 0444 2220              tst R2
 0446 F1F4              brne L90
 0448                   .dbline 285
 0448           ;                  {
 0448                   .dbline 286
 0448           ;                  if(d4<9) d4++;
 0448 80911600          lds R24,_d4
 044C 8930              cpi R24,9
 044E 18F4              brsh L92
 0450                   .dbline 286
 0450 8F5F              subi R24,255    ; addi 1
 0452 80931600          sts _d4,R24
 0456           L92:
 0456                   .dbline 287
 0456           ;                  dipdata[4]=diptable[d4];
 0456 80E0              ldi R24,<_diptable
 0458 90E0              ldi R25,>_diptable
 045A E0911600          lds R30,_d4
 045E FF27              clr R31
 0460 E80F              add R30,R24
 0462 F91F              adc R31,R25
 0464 E491              lpm R30,Z
 0466 E0930F00          sts _dipdata+4,R30
 046A                   .dbline 288
 046A           ;                  j=((d4<<4)+d5);
 046A 20901500          lds R2,_d5
 046E 40911600          lds R20,_d4
 0472 4F70              andi R20,#0x0F
 0474 4295              swap R20
 0476 420D              add R20,R2
 0478                   .dbline 289
 0478           ;                  EEPROM_write((d*4)+3,j); 
 0478 242F              mov R18,R20
 047A 84E0              ldi R24,4
 047C 869F              mul R24,R22
 047E 002D              mov R16,R0
 0480 0D5F              subi R16,253    ; addi 3
 0482 00D0              rcall _EEPROM_write
 0484                   .dbline 290
 0484           ;                  }
 0484           L90:
 0484                   .dbline 291
 0484           ;               if((D5FC!=0)&&(D4FC==0))
 0484 20901900          lds R2,_D5FC
 0488 2220              tst R2
 048A 11F1              breq L95
 048C 20901A00          lds R2,_D4FC
 0490 2220              tst R2
 0492 F1F4              brne L95
 0494                   .dbline 292
 0494           ;                  {
 0494                   .dbline 293
 0494           ;                  if(d5<9) d5++;
 0494 80911500          lds R24,_d5
 0498 8930              cpi R24,9
 049A 18F4              brsh L97
 049C                   .dbline 293
 049C 8F5F              subi R24,255    ; addi 1
 049E 80931500          sts _d5,R24
 04A2           L97:
 04A2                   .dbline 294
 04A2           ;                  dipdata[5]=diptable[d5];
 04A2 80E0              ldi R24,<_diptable
 04A4 90E0              ldi R25,>_diptable
 04A6 E0911500          lds R30,_d5
 04AA FF27              clr R31
 04AC E80F              add R30,R24
 04AE F91F              adc R31,R25
 04B0 E491              lpm R30,Z
 04B2 E0931000          sts _dipdata+5,R30
 04B6                   .dbline 295
 04B6           ;                  j=((d4<<4)+d5);
 04B6 20901500          lds R2,_d5
 04BA 40911600          lds R20,_d4
 04BE 4F70              andi R20,#0x0F
 04C0 4295              swap R20
 04C2 420D              add R20,R2
 04C4                   .dbline 296
 04C4           ;                  EEPROM_write((d*4)+3,j); 
 04C4 242F              mov R18,R20
 04C6 84E0              ldi R24,4
 04C8 869F              mul R24,R22
 04CA 002D              mov R16,R0
 04CC 0D5F              subi R16,253    ; addi 3
 04CE 00D0              rcall _EEPROM_write
 04D0                   .dbline 297
 04D0           ;                  }
 04D0           L95:
 04D0                   .dbline 298
 04D0           ;        }
 04D0           L75:
 04D0                   .dbline 299
 04D0           ;        if(e==2)
 04D0 8A2D              mov R24,R10
 04D2 8230              cpi R24,2
 04D4 99F4              brne L100
 04D6                   .dbline 300
 04D6           ;          {
 04D6                   .dbline 301
 04D6           ;          if((PIND&0x20)==0)
 04D6 4D99              sbic 0x9,5
 04D8 11C0              rjmp L102
 04DA                   .dbline 302
 04DA           ;             {
 04DA                   .dbline 303
 04DA           ;                 for(i=0;i<255;i++)
 04DA CC24              clr R12
 04DC 04C0              rjmp L107
 04DE           L104:
 04DE                   .dbline 304
 04DE                   .dbline 305
 04DE 2FEF              ldi R18,255
 04E0 0C2D              mov R16,R12
 04E2 00D0              rcall _EEPROM_write
 04E4                   .dbline 306
 04E4           L105:
 04E4                   .dbline 303
 04E4 C394              inc R12
 04E6           L107:
 04E6                   .dbline 303
 04E6 8C2D              mov R24,R12
 04E8 8F3F              cpi R24,255
 04EA C8F3              brlo L104
 04EC                   .dbline 307
 04EC           ;                     {
 04EC           ;                         EEPROM_write(i,0xff);
 04EC           ;                         }     
 04EC           ;                         flagh |=0x01;
 04EC 80910300          lds R24,_flagh
 04F0 8160              ori R24,1
 04F2 80930300          sts _flagh,R24
 04F6                   .dbline 308
 04F6           ;                         SPFC=1;
 04F6 81E0              ldi R24,1
 04F8 80930800          sts _SPFC,R24
 04FC                   .dbline 309
 04FC           ;                 }
 04FC           L102:
 04FC                   .dbline 310
 04FC           ;          }
 04FC           L100:
 04FC                   .dbline 311
 04FC           ;        e=(key_3());
 04FC 00D0              rcall _key_3
 04FE A02E              mov R10,R16

⌨️ 快捷键说明

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