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

📄 displa.lst

📁 工控计数器ICCAVR的MAGE8程序LED数码显示+4键
💻 LST
📖 第 1 页 / 共 5 页
字号:
    0297 F409      BNE	0x0299
    0298 C433      RJMP	0x06CC
    0299 3183      CPI	R24,0x13
    029A E0E0      LDI	R30,0
    029B 079E      CPC	R25,R30
    029C F154      BLT	0x02C7
    029D 818F      LDD	R24,Y+7
    029E 8598      LDD	R25,Y+8
    029F 3187      CPI	R24,0x17
    02A0 E0E0      LDI	R30,0
    02A1 079E      CPC	R25,R30
    02A2 F409      BNE	0x02A4
    02A3 C0AF      RJMP	0x0353
    02A4 C022      RJMP	0x02C7
(0195) 		                                       {														
(0196) 												case    left:
(0197) 												fbit=2;
    02A5 E082      LDI	R24,2
    02A6 878F      STD	Y+15,R24
(0198) 												if(cbit<5) {cbit++;}
    02A7 8988      LDD	R24,Y+16
    02A8 3085      CPI	R24,5
    02A9 F420      BCC	0x02AE
    02AA 2E08      MOV	R0,R24
    02AB 9403      INC	R0
    02AC 8A08      STD	Y+16,R0
    02AD C019      RJMP	0x02C7
(0199) 												else          {cbit=0;}
    02AE 2400      CLR	R0
    02AF 8A08      STD	Y+16,R0
(0200) 												break;
    02B0 C016      RJMP	0x02C7
(0201) 												case    set:
(0202) 												if(fbit==2) 
    02B1 858F      LDD	R24,Y+15
    02B2 3082      CPI	R24,2
    02B3 F009      BEQ	0x02B5
    02B4 C4CD      RJMP	0x0782
(0203) 													{  
(0204) 													 pontdata=cbit;
    02B5 8808      LDD	R0,Y+16
    02B6 920001DB  STS	pontdata,R0
(0205) 													 ponddd[cbit]=0;
    02B8 E782      LDI	R24,0x72
    02B9 E091      LDI	R25,1
    02BA 2DE0      MOV	R30,R0
    02BB 27FF      CLR	R31
    02BC 0FE8      ADD	R30,R24
    02BD 1FF9      ADC	R31,R25
    02BE 2422      CLR	R2
    02BF 8220      STD	Z+0,R2
(0206) 													 EEPROMwrite(0x10,pontdata); 
    02C0 912001DB  LDS	R18,pontdata
    02C2 E100      LDI	R16,0x10
    02C3 E010      LDI	R17,0
    02C4 DA33      RCALL	_EEPROMwrite_extIO
(0207) 													 fbit=100;
    02C5 E684      LDI	R24,0x64
    02C6 878F      STD	Y+15,R24
    02C7 CFA4      RJMP	0x026C
(0208) 													 }
(0209) 												else     return ;
(0210) 												break;
(0211) 												case   set3s:
(0212) 												goto   menu2;
(0213) 												case   set_left3s:
(0214)                                                 goto   menu3;		  
(0215) 										      }
(0216) 										   }
(0217) 										 }
(0218) 						                break;
    02C8 C050      RJMP	0x0319
(0219) 										case    up:
(0220) 										if(fbit==2)
    02C9 858F      LDD	R24,Y+15
    02CA 3082      CPI	R24,2
    02CB F009      BEQ	0x02CD
    02CC C04C      RJMP	0x0319
(0221) 										{
(0222) 										if(cbit==1)      p[cbit]-=25; 
    02CD 8988      LDD	R24,Y+16
    02CE 3081      CPI	R24,1
    02CF F429      BNE	0x02D5
    02D0 DA81      RCALL	0x0D52
    02D1 2E48      MOV	R4,R24
    02D2 DA89      RCALL	0x0D5C
    02D3 5189      SUBI	R24,0x19
    02D4 8380      STD	Z+0,R24
(0223) 										if(p[cbit]<9)   p[cbit]++;  
    02D5 DA73      RCALL	<created procedures>
    02D6 8180      LDD	R24,Z+0
    02D7 3089      CPI	R24,0x9
    02D8 F428      BCC	0x02DE
    02D9 8848      LDD	R4,Y+16
    02DA DA81      RCALL	0x0D5C
    02DB 5F8F      SUBI	R24,0xFF
    02DC 8380      STD	Z+0,R24
    02DD C003      RJMP	0x02E1
(0224) 										else                 p[cbit]=0;
    02DE DA6A      RCALL	<created procedures>
    02DF 2422      CLR	R2
    02E0 8220      STD	Z+0,R2
(0225) 										if(cbit==1)      p[cbit]+=25;
    02E1 8988      LDD	R24,Y+16
    02E2 3081      CPI	R24,1
    02E3 F009      BEQ	0x02E5
    02E4 C034      RJMP	0x0319
    02E5 DA6C      RCALL	0x0D52
    02E6 2E48      MOV	R4,R24
    02E7 DA74      RCALL	0x0D5C
    02E8 5E87      SUBI	R24,0xE7
    02E9 8380      STD	Z+0,R24
(0226) 										}
(0227) 										break;
    02EA C02E      RJMP	0x0319
(0228) 										case    down:
(0229) 										if(fbit==2)
    02EB 858F      LDD	R24,Y+15
    02EC 3082      CPI	R24,2
    02ED F009      BEQ	0x02EF
    02EE C02A      RJMP	0x0319
(0230) 										{
(0231) 										if(cbit==1)      p[cbit]-=25; 
    02EF 8988      LDD	R24,Y+16
    02F0 3081      CPI	R24,1
    02F1 F429      BNE	0x02F7
    02F2 DA5F      RCALL	0x0D52
    02F3 2E48      MOV	R4,R24
    02F4 DA67      RCALL	0x0D5C
    02F5 5189      SUBI	R24,0x19
    02F6 8380      STD	Z+0,R24
(0232) 										if(p[cbit]>0)    p[cbit]--;      
    02F7 DA51      RCALL	<created procedures>
    02F8 8020      LDD	R2,Z+0
    02F9 2433      CLR	R3
    02FA 1432      CP	R3,R2
    02FB F430      BCC	0x0302
    02FC DA55      RCALL	0x0D52
    02FD 8848      LDD	R4,Y+16
    02FE DA5D      RCALL	0x0D5C
    02FF 5081      SUBI	R24,1
    0300 8380      STD	Z+0,R24
    0301 C003      RJMP	0x0305
(0233) 										else                p[cbit]=9;
    0302 DA46      RCALL	<created procedures>
    0303 E089      LDI	R24,0x9
    0304 8380      STD	Z+0,R24
(0234) 										if(cbit==1)      p[cbit]+=25;
    0305 8988      LDD	R24,Y+16
    0306 3081      CPI	R24,1
    0307 F489      BNE	0x0319
    0308 DA49      RCALL	0x0D52
    0309 2E48      MOV	R4,R24
    030A DA51      RCALL	0x0D5C
    030B 5E87      SUBI	R24,0xE7
    030C 8380      STD	Z+0,R24
(0235) 										}
(0236) 										break;
    030D C00B      RJMP	0x0319
(0237) 										case    left:
(0238) 										fbit=2;
    030E E082      LDI	R24,2
    030F 878F      STD	Y+15,R24
(0239) 										if(cbit<1)      cbit++;
    0310 8988      LDD	R24,Y+16
    0311 3081      CPI	R24,1
    0312 F420      BCC	0x0317
    0313 2E08      MOV	R0,R24
    0314 9403      INC	R0
    0315 8A08      STD	Y+16,R0
    0316 C002      RJMP	0x0319
(0240) 										else               cbit=0;
    0317 2400      CLR	R0
    0318 8A08      STD	Y+16,R0
    0319 CEF7      RJMP	0x0211
(0241) 						                break;
(0242) 										case     set3s:
(0243) 										goto   menu2;
(0244) 										case   set_left3s:
(0245)                                         goto   menu3;	
(0246) 									 }   //---------------------------------------------------------------------trdata   
(0247) 								}
(0248) 							}		 
(0249) 				            break;
    031A C036      RJMP	0x0351
(0250) 						    case    up:
(0251) 						    if(fbit==2)
    031B 858F      LDD	R24,Y+15
    031C 3082      CPI	R24,2
    031D F009      BEQ	0x031F
    031E C032      RJMP	0x0351
(0252) 							{
(0253) 							if(p[cbit]<9)    p[cbit]++;  
    031F DA29      RCALL	<created procedures>
    0320 8180      LDD	R24,Z+0
    0321 3089      CPI	R24,0x9
    0322 F428      BCC	0x0328
    0323 8848      LDD	R4,Y+16
    0324 DA37      RCALL	0x0D5C
    0325 5F8F      SUBI	R24,0xFF
    0326 8380      STD	Z+0,R24
    0327 C029      RJMP	0x0351
(0254) 							else                 p[cbit]=0;
    0328 DA20      RCALL	<created procedures>
    0329 2422      CLR	R2
    032A 8220      STD	Z+0,R2
(0255) 							}
(0256) 							break;
    032B C025      RJMP	0x0351
(0257) 							case    down:
(0258) 							if(fbit==2)
    032C 858F      LDD	R24,Y+15
    032D 3082      CPI	R24,2
    032E F009      BEQ	0x0330
    032F C021      RJMP	0x0351
(0259) 							{
(0260) 							if(p[cbit]>0)   p[cbit]--;     
    0330 DA18      RCALL	<created procedures>
    0331 8020      LDD	R2,Z+0
    0332 2433      CLR	R3
    0333 1432      CP	R3,R2
    0334 F430      BCC	0x033B
    0335 DA1C      RCALL	0x0D52
    0336 8848      LDD	R4,Y+16
    0337 DA24      RCALL	0x0D5C
    0338 5081      SUBI	R24,1
    0339 8380      STD	Z+0,R24
    033A C016      RJMP	0x0351
(0261) 							else                 p[cbit]=9;
    033B DA0D      RCALL	<created procedures>
    033C E089      LDI	R24,0x9
    033D 8380      STD	Z+0,R24
(0262) 							}
(0263) 							break;
    033E C012      RJMP	0x0351
(0264) 							case    left:
(0265) 							fbit=2; 
    033F E082      LDI	R24,2
    0340 878F      STD	Y+15,R24
(0266) 							if(cbit<5)         cbit++;
    0341 8988      LDD	R24,Y+16
    0342 3085      CPI	R24,5
    0343 F420      BCC	0x0348
    0344 2E08      MOV	R0,R24
    0345 9403      INC	R0
    0346 8A08      STD	Y+16,R0
    0347 C002      RJMP	0x034A
(0267) 							else                cbit=0;
    0348 2400      CLR	R0
    0349 8A08      STD	Y+16,R0
(0268) 							if(p[cbit]==10) { p[cbit]=0; }
    034A D9FE      RCALL	<created procedures>
    034B 8180      LDD	R24,Z+0
    034C 308A      CPI	R24,0xA
    034D F419      BNE	0x0351
    034E DA08      RCALL	0x0D57
    034F 2422      CLR	R2
    0350 8220      STD	Z+0,R2
    0351 CE66      RJMP	0x01B8
(0269) 						    break;
(0270) 							case     set3s:
(0271) 							goto   menu2;
(0272) 							case   set_left3s:
(0273)                             goto   menu3;	
(0274) 					   }		   
(0275) 		   }
(0276) 		   break;
    0352 C42F      RJMP	0x0782
(0277) 		   case   set3s:
(0278) menu2:	
(0279)            if((PINB&0X0f)!=0x0f) goto  menu2;	
    0353 B183      IN	R24,0x03
    0354 708F      ANDI	R24,0xF
    0355 308F      CPI	R24,0xF
    0356 F409      BNE	0x0358
    0357 C370      RJMP	0x06C8
    0358 CFFA      RJMP	0x0353
(0280) 		   while(1)
(0281) 		  {
(0282) psxsetmu2:
(0283)             if(fbit!=2)  sandcnd_display(psx,timeset[tdbit],0);
    0359 858F      LDD	R24,Y+15
    035A 3082      CPI	R24,2
    035B F061      BEQ	0x0368
    035C 2422      CLR	R2
    035D 822A      STD	Y+2,R2
    035E E084      LDI	R24,4
    035F 8809      LDD	R0,Y+17
    0360 9D80      MUL	R24,R0
    0361 01F0      MOVW	R30,R0
    0362 EF81      LDI	R24,0xF1
    0363 DA6F      RCALL	0x0DD3
    0364 8042      LDD	R4,Z+2
    0365 8053      LDD	R5,Z+3
    0366 DB76      RCALL	0x0EDD
    0367 D445      RCALL	_sandcnd_display
(0284) 			o=psx;
    0368 E482      LDI	R24,0x42
    0369 DA5B      RCALL	0x0DC5
(0285) 			o[1]=tdbit+1;
    036A 8989      LDD	R24,Y+17
    036B 5F8F      SUBI	R24,0xFF
    036C DAB0      RCALL	0x0E1D
    036D 8381      STD	Z+1,R24
    036E DA85      RCALL	0x0DF4
(0286) 		    key=display_flash(fbit,cbit,2); 	
    036F D45E      RCALL	_display_flash
    0370 DA9E      RCALL	0x0E0F
(0287) 		    switch (key)
    0371 823C      STD	Y+4,R3
    0372 822B      STD	Y+3,R2
    0373 01C1      MOVW	R24,R2
    0374 3183      CPI	R24,0x13
    0375 E0E0      LDI	R30,0
    0376 079E      CPC	R25,R30
    0377 F409      BNE	0x0379
    0378 C353      RJMP	0x06CC
    0379 E183      LDI	R24,0x13
    037A 1582      CP	R24,R2
    037B 0593      CPC	R25,R3
    037C F0B4      BLT	0x0393
    037D 818B      LDD	R24,Y+3
    037E 819C      LDD	R25,Y+4
    037F 3087      CPI	R24,7
    0380 E0E0      LDI	R30,0
    0381 079E      CPC	R25,R30
    0382 F0C1      BEQ	0x039B
    0383 308B      CPI	R24,0xB
    0384 E0E0      LDI	R30,0
    0385 079E      CPC	R25,R30
    0386 F409      BNE	0x0388
    0387 C32E      RJMP	0x06B6
    0388 308D      CPI	R24,0xD
    0389 E0E0      LDI	R30,0
    038A 079E      CPC	R25,R30
    038B F409      BNE	0x038D
    038C C316      RJMP	0x06A3
    038D 308E      CPI	R24,0xE
    038E E0E0      LDI	R30,0
    038F 079E      CPC	R25,R30
    0390 F409      BNE	0x0392
    0391 C300      RJMP	0x0692
    0392 C335      RJMP	0x06C8
    0393 818B      LDD	R24,Y+3
    0394 819C      LDD	R25,Y+4
    0395 3187      CPI	R24,0x17
    0396 E0E0      LDI	R30,0
    0397 079E      CPC	R25,R30
    0398 F409      BNE	0x039A
    0399 C3E8      RJMP	0x0782
    039A C32D      RJMP	0x06C8
(0288) 		    {
(0289) 			 case  set:
(0290) 			  if(fbit==2)
    039B 858F      LDD	R24,Y+15
    039C 3082      CPI	R24,2
    039D F4A1      BNE	0x03B2
(0291) 			   {
(0292) 			    timeset[tdbit]=process_add();
    039E D6BF      RCALL	_process_add
    039F 0118      MOVW	R2,R16
    03A0 0129      MOVW	R4,R18

⌨️ 快捷键说明

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