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

📄 clock.lst

📁 单片机开发资料光盘-双龙-686M.zip
💻 LST
📖 第 1 页 / 共 3 页
字号:
(0234)  PORTC=0b00010001;
    0206 E181      LDI	R24,0x11
    0207 BB85      OUT	P15,R24
(0235)  delay_ms(30);
    0208 E10E      LDI	R16,0x1E
    0209 E010      LDI	R17,0
    020A D0A5      RCALL	_delay_ms
(0236)  send_byte(0xa4);
    020B EA04      LDI	R16,0xA4
    020C DE45      RCALL	_send_byte
(0237)  setcs;
    020D 9AAC      SBI	P15,4
(0238)  initdis();
    020E DE6C      RCALL	_initdis
(0239)  opentime();
    020F DF60      RCALL	_opentime
    0210 C04D      RJMP	0x025E
(0240)  while(1)
(0241)    {
(0242) 	if(flag==0x01)
    0211 91800060  LDS	R24,0x60
    0213 3081      CPI	R24,1
    0214 F459      BNE	0x0220
(0243)       {
(0244) 	   if(dflag==0)
    0215 90200061  LDS	R2,0x61
    0217 2022      TST	R2
    0218 F411      BNE	0x021B
(0245) 	     inctime();  
    0219 DF94      RCALL	_inctime
    021A C001      RJMP	0x021C
(0246) 	   else
(0247) 	     dectime();
    021B DFBA      RCALL	_dectime
(0248) 	   display();
    021C DF60      RCALL	_display
(0249) 	   flag=0;
    021D 2422      CLR	R2
    021E 92200060  STS	R2,0x60
(0250) 	  }
(0251) 	if((PINC&0x02)==0)//检查shift按键
    0220 9999      SBIC	P13,1
    0221 C019      RJMP	0x023B
(0252) 	   {
(0253) 	    send_byte(0x15);
    0222 E105      LDI	R16,0x15
    0223 DE2E      RCALL	_send_byte
(0254) 	    temp=receive_byte();
    0224 DE11      RCALL	_receive_byte
    0225 2E20      MOV	R2,R16
    0226 2E31      MOV	R3,R17
    0227 2D62      MOV	R22,R2
(0255) 		setcs;
    0228 9AAC      SBI	P15,4
(0256) 		if(temp==0x17)
    0229 3167      CPI	R22,0x17
    022A F461      BNE	0x0237
(0257) 		  {
(0258) 		   if (dflag==0)
    022B 90200061  LDS	R2,0x61
    022D 2022      TST	R2
    022E F421      BNE	0x0233
(0259) 		       dflag=1;
    022F E081      LDI	R24,1
    0230 93800061  STS	R24,0x61
    0232 C006      RJMP	0x0239
(0260) 	       else
(0261) 		       dflag=0;		 
    0233 2422      CLR	R2
    0234 92200061  STS	R2,0x61
(0262) 		  } 
    0236 C002      RJMP	0x0239
(0263) 		else   
(0264) 		   bpflag^=0x01;
    0237 E081      LDI	R24,1
    0238 2748      EOR	R20,R24
(0265) 		while((PINC&0x02)==0)//按键释放检查
(0266)          ;      
    0239 9B99      SBIS	P13,1
    023A CFFE      RJMP	0x0239
(0267) 	   }   
(0268) 	if ((time.minute==0)&(bpflag==0))
    023B 90200065  LDS	R2,_time+1
    023D 2022      TST	R2
    023E F429      BNE	0x0244
    023F E081      LDI	R24,1
    0240 E090      LDI	R25,0
    0241 2EC8      MOV	R12,R24
    0242 2ED9      MOV	R13,R25
    0243 C002      RJMP	0x0246
    0244 24CC      CLR	R12
    0245 24DD      CLR	R13
    0246 2344      TST	R20
    0247 F429      BNE	0x024D
    0248 E081      LDI	R24,1
    0249 E090      LDI	R25,0
    024A 2EA8      MOV	R10,R24
    024B 2EB9      MOV	R11,R25
    024C C002      RJMP	0x024F
    024D 24AA      CLR	R10
    024E 24BB      CLR	R11
    024F 2C2C      MOV	R2,R12
    0250 2C3D      MOV	R3,R13
    0251 202A      AND	R2,R10
    0252 203B      AND	R3,R11
    0253 2022      TST	R2
    0254 F411      BNE	0x0257
    0255 2033      TST	R3
    0256 F021      BEQ	0x025B
(0269) 	     TIMSK|=0x02;          //整点报时
    0257 B789      IN	R24,P39
    0258 6082      ORI	R24,2
    0259 BF89      OUT	P39,R24
    025A C003      RJMP	0x025E
(0270) 	else
(0271) 		 TIMSK&=0xfd;
    025B B789      IN	R24,P39
    025C 7F8D      ANDI	R24,0xFD
    025D BF89      OUT	P39,R24
(0272)    }
    025E CFB2      RJMP	0x0211
(0273) }
    025F 9508      RET
_timer1_ovf:
    0260 938A      ST	R24,-Y
    0261 939A      ST	R25,-Y
    0262 B78F      IN	R24,P3F
    0263 938A      ST	R24,-Y
    0264 D0BB      RCALL	<created procedures>
(0274) void timer1_ovf()              //溢出中断子程序
(0275) {
(0276)  TCNT1=0x85ee;
(0277)  flag=0x01;
    0265 E081      LDI	R24,1
    0266 93800060  STS	R24,0x60
(0278) }
    0268 9189      LD	R24,Y+
    0269 BF8F      OUT	P3F,R24
    026A 9199      LD	R25,Y+
    026B 9189      LD	R24,Y+
    026C 9518      RETI
_timer0_ovf:
    026D 922A      ST	R2,-Y
    026E 923A      ST	R3,-Y
    026F 938A      ST	R24,-Y
    0270 939A      ST	R25,-Y
    0271 93EA      ST	R30,-Y
    0272 B62F      IN	R2,P3F
    0273 922A      ST	R2,-Y
(0279) void timer0_ovf()
(0280)  {
(0281)   static unsigned int i;
(0282)   TCNT0=0x83;
    0274 E883      LDI	R24,0x83
    0275 BF82      OUT	P32,R24
(0283)   i++;
    0276 91900063  LDS	R25,0x63
    0278 91800062  LDS	R24,0x62
    027A 9601      ADIW	R24,1
    027B 93900063  STS	R25,0x63
    027D 93800062  STS	R24,0x62
(0284)   if(i<400)
    027F 3980      CPI	R24,0x90
    0280 E0E1      LDI	R30,1
    0281 079E      CPC	R25,R30
    0282 F420      BCC	0x0287
(0285)      {
(0286) 	  PORTC^=0X01;
    0283 E081      LDI	R24,1
    0284 B225      IN	R2,P15
    0285 2628      EOR	R2,R24
    0286 BA25      OUT	P15,R2
(0287) 	 }
(0288)   if(i>800)
    0287 E280      LDI	R24,0x20
    0288 E093      LDI	R25,3
    0289 90300063  LDS	R3,0x63
    028B 90200062  LDS	R2,0x62
    028D 1582      CP	R24,R2
    028E 0593      CPC	R25,R3
    028F F430      BCC	0x0296
(0289)       i=0;	 
    0290 2422      CLR	R2
    0291 2433      CLR	R3
    0292 92300063  STS	R3,0x63
    0294 92200062  STS	R2,0x62
(0290)  }
FILE: <library>
    0296 9029      LD	R2,Y+
    0297 BE2F      OUT	P3F,R2
    0298 91E9      LD	R30,Y+
    0299 9199      LD	R25,Y+
    029A 9189      LD	R24,Y+
    029B 9039      LD	R3,Y+
    029C 9029      LD	R2,Y+
    029D 9518      RETI
_delay_us:
    029E 5001      SUBI	R16,1
    029F 4010      SBCI	R17,0
    02A0 E081      LDI	R24,1
    02A1 E090      LDI	R25,0
    02A2 1780      CP	R24,R16
    02A3 0791      CPC	R25,R17
    02A4 F3CC      BLT	0x029E
    02A5 9508      RET
_delay_1ms:
    02A6 E001      LDI	R16,1
    02A7 E010      LDI	R17,0
    02A8 C002      RJMP	0x02AB
    02A9 5F0F      SUBI	R16,0xFF
    02AA 4F1F      SBCI	R17,0xFF
    02AB 3706      CPI	R16,0x76
    02AC E0E4      LDI	R30,4
    02AD 071E      CPC	R17,R30
    02AE F3D0      BCS	0x02A9
    02AF 9508      RET
_delay_ms:
    02B0 D051      RCALL	push_gset2
    02B1 2F60      MOV	R22,R16
    02B2 2F71      MOV	R23,R17
    02B3 2744      CLR	R20
    02B4 2755      CLR	R21
    02B5 C003      RJMP	0x02B9
    02B6 DFEF      RCALL	_delay_1ms
    02B7 5F4F      SUBI	R20,0xFF
    02B8 4F5F      SBCI	R21,0xFF
    02B9 1746      CP	R20,R22
    02BA 0757      CPC	R21,R23
    02BB F3D0      BCS	0x02B6
    02BC D051      RCALL	pop_gset2
    02BD 9508      RET
mpy8s:
    02BE 920A      ST	R0,-Y
    02BF 2400      CLR	R0
    02C0 2300      TST	R16
    02C1 F029      BEQ	0x02C7
    02C2 9506      LSR	R16
    02C3 F408      BCC	0x02C5
    02C4 0E01      ADD	R0,R17
    02C5 0F11      LSL	R17
    02C6 CFF9      RJMP	0x02C0
    02C7 2D00      MOV	R16,R0
    02C8 9009      LD	R0,Y+
    02C9 9508      RET
mod8s:
    02CA 9468      BSET	6
    02CB C001      RJMP	0x02CD
div8s:
    02CC 94E8      BCLR	6
    02CD 92EA      ST	R14,-Y
    02CE 92FA      ST	R15,-Y
    02CF 932A      ST	R18,-Y
    02D0 2EE0      MOV	R14,R16
    02D1 26E1      EOR	R14,R17
    02D2 FD17      SBRC	R17,7
    02D3 9511      NEG	R17
    02D4 FD07      SBRC	R16,7
    02D5 9501      NEG	R16
    02D6 18FF      SUB	R15,R15
    02D7 E029      LDI	R18,0x9
    02D8 1F00      ROL	R16
    02D9 952A      DEC	R18
    02DA F441      BNE	0x02E3
    02DB FCE7      SBRC	R14,7
    02DC 9501      NEG	R16
    02DD F40E      BRTC	0x02DF
    02DE 2D0F      MOV	R16,R15
    02DF 9129      LD	R18,Y+
    02E0 90F9      LD	R15,Y+
    02E1 90E9      LD	R14,Y+
    02E2 9508      RET
    02E3 1CFF      ROL	R15
    02E4 1AF1      SUB	R15,R17
    02E5 F418      BCC	0x02E9
    02E6 0EF1      ADD	R15,R17
    02E7 9488      BCLR	0
    02E8 CFEF      RJMP	0x02D8
    02E9 9408      BSET	0
    02EA CFED      RJMP	0x02D8
push_gset1:
    02EB 935A      ST	R21,-Y
    02EC 934A      ST	R20,-Y
    02ED 9508      RET
pop_gset1:
    02EE E0E1      LDI	R30,1
pop:
    02EF 9149      LD	R20,Y+
    02F0 9159      LD	R21,Y+
    02F1 FDE0      SBRC	R30,0
    02F2 9508      RET
    02F3 9169      LD	R22,Y+
    02F4 9179      LD	R23,Y+
    02F5 FDE1      SBRC	R30,1
    02F6 9508      RET
    02F7 90A9      LD	R10,Y+
    02F8 90B9      LD	R11,Y+
    02F9 FDE2      SBRC	R30,2
    02FA 9508      RET
    02FB 90C9      LD	R12,Y+
    02FC 90D9      LD	R13,Y+
    02FD FDE3      SBRC	R30,3
    02FE 9508      RET
    02FF 90E9      LD	R14,Y+
    0300 90F9      LD	R15,Y+
    0301 9508      RET
push_gset2:
    0302 937A      ST	R23,-Y
    0303 936A      ST	R22,-Y
    0304 CFE6      RJMP	push_gset1
push_gset3:
    0305 92BA      ST	R11,-Y
    0306 92AA      ST	R10,-Y
    0307 CFFA      RJMP	push_gset2
push_gset4:
    0308 92DA      ST	R13,-Y
    0309 92CA      ST	R12,-Y
    030A CFFA      RJMP	push_gset3
push_gset5:
    030B 92FA      ST	R15,-Y
    030C 92EA      ST	R14,-Y
    030D CFFA      RJMP	push_gset4
pop_gset2:
    030E E0E2      LDI	R30,2
    030F CFDF      RJMP	pop
pop_gset5:
    0310 27EE      CLR	R30
    0311 CFDD      RJMP	pop
lpm16:
    0312 93EA      ST	R30,-Y
    0313 93FA      ST	R31,-Y
    0314 920A      ST	R0,-Y
    0315 2FE0      MOV	R30,R16
    0316 2FF1      MOV	R31,R17
    0317 95C8      LPM
    0318 2D00      MOV	R16,R0
    0319 9631      ADIW	R30,1
    031A 95C8      LPM
    031B 2D10      MOV	R17,R0
    031C 9009      LD	R0,Y+
    031D 91F9      LD	R31,Y+
    031E 91E9      LD	R30,Y+
    031F 9508      RET
<created procedures>:
    0320 EE8E      LDI	R24,0xEE
    0321 E895      LDI	R25,0x85
    0322 9390004D  STS	R25,0x4D
    0324 9380004C  STS	R24,0x4C
    0326 9508      RET
    0327 B385      IN	R24,P15
    0328 7F87      ANDI	R24,0xF7
    0329 BB85      OUT	P15,R24
    032A E00A      LDI	R16,0xA
    032B E010      LDI	R17,0
    032C 9508      RET

⌨️ 快捷键说明

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