📄 rec.lst
字号:
333
020A D2A0 334 SETB LLOW ;关低'中'高
020C D2A1 335 SETB MDI
020E D2A2 336 SETB HIGHT
0210 201145 337 JB LREC,ZHUAN1 ;查询
0213 201042 338 JB LKEYON,ZHUAN1 ;查询
0216 91B1 339 CALL DY10S
340
0218 C2A1 341 CLR MDI ;开中档
021A 20113B 342 JB LREC,ZHUAN1 ;查询
021D 201038 343 JB LKEYON,ZHUAN1 ;查询
0220 91B1 344 CALL DY10S
345
0222 D2A0 346 SETB LLOW ;关低'中'高
0224 D2A1 347 SETB MDI
0226 D2A2 348 SETB HIGHT
0228 20112D 349 JB LREC,ZHUAN1 ;查询
022B 20102A 350 JB LKEYON,ZHUAN1 ;查询
022E 91B1 351 CALL DY10S
352
0230 D2A0 353 SETB LLOW ;关低'中'高
0232 D2A1 354 SETB MDI
0234 D2A2 355 SETB HIGHT
0236 20111F 356 JB LREC,ZHUAN1 ;查询
0239 20101C 357 JB LKEYON,ZHUAN1 ;查询
023C 91B1 358 CALL DY10S
359
023E C2A2 360 CLR HIGHT ;开高档
0240 201115 361 JB LREC,ZHUAN1 ;查询
0243 201012 362 JB LKEYON,ZHUAN1 ;查询
0246 91B1 363 CALL DY10S
364
0248 D2A0 365 SETB LLOW ;关低'中'高
024A D2A1 366 SETB MDI
024C D2A2 367 SETB HIGHT
024E 201107 368 JB LREC,ZHUAN1 ;查询
0251 201004 369 JB LKEYON,ZHUAN1 ;查询
0254 91B1 370 CALL DY10S
0256 21ED 371 AJMP SKEEP
0258 C209 372 ZHUAN1: CLR SMF
025A D20A 373 SETB ZCF
025C 2123 374 FAN2: JMP MAIN
375 ;------------------------------------------------------------------------------
376 ;正常风控制
377
A51 MACRO ASSEMBLER REC 08/06/2005 09:37:33 PAGE 5
025E 378 SPRING:
379
025E 300A3E 380 JNB ZCF,FAN3
0261 C20A 381 CLR ZCF
0263 382 SPRING1:
0263 D2A0 383 SETB LLOW ;处理正常风,关低'中'高
0265 D2A1 384 SETB MDI
0267 D2A2 385 SETB HIGHT
0269 917F 386 CALL DY20MS
026B C2A0 387 CLR LLOW ;开低档
026D 20112D 388 JB LREC,ZHUAN2 ;查询
0270 20102A 389 JB LKEYON,ZHUAN2 ;查询
0273 91B1 390 CALL DY10S
391
0275 D2A0 392 SETB LLOW ;关低'中'高
0277 D2A1 393 SETB MDI
0279 D2A2 394 SETB HIGHT
027B 12047F 395 LCALL DY20MS
027E 20111C 396 JB LREC,ZHUAN2 ;查询
0281 201019 397 JB LKEYON,ZHUAN2 ;查询
0284 C2A1 398 CLR MDI ;开中档
0286 91B1 399 CALL DY10S
400
401
0288 D2A0 402 SETB LLOW ;关低'中'高
028A D2A1 403 SETB MDI
028C D2A2 404 SETB HIGHT
028E 12047F 405 LCALL DY20MS
0291 201109 406 JB LREC,ZHUAN2 ;查询
0294 201006 407 JB LKEYON,ZHUAN2 ;查询
0297 C2A2 408 CLR HIGHT ;开高档
0299 91B1 409 CALL DY10S
029B 415E 410 AJMP SPRING
029D C20A 411 ZHUAN2: CLR ZCF
029F 2123 412 FAN3: JMP MAIN
413
414 ;------------------------------------------------------------------------------
415 ;定时控制
416 ;------------------------------------------------------------------------------
02A1 417 KEY4:
02A1 B4042D 418 CJNE A,#04H,KEY5 ;K4的定时的处理程序
02A4 20010F 419 JB SJ01,DY1H
02A7 200215 420 JB SJ02,DY2H
02AA 20031B 421 JB SJ03,DY4H
02AD 30001F 422 JNB SJ00,FAN4
02B0 C200 423 CLR SJ00
02B2 D28C 424 SETB TR0 ;0 5H处理
02B4 2123 425 JMP MAIN
426
02B6 427 DY1H:
02B6 300116 428 JNB SJ01,FAN4
02B9 C201 429 CLR SJ01
02BB D28C 430 SETB TR0
02BD 2123 431 JMP MAIN
432
02BF 433 DY2H:
02BF 30020D 434 JNB SJ02,FAN4
02C2 C202 435 CLR SJ02
02C4 D28C 436 SETB TR0
02C6 2123 437 JMP MAIN
438
02C8 439 DY4H:
02C8 300304 440 JNB SJ03,FAN4
02CB C202 441 CLR SJ02
02CD D28C 442 SETB TR0
02CF 2123 443 FAN4: JMP MAIN
A51 MACRO ASSEMBLER REC 08/06/2005 09:37:33 PAGE 6
444 ;------------------------------------------------------------------------------
445 ;开关机
446 ;------------------------------------------------------------------------------
02D1 447 KEY5:
02D1 B40515 448 CJNE A,#05H,POTHER ;开关机处理程序
02D4 201208 449 JB KAI,GUAN
02D7 C2A1 450 CLR MDI
02D9 C281 451 CLR LED_M
02DB D212 452 SETB KAI
02DD 2123 453 JMP MAIN ;返
454
02DF D2A0 455 GUAN: SETB LLOW ;关低'中'高
02E1 D2A1 456 SETB MDI
02E3 D2A2 457 SETB HIGHT
02E5 C212 458 CLR KAI
02E7 2123 459 JMP MAIN
02E9 460 POTHER:
02E9 2123 461 JMP MAIN ;其他键的不处理直接返回
462 ;==============================================================================
463 ;T0定时中断处理
464 ;==============================================================================
02EB 465 LP0:
02EB C0E0 466 PUSH ACC ;中断处理
02ED C0D0 467 PUSH PSW
02EF 758C3C 468 MOV TH0,#3CH ;定时50MS
02F2 758AB0 469 MOV TL0,#0B0H
02F5 D5435D 470 DJNZ CUZHI,GRET ;1S到后向下执行
02F8 754314 471 MOV CUZHI,#20 ;给50MS的寄存器给初值
02FB 0540 472 INC SEN
02FD E540 473 MOV A,SEN
02FF B43C53 474 CJNE A,#60,GRET ;1分钟到后向下执行
0302 0541 475 INC MIN
0304 E541 476 MOV A,MIN
477
0306 200113 478 JB SJ01,LOOP_1H ;定时1小时的处理
0309 20021F 479 JB SJ02,LOOP_2H ;定时2小时的处理
030C 200332 480 JB SJ03,LOOP_4H ;定时4小时的处理
030F B41E43 481 CJNE A,#30,GRET ;半小时到后向下执行
0312 7590FF 482 MOV P1,#0FFH ;关断所有档位
0315 7580FF 483 MOV P0,#0FFH
0318 D201 484 SETB SJ01 ;将1H的标志位进行置 1
031A 8039 485 JMP GRET
031C 486 LOOP_1H:
031C B43C36 487 CJNE A,#60,GRET ;1小时到后向下执行
031F 7590FF 488 MOV P1,#0FFH
0322 7580FF 489 MOV P0,#0FFH
0325 C201 490 CLR SJ01 ;将1H的标志位进行置 0
0327 D202 491 SETB SJ02 ;将2H的标志位进行置 1
0329 802A 492 JMP GRET
032B 493 LOOP_2H:
032B B43C27 494 CJNE A,#60,GRET ;1小时到后向下执行
032E 0542 495 INC HOUR
0330 E542 496 MOV A,HOUR
0332 B40220 497 CJNE A,#2,GRET
0335 7590FF 498 MOV P1,#0FFH ;关断
0338 7580FF 499 MOV P0,#0FFH
033B C202 500 CLR SJ02 ;关断2H的标志位
033D D203 501 SETB SJ03 ;将4H的标志位进行置位
033F 8014 502 JMP GRET ;中断返回
0341 503 LOOP_4H:
0341 B43C11 504 CJNE A,#60,GRET ;1小时到后向下执行
0344 0542 505 INC HOUR
0346 E542 506 MOV A,HOUR
0348 B4040A 507 CJNE A,#4,GRET ;4小时到后向下执行
034B 7590FF 508 MOV P1,#0FFH ;关断
034E 7580FF 509 MOV P0,#0FFH
A51 MACRO ASSEMBLER REC 08/06/2005 09:37:33 PAGE 7
0351 C203 510 CLR SJ03 ;将4H的标志位进行清零
0353 8000 511 JMP GRET ;中断返回
0355 512 GRET:
0355 C28C 513 CLR TR0
0357 D0D0 514 POP PSW
0359 D0E0 515 POP ACC
035B 32 516 RETI
517
518 ;==============================================================================
519 ;INT0中断处理程序:对接收数据进行接收
520 ;==============================================================================
035C 521 JISH_INT0:
035C C0E0 522 PUSH ACC
035E C0D0 523 PUSH PSW
0360 C2A8 524 CLR EX0 ;关断中断
0362 7E0A 525 MOV R6,#10 ;避开9MS时间的引导码
0364 91C5 526 SB: CALL DY882US
0366 20B239 527 JB P3.2,EXIT ;,EX检测为1时退出
0369 DEF9 528 DJNZ R6,SB ;检测为0时,引导码过
036B 30B2FD 529 JNB P3.2,$; ;检测为0时,等待
036E 91D7 530 ACALL DY4700US ;避开4。5MS时间的引导码
0370 7F10 531 MOV R7,#16 ;避开系统码
0372 30B2FD 532 JJJJA: JNB P3.2,$
0375 1204C5 533 LCALL DY882US
0378 A2B2 534 MOV C,P3.2 ;将P3.2送C中
037A 5003 535 JNC UUUA ;若C=0则转
037C 1204CE 536 LCALL DY1000US
037F DFF1 537 UUUA: DJNZ R7,JJJJA
0381 7930 538 MOV R1,#MRD
0383 7A02 539 MOV R2,#2
0385 7B08 540 PP: MOV R3,#8 ;右移的次数
0387 30B2FD 541 JJJJ: JNB P3.2,$ ;=0则等
038A 1204C5 542 LCALL DY882US
038D A2B2 543 MOV C,P3.2 ;送C中
038F 5003 544 JNC UUU
0391 1204CE 545 LCALL DY1000US
0394 E7 546 UUU: MOV A,@R1 ;送存贮的首址
0395 13 547 RRC A
0396 F7 548 MOV @R1,A ;送存贮单元中
0397 DBEE 549 DJNZ R3,JJJJ ;完成一个字节,没完则
0399 09 550 INC R1
039A DAE9 551 DJNZ R2,PP
039C E530 552 MOV A,MRD
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -