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

📄 ds1203.lst

📁 DS1302
💻 LST
📖 第 1 页 / 共 5 页
字号:
    035B 0FE8      ADD	R30,R24
    035C 1FF9      ADC	R31,R25
    035D 8180      LDD	R24,Z+0
    035E 3189      CPI	R24,0x19
    035F F439      BNE	0x0367
(0189) 		    {WriteTime[i]=0x1f;
    0360 E687      LDI	R24,0x67
    0361 E090      LDI	R25,0
    0362 01F8      MOVW	R30,R16
    0363 0FE8      ADD	R30,R24
    0364 1FF9      ADC	R31,R25
    0365 E18F      LDI	R24,0x1F
    0366 8380      STD	Z+0,R24
(0190) 			} 
(0191) 			if(WriteTime[i]==0x29)
    0367 E687      LDI	R24,0x67
    0368 E090      LDI	R25,0
    0369 01F8      MOVW	R30,R16
    036A 0FE8      ADD	R30,R24
    036B 1FF9      ADC	R31,R25
    036C 8180      LDD	R24,Z+0
    036D 3289      CPI	R24,0x29
    036E F439      BNE	0x0376
(0192) 			 {WriteTime[i]=0x2f;
    036F E687      LDI	R24,0x67
    0370 E090      LDI	R25,0
    0371 01F8      MOVW	R30,R16
    0372 0FE8      ADD	R30,R24
    0373 1FF9      ADC	R31,R25
    0374 E28F      LDI	R24,0x2F
    0375 8380      STD	Z+0,R24
(0193) 			} 
(0194) 	    	if(WriteTime[i]==0x31)
    0376 E687      LDI	R24,0x67
    0377 E090      LDI	R25,0
    0378 01F8      MOVW	R30,R16
    0379 0FE8      ADD	R30,R24
    037A 1FF9      ADC	R31,R25
    037B 8180      LDD	R24,Z+0
    037C 3381      CPI	R24,0x31
    037D F441      BNE	0x0386
(0195) 		    {WriteTime[i]=0x00;
    037E E687      LDI	R24,0x67
    037F E090      LDI	R25,0
    0380 01F8      MOVW	R30,R16
    0381 0FE8      ADD	R30,R24
    0382 1FF9      ADC	R31,R25
    0383 2422      CLR	R2
    0384 8220      STD	Z+0,R2
(0196) 			} 
    0385 C009      RJMP	0x038F
(0197) 			else
(0198) 			WriteTime[i]=WriteTime[i]+1;
    0386 E687      LDI	R24,0x67
    0387 E090      LDI	R25,0
    0388 0118      MOVW	R2,R16
    0389 0E28      ADD	R2,R24
    038A 1E39      ADC	R3,R25
    038B 01F1      MOVW	R30,R2
    038C 8180      LDD	R24,Z+0
    038D 5F8F      SUBI	R24,0xFF
    038E 8380      STD	Z+0,R24
    038F 9508      RET
(0199)        
(0200) }
(0201) //日期 减法
(0202) void SubDay(int i)
(0203) {
(0204)            if(WriteTime[i]==0x00)
_SubDay:
  i                    --> R16
    0390 E687      LDI	R24,0x67
    0391 E090      LDI	R25,0
    0392 01F8      MOVW	R30,R16
    0393 0FE8      ADD	R30,R24
    0394 1FF9      ADC	R31,R25
    0395 8020      LDD	R2,Z+0
    0396 2022      TST	R2
    0397 F429      BNE	0x039D
(0205) 			{ WriteTime[i]=0x32;
    0398 01F8      MOVW	R30,R16
    0399 0FE8      ADD	R30,R24
    039A 1FF9      ADC	R31,R25
    039B E382      LDI	R24,0x32
    039C 8380      STD	Z+0,R24
(0206) 			  }
(0207) 			if(WriteTime[i]==0x10)
    039D E687      LDI	R24,0x67
    039E E090      LDI	R25,0
    039F 01F8      MOVW	R30,R16
    03A0 0FE8      ADD	R30,R24
    03A1 1FF9      ADC	R31,R25
    03A2 8180      LDD	R24,Z+0
    03A3 3180      CPI	R24,0x10
    03A4 F439      BNE	0x03AC
(0208) 		    {WriteTime[i]=0x0a;
    03A5 E687      LDI	R24,0x67
    03A6 E090      LDI	R25,0
    03A7 01F8      MOVW	R30,R16
    03A8 0FE8      ADD	R30,R24
    03A9 1FF9      ADC	R31,R25
    03AA E08A      LDI	R24,0xA
    03AB 8380      STD	Z+0,R24
(0209) 			} 
(0210) 			if(WriteTime[i]==0x20)
    03AC E687      LDI	R24,0x67
    03AD E090      LDI	R25,0
    03AE 01F8      MOVW	R30,R16
    03AF 0FE8      ADD	R30,R24
    03B0 1FF9      ADC	R31,R25
    03B1 8180      LDD	R24,Z+0
    03B2 3280      CPI	R24,0x20
    03B3 F439      BNE	0x03BB
(0211) 			 {WriteTime[i]=0x1a;
    03B4 E687      LDI	R24,0x67
    03B5 E090      LDI	R25,0
    03B6 01F8      MOVW	R30,R16
    03B7 0FE8      ADD	R30,R24
    03B8 1FF9      ADC	R31,R25
    03B9 E18A      LDI	R24,0x1A
    03BA 8380      STD	Z+0,R24
(0212) 			} 
(0213) 	    	if(WriteTime[i]==0x30)
    03BB E687      LDI	R24,0x67
    03BC E090      LDI	R25,0
    03BD 01F8      MOVW	R30,R16
    03BE 0FE8      ADD	R30,R24
    03BF 1FF9      ADC	R31,R25
    03C0 8180      LDD	R24,Z+0
    03C1 3380      CPI	R24,0x30
    03C2 F441      BNE	0x03CB
(0214) 		    {WriteTime[i]=0x29;
    03C3 E687      LDI	R24,0x67
    03C4 E090      LDI	R25,0
    03C5 01F8      MOVW	R30,R16
    03C6 0FE8      ADD	R30,R24
    03C7 1FF9      ADC	R31,R25
    03C8 E289      LDI	R24,0x29
    03C9 8380      STD	Z+0,R24
(0215) 			} 
    03CA C009      RJMP	0x03D4
(0216) 			else
(0217) 			WriteTime[i]=WriteTime[i]-1;
    03CB E687      LDI	R24,0x67
    03CC E090      LDI	R25,0
    03CD 0118      MOVW	R2,R16
    03CE 0E28      ADD	R2,R24
    03CF 1E39      ADC	R3,R25
    03D0 01F1      MOVW	R30,R2
    03D1 8180      LDD	R24,Z+0
    03D2 5081      SUBI	R24,1
    03D3 8380      STD	Z+0,R24
    03D4 9508      RET
(0218) 
(0219) }
(0220) //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
(0221) //设置月份子程序
(0222) //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
(0223) //月份 加法
(0224) void PlusMonth(int i)
(0225) {
(0226)             if(WriteTime[i]==0x09)
_PlusMonth:
  i                    --> R16
    03D5 E687      LDI	R24,0x67
    03D6 E090      LDI	R25,0
    03D7 01F8      MOVW	R30,R16
    03D8 0FE8      ADD	R30,R24
    03D9 1FF9      ADC	R31,R25
    03DA 8180      LDD	R24,Z+0
    03DB 3089      CPI	R24,0x9
    03DC F439      BNE	0x03E4
(0227) 			{ WriteTime[i]=0x0f;
    03DD E687      LDI	R24,0x67
    03DE E090      LDI	R25,0
    03DF 01F8      MOVW	R30,R16
    03E0 0FE8      ADD	R30,R24
    03E1 1FF9      ADC	R31,R25
    03E2 E08F      LDI	R24,0xF
    03E3 8380      STD	Z+0,R24
(0228) 			  }
(0229) 			if(WriteTime[i]==0x12)
    03E4 E687      LDI	R24,0x67
    03E5 E090      LDI	R25,0
    03E6 01F8      MOVW	R30,R16
    03E7 0FE8      ADD	R30,R24
    03E8 1FF9      ADC	R31,R25
    03E9 8180      LDD	R24,Z+0
    03EA 3182      CPI	R24,0x12
    03EB F441      BNE	0x03F4
(0230) 		    {WriteTime[i]=0x00;
    03EC E687      LDI	R24,0x67
    03ED E090      LDI	R25,0
    03EE 01F8      MOVW	R30,R16
    03EF 0FE8      ADD	R30,R24
    03F0 1FF9      ADC	R31,R25
    03F1 2422      CLR	R2
    03F2 8220      STD	Z+0,R2
(0231) 			} 
    03F3 C009      RJMP	0x03FD
(0232) 			else
(0233) 			WriteTime[i]=WriteTime[i]+1;
    03F4 E687      LDI	R24,0x67
    03F5 E090      LDI	R25,0
    03F6 0118      MOVW	R2,R16
    03F7 0E28      ADD	R2,R24
    03F8 1E39      ADC	R3,R25
    03F9 01F1      MOVW	R30,R2
    03FA 8180      LDD	R24,Z+0
    03FB 5F8F      SUBI	R24,0xFF
    03FC 8380      STD	Z+0,R24
    03FD 9508      RET
(0234) 
(0235) }
(0236) //月份减法
(0237) void SubMonth(int i)
(0238) {
(0239)             if(WriteTime[i]==0x00)
_SubMonth:
  i                    --> R16
    03FE E687      LDI	R24,0x67
    03FF E090      LDI	R25,0
    0400 01F8      MOVW	R30,R16
    0401 0FE8      ADD	R30,R24
    0402 1FF9      ADC	R31,R25
    0403 8020      LDD	R2,Z+0
    0404 2022      TST	R2
    0405 F429      BNE	0x040B
(0240) 			{ WriteTime[i]=0x13;
    0406 01F8      MOVW	R30,R16
    0407 0FE8      ADD	R30,R24
    0408 1FF9      ADC	R31,R25
    0409 E183      LDI	R24,0x13
    040A 8380      STD	Z+0,R24
(0241) 			  }
(0242) 			if(WriteTime[i]==0x11)
    040B E687      LDI	R24,0x67
    040C E090      LDI	R25,0
    040D 01F8      MOVW	R30,R16
    040E 0FE8      ADD	R30,R24
    040F 1FF9      ADC	R31,R25
    0410 8180      LDD	R24,Z+0
    0411 3181      CPI	R24,0x11
    0412 F441      BNE	0x041B
(0243) 		    {WriteTime[i]=0x09;
    0413 E687      LDI	R24,0x67
    0414 E090      LDI	R25,0
    0415 01F8      MOVW	R30,R16
    0416 0FE8      ADD	R30,R24
    0417 1FF9      ADC	R31,R25
    0418 E089      LDI	R24,0x9
    0419 8380      STD	Z+0,R24
(0244) 			} 
    041A C009      RJMP	0x0424
(0245) 			else
(0246) 			WriteTime[i]=WriteTime[i]-1;
    041B E687      LDI	R24,0x67
    041C E090      LDI	R25,0
    041D 0118      MOVW	R2,R16
    041E 0E28      ADD	R2,R24
    041F 1E39      ADC	R3,R25
    0420 01F1      MOVW	R30,R2
    0421 8180      LDD	R24,Z+0
    0422 5081      SUBI	R24,1
    0423 8380      STD	Z+0,R24
    0424 9508      RET
(0247) 
(0248) }
(0249) //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
(0250) //设置年子程序
(0251) //cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
(0252) //加
(0253) void PlusYear(int i)
(0254) {
(0255)            if(WriteTime[i]==0x09)
_PlusYear:
  i                    --> R16
    0425 E687      LDI	R24,0x67
    0426 E090      LDI	R25,0
    0427 01F8      MOVW	R30,R16
    0428 0FE8      ADD	R30,R24
    0429 1FF9      ADC	R31,R25
    042A 8180      LDD	R24,Z+0
    042B 3089      CPI	R24,0x9
    042C F439      BNE	0x0434
(0256) 			{ WriteTime[i]=0x0f;
    042D E687      LDI	R24,0x67
    042E E090      LDI	R25,0
    042F 01F8      MOVW	R30,R16
    0430 0FE8      ADD	R30,R24
    0431 1FF9      ADC	R31,R25
    0432 E08F      LDI	R24,0xF
    0433 8380      STD	Z+0,R24
(0257) 			  }
(0258) 			if(WriteTime[i]==0x19)
    0434 E687      LDI	R24,0x67
    0435 E090      LDI	R25,0
    0436 01F8      MOVW	R30,R16
    0437 0FE8      ADD	R30,R24
    0438 1FF9      ADC	R31,R25
    0439 8180      LDD	R24,Z+0
    043A 3189      CPI	R24,0x19
    043B F439      BNE	0x0443
(0259) 		    {WriteTime[i]=0x1f;
    043C E687      LDI	R24,0x67
    043D E090      LDI	R25,0
    043E 01F8      MOVW	R30,R16
    043F 0FE8      ADD	R30,R24
    0440 1FF9      ADC	R31,R25
    0441 E18F      LDI	R24,0x1F
    0442 8380      STD	Z+0,R24
(0260) 			} 
(0261) 			if(WriteTime[i]==0x29)
    0443 E687      LDI	R24,0x67
    0444 E090      LDI	R25,0
    0445 01F8      MOVW	R30,R16
    0446 0FE8      ADD	R30,R24
    0447 1FF9      ADC	R31,R25
    0448 8180      LDD	R24,Z+0
    0449 3289      CPI	R24,0x29
    044A F439      BNE	0x0452
(0262) 			 {WriteTime[i]=0x2f;
    044B E687      LDI	R24,0x67
    044C E090      LDI	R25,0
    044D 01F8      MOVW	R30,R16
    044E 0FE8      ADD	R30,R24
    044F 1FF9      ADC	R31,R25
    0450 E28F      LDI	R24,0x2F
    0451 8380      STD	Z+0,R24
(0263) 			} 
(0264) 	    	if(WriteTime[i]==0x39)
    0452 E687      LDI	R24,0x67
    0453 E090      LDI	R25,0
    0454 01F8      MOVW	R30,R16
    0455 0FE8      ADD	R30,R24
    0456 1FF9      ADC	R31,R25
    0457 8180      LDD	R24,Z+0
    0458 3389      CPI	R24,0x39
    0459 F439      BNE	0x0461
(0265) 		    {WriteTime[i]=0x3f;
    045A E687      LDI	R24,0x67
    045B E090      LDI	R25,0
    045C 01F8      MOVW	R30,R16
    045D 0FE8      ADD	R30,R24
    045E 1FF9      ADC	R31,R25
    045F E38F      LDI	R24,0x3F
    0460 8380      STD	Z+0,R24
(0266) 			} 
(0267) 			if(WriteTime[i]==0x49)
    0461 E687      LDI	R24,0x67
    0462 E090      LDI	R25,0
    0463 01F8      MOVW	R30,R16
    0464 0FE8      ADD	R30,R24
    0465 1FF9      ADC	R31,R25
    0466 8180      LDD	R24,Z+0
    0467 3489      CPI	R24,0x49
    0468 F439      BNE	0x0470
(0268) 			{WriteTime[i]=0x4f;
    0469 E687      LDI	R24,0x67
    046A E090      LDI	R25,0
    046B 01F8      MOVW	R30,R16
    046C 0FE8      ADD	R30,R24
    046D 1FF9      ADC	R31,R25
    046E E48F      LDI	R24,0x4F
    046F 8380      STD	Z+0,R24
(0269) 				} 
(0270) 			if(WriteTime[i]==0x59)
    0470 E687      LDI	R24,0x67
    0471 E090      LDI	R25,0
    0472 01F8      MOVW	R30,R16
    0473 0FE8      ADD	R30,R24
    0474 1FF9      ADC	R31,R25
    0475 8180      LDD	R24,Z+0
    0476 3589      CPI	R24,0x59
    0477 F439      BNE	0x047F
(0271) 			{WriteTime[i]=0x5f;
    0478 E687      LDI	R24,0x67
    0479 E090      LDI	R25,0
    047A 01F8      MOVW	R30,R16
    047B 0FE8      ADD	R30,R24
    047C 1FF9      ADC	R31,R25
    047D E58F      LDI	R24,0x5F
    047E 8380      STD	Z+0,R24
(0272) 				} 
(0273) 			if(WriteTime[i]==0x69)
    047F E687      LDI	R24,0x67
    0480 E090      LDI	R25,0
    0481 01F8      MOVW	R30,R16
    0482 0FE8      ADD	R30,R24
    0483 1FF9      ADC	R31,R25
    0484 8180      LDD	R24,Z+0
    0485 3689      CPI	R24,0x69
    0486 F439      BNE	0x048E
(0274) 			{WriteTime[i]=0x6f;
    0487 E687      LDI	R24,0x67
    0488 E090      LDI	R25,0
    0489 01F8      MOVW	R30,R16
    048A 0FE8      ADD	R30,R24
    048B 1FF9      ADC	R31,R25
    048C E68F      LDI	R24,0x6F

⌨️ 快捷键说明

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