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

📄 wnl.lst

📁 万年历 megal128 iccavr开发平台
💻 LST
📖 第 1 页 / 共 4 页
字号:
    01C1 01F8      MOVW	R30,R16
    01C2 EA84      LDI	R24,0xA4
    01C3 E090      LDI	R25,0
    01C4 0FE8      ADD	R30,R24
    01C5 1FF9      ADC	R31,R25
    01C6 9024      LPM	R2,0(Z)
    01C7 2433      CLR	R3
    01C8 823B      STD	Y+3,R3
    01C9 822A      STD	Y+2,R2
    01CA 2422      CLR	R2
    01CB 8239      STD	Y+1,R3
    01CC 8228      STD	Y+0,R2
    01CD E02A      LDI	R18,0xA
    01CE E030      LDI	R19,0
    01CF EF09      LDI	R16,0xF9
    01D0 E010      LDI	R17,0
    01D1 DEE0      RCALL	_write_ASCII
(0124) write_ASCII(0xf9,11,0,table[second%10]);//秒钟地位
    01D2 E02A      LDI	R18,0xA
    01D3 E030      LDI	R19,0
    01D4 91000100  LDS	R16,second
    01D6 2711      CLR	R17
    01D7 940E0624  CALL	mod16s
    01D9 01F8      MOVW	R30,R16
    01DA EA84      LDI	R24,0xA4
    01DB E090      LDI	R25,0
    01DC 0FE8      ADD	R30,R24
    01DD 1FF9      ADC	R31,R25
    01DE 9024      LPM	R2,0(Z)
    01DF 2433      CLR	R3
    01E0 823B      STD	Y+3,R3
    01E1 822A      STD	Y+2,R2
    01E2 2422      CLR	R2
    01E3 8239      STD	Y+1,R3
    01E4 8228      STD	Y+0,R2
    01E5 E02B      LDI	R18,0xB
    01E6 E030      LDI	R19,0
    01E7 EF09      LDI	R16,0xF9
    01E8 E010      LDI	R17,0
    01E9 DEC8      RCALL	_write_ASCII
    01EA 9624      ADIW	R28,4
    01EB 9508      RET
_day_display:
    01EC 9724      SBIW	R28,4
(0125) }
(0126) /**********************************************/
(0127) 	 /* LCD显示星期年月日*/
(0128) /**********************************************/
(0129) void day_display(void)
(0130) {
(0131)    write_hazi(7,0,biao1[7],biao2[7]);//星
    01ED E9EF      LDI	R30,0x9F
    01EE E0F0      LDI	R31,0
    01EF 9024      LPM	R2,0(Z)
    01F0 2433      CLR	R3
    01F1 823B      STD	Y+3,R3
    01F2 822A      STD	Y+2,R2
    01F3 E9E3      LDI	R30,0x93
    01F4 E0F0      LDI	R31,0
    01F5 9024      LPM	R2,0(Z)
    01F6 2433      CLR	R3
    01F7 8239      STD	Y+1,R3
    01F8 8228      STD	Y+0,R2
    01F9 2722      CLR	R18
    01FA 2733      CLR	R19
    01FB E007      LDI	R16,7
    01FC E010      LDI	R17,0
    01FD DEC5      RCALL	_write_hazi
(0132)    write_hazi(8,0,biao1[8],biao2[8]);//期
    01FE EAE0      LDI	R30,0xA0
    01FF E0F0      LDI	R31,0
    0200 9024      LPM	R2,0(Z)
    0201 2433      CLR	R3
    0202 823B      STD	Y+3,R3
    0203 822A      STD	Y+2,R2
    0204 E9E4      LDI	R30,0x94
    0205 E0F0      LDI	R31,0
    0206 9024      LPM	R2,0(Z)
    0207 2433      CLR	R3
    0208 8239      STD	Y+1,R3
    0209 8228      STD	Y+0,R2
    020A 2722      CLR	R18
    020B 2733      CLR	R19
    020C E008      LDI	R16,0x8
    020D E010      LDI	R17,0
    020E DEB4      RCALL	_write_hazi
(0133)    write_hazi(4,1,biao1[9],biao2[9]);//年
    020F EAE1      LDI	R30,0xA1
    0210 E0F0      LDI	R31,0
    0211 9024      LPM	R2,0(Z)
    0212 2433      CLR	R3
    0213 823B      STD	Y+3,R3
    0214 822A      STD	Y+2,R2
    0215 E9E5      LDI	R30,0x95
    0216 E0F0      LDI	R31,0
    0217 9024      LPM	R2,0(Z)
    0218 2433      CLR	R3
    0219 8239      STD	Y+1,R3
    021A 8228      STD	Y+0,R2
    021B E021      LDI	R18,1
    021C E030      LDI	R19,0
    021D E004      LDI	R16,4
    021E E010      LDI	R17,0
    021F DEA3      RCALL	_write_hazi
(0134)    write_hazi(6,1,biao1[10],biao2[10]);//月
    0220 EAE2      LDI	R30,0xA2
    0221 E0F0      LDI	R31,0
    0222 9024      LPM	R2,0(Z)
    0223 2433      CLR	R3
    0224 823B      STD	Y+3,R3
    0225 822A      STD	Y+2,R2
    0226 E9E6      LDI	R30,0x96
    0227 E0F0      LDI	R31,0
    0228 9024      LPM	R2,0(Z)
    0229 2433      CLR	R3
    022A 8239      STD	Y+1,R3
    022B 8228      STD	Y+0,R2
    022C E021      LDI	R18,1
    022D E030      LDI	R19,0
    022E E006      LDI	R16,6
    022F E010      LDI	R17,0
    0230 DE92      RCALL	_write_hazi
(0135)    write_hazi(8,1,biao1[11],biao2[11]);//日
    0231 EAE3      LDI	R30,0xA3
    0232 E0F0      LDI	R31,0
    0233 9024      LPM	R2,0(Z)
    0234 2433      CLR	R3
    0235 823B      STD	Y+3,R3
    0236 822A      STD	Y+2,R2
    0237 E9E7      LDI	R30,0x97
    0238 E0F0      LDI	R31,0
    0239 9024      LPM	R2,0(Z)
    023A 2433      CLR	R3
    023B 8239      STD	Y+1,R3
    023C 8228      STD	Y+0,R2
    023D E021      LDI	R18,1
    023E E030      LDI	R19,0
    023F E008      LDI	R16,0x8
    0240 E010      LDI	R17,0
    0241 DE81      RCALL	_write_hazi
(0136)    write_hazi(9,0,biao1[day-1],biao2[day-1]);//一,二,三,四,五,六,日
    0242 E987      LDI	R24,0x97
    0243 E090      LDI	R25,0
    0244 91E00103  LDS	R30,day
    0246 27FF      CLR	R31
    0247 0FE8      ADD	R30,R24
    0248 1FF9      ADC	R31,R25
    0249 9024      LPM	R2,0(Z)
    024A 2433      CLR	R3
    024B 823B      STD	Y+3,R3
    024C 822A      STD	Y+2,R2
    024D E88B      LDI	R24,0x8B
    024E E090      LDI	R25,0
    024F 91E00103  LDS	R30,day
    0251 27FF      CLR	R31
    0252 0FE8      ADD	R30,R24
    0253 1FF9      ADC	R31,R25
    0254 9024      LPM	R2,0(Z)
    0255 2433      CLR	R3
    0256 8239      STD	Y+1,R3
    0257 8228      STD	Y+0,R2
    0258 2722      CLR	R18
    0259 2733      CLR	R19
    025A E009      LDI	R16,0x9
    025B E010      LDI	R17,0
    025C DE66      RCALL	_write_hazi
(0137)    write_ASCII(0xf9,4,16,table[year/1000]);//年第四位
    025D EE28      LDI	R18,0xE8
    025E E033      LDI	R19,3
    025F 91000106  LDS	R16,year
    0261 91100107  LDS	R17,year+1
    0263 940E0644  CALL	div16u
    0265 01F8      MOVW	R30,R16
    0266 EA84      LDI	R24,0xA4
    0267 E090      LDI	R25,0
    0268 0FE8      ADD	R30,R24
    0269 1FF9      ADC	R31,R25
    026A 9024      LPM	R2,0(Z)
    026B 2433      CLR	R3
    026C 823B      STD	Y+3,R3
    026D 822A      STD	Y+2,R2
    026E E180      LDI	R24,0x10
    026F E090      LDI	R25,0
    0270 8399      STD	Y+1,R25
    0271 8388      STD	Y+0,R24
    0272 E024      LDI	R18,4
    0273 E030      LDI	R19,0
    0274 EF09      LDI	R16,0xF9
    0275 E010      LDI	R17,0
    0276 DE3B      RCALL	_write_ASCII
(0138)    write_ASCII(0xf9,5,16,table[year%1000/100]);//年第三位		
    0277 EE28      LDI	R18,0xE8
    0278 E033      LDI	R19,3
    0279 91000106  LDS	R16,year
    027B 91100107  LDS	R17,year+1
    027D 940E0642  CALL	mod16u
    027F E624      LDI	R18,0x64
    0280 E030      LDI	R19,0
    0281 940E0644  CALL	div16u
    0283 01F8      MOVW	R30,R16
    0284 EA84      LDI	R24,0xA4
    0285 E090      LDI	R25,0
    0286 0FE8      ADD	R30,R24
    0287 1FF9      ADC	R31,R25
    0288 9024      LPM	R2,0(Z)
    0289 2433      CLR	R3
    028A 823B      STD	Y+3,R3
    028B 822A      STD	Y+2,R2
    028C E180      LDI	R24,0x10
    028D E090      LDI	R25,0
    028E 8399      STD	Y+1,R25
    028F 8388      STD	Y+0,R24
    0290 E025      LDI	R18,5
    0291 E030      LDI	R19,0
    0292 EF09      LDI	R16,0xF9
    0293 E010      LDI	R17,0
    0294 DE1D      RCALL	_write_ASCII
(0139)    write_ASCII(0xf9,6,16,table[year%1000%100/10]);//年第二位
    0295 EE28      LDI	R18,0xE8
    0296 E033      LDI	R19,3
    0297 91000106  LDS	R16,year
    0299 91100107  LDS	R17,year+1
    029B 940E0642  CALL	mod16u
    029D E624      LDI	R18,0x64
    029E E030      LDI	R19,0
    029F 940E0642  CALL	mod16u
    02A1 E02A      LDI	R18,0xA
    02A2 E030      LDI	R19,0
    02A3 940E0644  CALL	div16u
    02A5 01F8      MOVW	R30,R16
    02A6 EA84      LDI	R24,0xA4
    02A7 E090      LDI	R25,0
    02A8 0FE8      ADD	R30,R24
    02A9 1FF9      ADC	R31,R25
    02AA 9024      LPM	R2,0(Z)
    02AB 2433      CLR	R3
    02AC 823B      STD	Y+3,R3
    02AD 822A      STD	Y+2,R2
    02AE E180      LDI	R24,0x10
    02AF E090      LDI	R25,0
    02B0 8399      STD	Y+1,R25
    02B1 8388      STD	Y+0,R24
    02B2 E026      LDI	R18,6
    02B3 E030      LDI	R19,0
    02B4 EF09      LDI	R16,0xF9
    02B5 E010      LDI	R17,0
    02B6 DDFB      RCALL	_write_ASCII
(0140)    write_ASCII(0xf9,7,16,table[year%1000%100%10]);//年第一位
    02B7 EE28      LDI	R18,0xE8
    02B8 E033      LDI	R19,3
    02B9 91000106  LDS	R16,year
    02BB 91100107  LDS	R17,year+1
    02BD 940E0642  CALL	mod16u
    02BF E624      LDI	R18,0x64
    02C0 E030      LDI	R19,0
    02C1 940E0642  CALL	mod16u
    02C3 E02A      LDI	R18,0xA
    02C4 E030      LDI	R19,0
    02C5 940E0642  CALL	mod16u
    02C7 01F8      MOVW	R30,R16
    02C8 EA84      LDI	R24,0xA4
    02C9 E090      LDI	R25,0
    02CA 0FE8      ADD	R30,R24
    02CB 1FF9      ADC	R31,R25
    02CC 9024      LPM	R2,0(Z)
    02CD 2433      CLR	R3
    02CE 823B      STD	Y+3,R3
    02CF 822A      STD	Y+2,R2
    02D0 E180      LDI	R24,0x10
    02D1 E090      LDI	R25,0
    02D2 8399      STD	Y+1,R25
    02D3 8388      STD	Y+0,R24
    02D4 E027      LDI	R18,7
    02D5 E030      LDI	R19,0
    02D6 EF09      LDI	R16,0xF9
    02D7 E010      LDI	R17,0
    02D8 DDD9      RCALL	_write_ASCII
(0141)    write_ASCII(0xf9,10,16,table[month/10]);//月份高位
    02D9 E02A      LDI	R18,0xA
    02DA E030      LDI	R19,0
    02DB 91000105  LDS	R16,month
    02DD 2711      CLR	R17
    02DE 940E0628  CALL	div16s
    02E0 01F8      MOVW	R30,R16
    02E1 EA84      LDI	R24,0xA4
    02E2 E090      LDI	R25,0
    02E3 0FE8      ADD	R30,R24
    02E4 1FF9      ADC	R31,R25
    02E5 9024      LPM	R2,0(Z)
    02E6 2433      CLR	R3
    02E7 823B      STD	Y+3,R3
    02E8 822A      STD	Y+2,R2
    02E9 E180      LDI	R24,0x10
    02EA E090      LDI	R25,0
    02EB 8399      STD	Y+1,R25
    02EC 8388      STD	Y+0,R24
    02ED E02A      LDI	R18,0xA
    02EE E030      LDI	R19,0
    02EF EF09      LDI	R16,0xF9
    02F0 E010      LDI	R17,0
    02F1 DDC0      RCALL	_write_ASCII
(0142)    write_ASCII(0xf9,11,16,table[month%10]);//月份低位
    02F2 E02A      LDI	R18,0xA
    02F3 E030      LDI	R19,0
    02F4 91000105  LDS	R16,month
    02F6 2711      CLR	R17
    02F7 940E0624  CALL	mod16s
    02F9 01F8      MOVW	R30,R16
    02FA EA84      LDI	R24,0xA4
    02FB E090      LDI	R25,0
    02FC 0FE8      ADD	R30,R24
    02FD 1FF9      ADC	R31,R25
    02FE 9024      LPM	R2,0(Z)
    02FF 2433      CLR	R3
    0300 823B      STD	Y+3,R3
    0301 822A      STD	Y+2,R2
    0302 E180      LDI	R24,0x10
    0303 E090      LDI	R25,0
    0304 8399      STD	Y+1,R25
    0305 8388      STD	Y+0,R24
    0306 E02B      LDI	R18,0xB
    0307 E030      LDI	R19,0
    0308 EF09      LDI	R16,0xF9
    0309 E010      LDI	R17,0
    030A DDA7      RCALL	_write_ASCII
(0143)    write_ASCII(0xf9,14,16,table[days/10]);//日期高位
    030B E02A      LDI	R18,0xA
    030C E030      LDI	R19,0
    030D 91000104  LDS	R16,days
    030F 2711      CLR	R17
    0310 940E0628  CALL	div16s
    0312 01F8      MOVW	R30,R16
    0313 EA84      LDI	R24,0xA4
    0314 E090      LDI	R25,0
    0315 0FE8      ADD	R30,R24
    0316 1FF9      ADC	R31,R25
    0317 9024      LPM	R2,0(Z)
    0318 2433      CLR	R3
    0319 823B      STD	Y+3,R3
    031A 822A      STD	Y+2,R2
    031B E180      LDI	R24,0x10
    031C E090      LDI	R25,0
    031D 8399      STD	Y+1,R25
    031E 8388      STD	Y+0,R24
    031F E02E      LDI	R18,0xE
    0320 E030      LDI	R19,0
    0321 EF09      LDI	R16,0xF9
    0322 E010      LDI	R17,0
    0323 DD8E      RCALL	_write_ASCII
(0144)    write_ASCII(0xf9,15,16,table[days%10]);//日期低位
    0324 E02A      LDI	R18,0xA
    0325 E030      LDI	R19,0
    0326 91000104  LDS	R16,days
    0328 2711      CLR	R17
    0329 940E0624  CALL	mod16s
    032B 01F8      MOVW	R30,R16
    032C EA84      LDI	R24,0xA4
    032D E090      LDI	R25,0
    032E 0FE8      ADD	R30,R24
    032F 1FF9      ADC	R31,R25
    0330 9024      LPM	R2,0(Z)
    0331 2433      CLR	R3
    0332 823B      STD	Y+3,R3
    0333 822A      STD	Y+2,R2
    0334 E180      LDI	R24,0x10
    0335 E090      LDI	R25,0
    0336 8399      STD	Y+1,R25
    0337 8388      STD	Y+0,R24
    0338 E02F      LDI	R18,0xF
    0339 E030      LDI	R19,0
    033A EF09      LDI	R16,0xF9
    033B E010      LDI	R17,0
    033C DD75      RCALL	_write_ASCII
    033D 9624      ADIW	R28,4
    033E 9508      RET
_get_days:
  tian                 --> R20
  yue                  --> R20
    033F 940E067C  CALL	push_gset1
    0341 2F40      MOV	R20,R16
(0145) }
(0146) /**********************************************/
(0147) 	 /* 确定天数*/
(0148) /**********************************************/
(0149) unsigned char get_days(unsigned char yue)
(0150) {
(0151)     unsigned char tian;
(0152)     switch(yue)
    0342 2755      CLR	R21
    0343 3041      CPI	R20,1
    0344 E0E0      LDI	R30,0
    0345 075E      CPC	R21,R30
    0346 F169      BEQ	0x0374
    0347 3042      CPI	R20,2
    0348 E0E0      LDI	R30,0
    0349 075E      CPC	R21,R30
    034A F169      BEQ	0x0378
    034B 3043      CPI	R20,3
    034C E0E0      LDI	R30,0
    034D 075E      CPC	R21,R30
    034E F129      BEQ	0x0374
    034F 3044      CPI	R20,4
    0350 E0E0      LDI	R30,0
    0351 075E      CPC	R21,R30
    0352 F119      BEQ	0x0376
    0353 3045      CPI	R20,5
    0354 E0E0      LDI	R30,0
    0355 075E      CPC	R21,R30
    0356 F0E9      BEQ	0x0374
    0357 3046      CPI	R20,6
    0358 E0E0      LDI	R30,0
    0359 075E      CPC	R21,R30
    035A F0D9      BEQ	0x0376
    035B 3047      CPI	R20,7
    035C E0E0      LDI	R30,0
    035D 075E      CPC	R21,R30
    035E F0A9      BEQ	0x0374
    035F 3048      CPI	R20,0x8
    0360 E0E0      LDI	R30,0
    0361 075E      CPC	R21,R30
    0362 F089      BEQ	0x0374
    0363 3049      CPI	R20,0x9
    0364 E0E0      LDI	R30,0
    0365 075E      CPC	R21,R30
    0366 F079      BEQ	0x0376
    0367 304A      CPI	R20,0xA
    0368 E0E0      LDI	R30,0
    0369 075E      CPC	R21,R30
    036A F049      BEQ	0x0374
    036B 304B      CPI	R20,0xB
    036C E0E0      LDI	R30,0
    036D 075E      CPC	R21,R30
    036E F039      BEQ	0x0376
    036F 304C      CPI	R20,0xC
    0370 E0E0      LDI	R30,0
    0371 075E      CPC	R21,R30
    0372 F009      BEQ	0x0374
    0373 C026      RJMP	0x039A
(0153)     {
(0154)       case 1:
(0155)       case 3:
(0156)       case 5:
(0157)       case 7:
(0158)       case 8:
(0159)       case 10:
(0160)       case 12:tian=31;break;
    0374 E14F      LDI	R20,0x1F
    0375 C024      RJMP	0x039A
(0161)       case 4:
(0162)       case 6:
(0163)       case 9:
(0164)       case 11:tian=30;break;
    0376 E14E      LDI	R20,0x1E
    0377 C022      RJMP	0x039A
(0165)       case 2: if((year%4==0&&year%100!=0)||(year%400==0))tian=29;else tian=28;break;
    0378 91800106  LDS	R24,year
    037A 91900107  LDS	R25,year+1
    037C 7083      ANDI	R24,3
    037D 7090      ANDI	R25,0
    037E 3080      CPI	R24,0
    037F 0789      CPC	R24,R25
    0380 F459      BNE	0x038C
    0381 E624      LDI	R18,0x64
    0382 E030      LDI	R19,0
    0383 91000106  LDS	R16,year
    0385 91100107  LDS	R17,year+1
    0387 940E0642  CALL	mod16u
    0389 3000      CPI	R16,0
    038A 0701      CPC	R16,R17
    038B F459      BNE	0x0397
    038C E920      LDI	R18,0x90
    038D E031      LDI	R19,1
    038E 91000106  LDS	R16,year
    0390 91100107  LDS	R17,year+1
    0392 940E0642  CALL	mod16u

⌨️ 快捷键说明

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