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

📄 main.lis

📁 433M收发,内有PCB(用99打开),源程序ICC打开,用了IC发送和三极管两种,接收用RX3310
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 01B6           L36:
 01B6                   .dbline 158
 01B6 6436              cpi R22,100
 01B8 18F3              brlo L33
 01BA           L35:
 01BA                   .dbline 177
 01BA           ;   }
 01BA           ;   else
 01BA           ;     { 
 01BA           ;     addr=0xff;
 01BA           ; 
 01BA           ;       }
 01BA           ; }
 01BA           ;     return(addr); 
 01BA 00910B00          lds R16,_addr
 01BE                   .dbline -2
 01BE           L32:
 01BE 00D0              rcall pop_gset4
 01C0                   .dbline 0 ; func end
 01C0 0895              ret
 01C2                   .dbsym r b 12 c
 01C2                   .dbsym r a 10 c
 01C2                   .dbsym r i 22 c
 01C2                   .dbsym r j 20 c
 01C2                   .dbend
 01C2                   .dbfunc e lookup_led _lookup_led fV
 01C2           ;              a -> R22
 01C2           ;              b -> R20
 01C2           ;              j -> R10
                        .even
 01C2           _lookup_led::
 01C2 00D0              rcall push_gset3
 01C4 A02E              mov R10,R16
 01C6                   .dbline -1
 01C6                   .dbline 181
 01C6           ; }  
 01C6           ; 
 01C6           ; void lookup_led(unsigned char j)
 01C6           ;    {
 01C6                   .dbline 183
 01C6           ;    unsigned char a,b;
 01C6           ;    WDR();
 01C6 A895              wdr
 01C8                   .dbline 184
 01C8           ;    j=(j*4)+2;
 01C8 84E0              ldi R24,4
 01CA 8A9D              mul R24,R10
 01CC 802D              mov R24,R0
 01CE 8E5F              subi R24,254    ; addi 2
 01D0 A82E              mov R10,R24
 01D2                   .dbline 185
 01D2           ;    a=EEPROM_read(j);     
 01D2 082F              mov R16,R24
 01D4 00D0              rcall _EEPROM_read
 01D6 602F              mov R22,R16
 01D8                   .dbline 186
 01D8           ;    j++;
 01D8 A394              inc R10
 01DA                   .dbline 187
 01DA           ;    b=EEPROM_read(j);
 01DA 0A2D              mov R16,R10
 01DC 00D0              rcall _EEPROM_read
 01DE 402F              mov R20,R16
 01E0                   .dbline 188
 01E0           ;    j++;
 01E0 A394              inc R10
 01E2                   .dbline 189
 01E2           ;    d3=a;
 01E2 60931700          sts _d3,R22
 01E6                   .dbline 190
 01E6           ;    d4=(b&0xf0)>>4;
 01E6 842F              mov R24,R20
 01E8 807F              andi R24,240
 01EA 8295              swap R24
 01EC 8F70              andi R24,#0x0F
 01EE 80931600          sts _d4,R24
 01F2                   .dbline 191
 01F2           ;    d5=(b&0x0f);
 01F2 842F              mov R24,R20
 01F4 8F70              andi R24,15
 01F6 80931500          sts _d5,R24
 01FA                   .dbline 192
 01FA           ;    if(d3<10) dipdata[3]=diptable[d3];
 01FA 6A30              cpi R22,10
 01FC 50F4              brsh L41
 01FE                   .dbline 192
 01FE 80E0              ldi R24,<_diptable
 0200 90E0              ldi R25,>_diptable
 0202 E62F              mov R30,R22
 0204 FF27              clr R31
 0206 E80F              add R30,R24
 0208 F91F              adc R31,R25
 020A E491              lpm R30,Z
 020C E0930E00          sts _dipdata+3,R30
 0210 08C0              rjmp L42
 0212           L41:
 0212                   .dbline 194
 0212           ;    else 
 0212           ;    {dipdata[3]=diptable[0];d3=0;}
 0212                   .dbline 194
 0212 E0E0              ldi R30,<_diptable
 0214 F0E0              ldi R31,>_diptable
 0216 E491              lpm R30,Z
 0218 E0930E00          sts _dipdata+3,R30
 021C                   .dbline 194
 021C 2224              clr R2
 021E 20921700          sts _d3,R2
 0222                   .dbline 194
 0222           L42:
 0222                   .dbline 195
 0222           ;    if(d4<10) dipdata[4]=diptable[d4];
 0222 80911600          lds R24,_d4
 0226 8A30              cpi R24,10
 0228 58F4              brsh L45
 022A                   .dbline 195
 022A 80E0              ldi R24,<_diptable
 022C 90E0              ldi R25,>_diptable
 022E E0911600          lds R30,_d4
 0232 FF27              clr R31
 0234 E80F              add R30,R24
 0236 F91F              adc R31,R25
 0238 E491              lpm R30,Z
 023A E0930F00          sts _dipdata+4,R30
 023E 08C0              rjmp L46
 0240           L45:
 0240                   .dbline 197
 0240           ;    else 
 0240           ;    {dipdata[4]=diptable[0];d4=0;}
 0240                   .dbline 197
 0240 E0E0              ldi R30,<_diptable
 0242 F0E0              ldi R31,>_diptable
 0244 E491              lpm R30,Z
 0246 E0930F00          sts _dipdata+4,R30
 024A                   .dbline 197
 024A 2224              clr R2
 024C 20921600          sts _d4,R2
 0250                   .dbline 197
 0250           L46:
 0250                   .dbline 198
 0250           ;    if(d5<10)  dipdata[5]=diptable[d5];
 0250 80911500          lds R24,_d5
 0254 8A30              cpi R24,10
 0256 58F4              brsh L49
 0258                   .dbline 198
 0258 80E0              ldi R24,<_diptable
 025A 90E0              ldi R25,>_diptable
 025C E0911500          lds R30,_d5
 0260 FF27              clr R31
 0262 E80F              add R30,R24
 0264 F91F              adc R31,R25
 0266 E491              lpm R30,Z
 0268 E0931000          sts _dipdata+5,R30
 026C 08C0              rjmp L50
 026E           L49:
 026E                   .dbline 200
 026E                   .dbline 200
 026E E0E0              ldi R30,<_diptable
 0270 F0E0              ldi R31,>_diptable
 0272 E491              lpm R30,Z
 0274 E0931000          sts _dipdata+5,R30
 0278                   .dbline 200
 0278 2224              clr R2
 027A 20921500          sts _d5,R2
 027E                   .dbline 200
 027E           L50:
 027E                   .dbline -2
 027E           L40:
 027E 00D0              rcall pop_gset3
 0280                   .dbline 0 ; func end
 0280 0895              ret
 0282                   .dbsym r a 22 c
 0282                   .dbsym r b 20 c
 0282                   .dbsym r j 10 c
 0282                   .dbend
 0282                   .dbfunc e set_led _set_led fV
 0282           ;              c -> <dead>
 0282           ;              b -> <dead>
 0282           ;              a -> <dead>
 0282           ;              j -> R20
 0282           ;              d -> R22
 0282           ;              e -> R10
 0282           ;              i -> R12
                        .even
 0282           _set_led::
 0282 00D0              rcall push_gset4
 0284                   .dbline -1
 0284                   .dbline 204
 0284           ;    else 
 0284           ;    {dipdata[5]=diptable[0];d5=0;}
 0284           ;    }
 0284           ; //设定模式
 0284           ; void set_led(void)
 0284           ; {
 0284                   .dbline 205
 0284           ; unsigned char i,j,a,b,c,d=0,e;
 0284 6627              clr R22
 0286                   .dbline 206
 0286           ; sec=30;
 0286 8EE1              ldi R24,30
 0288 80930400          sts _sec,R24
 028C                   .dbline 207
 028C           ; flagh &=~0x01; 
 028C 80910300          lds R24,_flagh
 0290 8E7F              andi R24,254
 0292 80930300          sts _flagh,R24
 0296                   .dbline 208
 0296           ; dipdata[0]=diptable[0];               //在上一行显示记忆体位置
 0296 E0E0              ldi R30,<_diptable
 0298 F0E0              ldi R31,>_diptable
 029A E491              lpm R30,Z
 029C E0930B00          sts _dipdata,R30
 02A0                   .dbline 209
 02A0           ; dipdata[1]=diptable[0]; 
 02A0 E0E0              ldi R30,<_diptable
 02A2 F0E0              ldi R31,>_diptable
 02A4 E491              lpm R30,Z
 02A6 E0930C00          sts _dipdata+1,R30
 02AA                   .dbline 210
 02AA           ; dipdata[2]=diptable[0];
 02AA E0E0              ldi R30,<_diptable
 02AC F0E0              ldi R31,>_diptable
 02AE E491              lpm R30,Z
 02B0 E0930D00          sts _dipdata+2,R30
 02B4                   .dbline 211
 02B4           ; lookup_led(d);                         //下一行显示门牌号
 02B4 062F              mov R16,R22
 02B6 85DF              rcall _lookup_led
 02B8                   .dbline 213
 02B8           ; 
 02B8           ; D1FC=1;
 02B8 81E0              ldi R24,1
 02BA 80931D00          sts _D1FC,R24
 02BE 01C0              rjmp L57
 02C0           L56:
 02C0                   .dbline 215
 02C0                   .dbline 216
 02C0 A895              wdr
 02C2                   .dbline 217
 02C2           L57:
 02C2                   .dbline 214
 02C2           ;               while(!(PIND&0x80)) 
 02C2 4F9B              sbis 0x9,7
 02C4 FDCF              rjmp L56
 02C6 78C2              rjmp L60
 02C8           L59:
 02C8                   .dbline 219
 02C8           ;               {
 02C8           ;               WDR(); 
 02C8           ;               }
 02C8           ; while(!(flagh&0x01))
 02C8           ;   {
 02C8                   .dbline 220
 02C8           ;   WDR();
 02C8 A895              wdr
 02CA                   .dbline 221
 02CA           ;   i=key_1();
 02CA 00D0              rcall _key_1
 02CC C02E              mov R12,R16
 02CE                   .dbline 222
 02CE           ;   if(i==1)                      //设置闪烁位
 02CE 0130              cpi R16,1
 02D0 09F0              breq X0
 02D2 4EC0              rjmp L62
 02D4           X0:
 02D4                   .dbline 223
 02D4           ;      {
 02D4                   .dbline 224
 02D4           ;         WDR();
 02D4 A895              wdr
 02D6                   .dbline 225
 02D6           ;        sec=30;
 02D6 8EE1              ldi R24,30
 02D8 80930400          sts _sec,R24
 02DC                   .dbline 226
 02DC           ;        if((D3FC!=0)&&(D4FC!=0)&&(D5FC!=0))
 02DC 20901B00          lds R2,_D3FC
 02E0 2220              tst R2
 02E2 A9F0              breq L64
 02E4 20901A00          lds R2,_D4FC
 02E8 2220              tst R2
 02EA 89F0              breq L64
 02EC 20901900          lds R2,_D5FC
 02F0 2220              tst R2
 02F2 69F0              breq L64
 02F4                   .dbline 227
 02F4           ;            {
 02F4                   .dbline 228
 02F4           ;                D3FC=0;
 02F4 2224              clr R2
 02F6 20921B00          sts _D3FC,R2
 02FA                   .dbline 229
 02FA           ;                D4FC=0;
 02FA 20921A00          sts _D4FC,R2
 02FE                   .dbline 230
 02FE           ;                D5FC=0;
 02FE 20921900          sts _D5FC,R2
 0302                   .dbline 231
 0302           ;                flagh |=0x01;
 0302 80910300          lds R24,_flagh
 0306 8160              ori R24,1
 0308 80930300          sts _flagh,R24
 030C                   .dbline 232
 030C           ;                goto exit_1;
 030C 31C0              rjmp L66
 030E           L64:
 030E                   .dbline 234
 030E           ;                }
 030E           ;        if(D1FC!=0)     
 030E 20901D00          lds R2,_D1FC
 0312 2220              tst R2
 0314 39F0              breq L67
 0316                   .dbline 235
 0316           ;            {
 0316                   .dbline 236
 0316           ;                D1FC=0;
 0316 2224              clr R2
 0318 20921D00          sts _D1FC,R2
 031C                   .dbline 237
 031C           ;                D3FC=1;
 031C 81E0              ldi R24,1
 031E 80931B00          sts _D3FC,R24
 0322                   .dbline 238
 0322           ;                goto exit_1;
 0322 26C0              rjmp L66
 0324           L67:
 0324                   .dbline 240
 0324           ;                }
 0324           ;        if(D3FC!=0)
 0324 20901B00          lds R2,_D3FC
 0328 2220              tst R2
 032A 39F0              breq L69
 032C                   .dbline 241
 032C           ;            {
 032C                   .dbline 242
 032C           ;                D3FC=0;
 032C 2224              clr R2
 032E 20921B00          sts _D3FC,R2
 0332                   .dbline 243
 0332           ;                D4FC=1;
 0332 81E0              ldi R24,1
 0334 80931A00          sts _D4FC,R24
 0338                   .dbline 244
 0338           ;                goto exit_1;
 0338 1BC0              rjmp L66

⌨️ 快捷键说明

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