📄 protocol.lst
字号:
496 6 Write1B(Short_Bak,170+(House_R-1)/8,0);
497 6
498 6 Break_En=Read1B(245+(House_R-1)/8,0);
499 6 Break_Bak=Read1B(175+(House_R-1)/8,0);
500 6 if (Rcv_Tmp&0x10)
501 6 {
502 7 Break_En|=(1<<((House_R-1)%8));
503 7 }
504 6 else
505 6 {
506 7 Break_En&=~(1<<((House_R-1)%8));
507 7 Break_Bak&=~(1<<((House_R-1)%8));
508 7 Break_New[(House_R-1)/8]=0;
509 7 }
510 6 Write1B(Break_En,245+(House_R-1)/8,0);
511 6 Write1B(Break_Bak,175+(House_R-1)/8,0);
512 6
513 6 Power_En=Read1B(160+(House_R-1)/8,1);
514 6 if (Rcv_Tmp&0x40)
515 6 {
516 7 Power_En|=(1<<((House_R-1)%8));
517 7 }
518 6 else Power_En&=~(1<<((House_R-1)%8));
519 6 Write1B(Power_En,160+(House_R-1)/8,1);
520 6 }
521 5 }
522 4 else //0xff
523 4 {
524 5 if(Rcv_Buf[Rcv_Rp+10]!=0xff)
525 5 {
526 6 if (Rcv_Buf[Rcv_Rp+10]&0x80) //Hdd_En
527 6 {
528 7 for(i=0;i<5;i++)
529 7 {
530 8 Write1B(0xff,250+i,0);
531 8 }
532 7 }
533 6 else
534 6 {
535 7 for(i=0;i<5;i++)
536 7 {
537 8 Write1B(0x0,250+i,0);
538 8 }
539 7 }
540 6 //Type
541 6 Rcv_Tmp=Rcv_Buf[Rcv_Rp+10]&0x0f;
542 6 for(i=0;i<40;i++)
543 6 {
544 7 Tmp=Read1B(200+i,0);
545 7 Tmp&=0xf0;
546 7 Rcv_Tmp|=Tmp;
547 7 Write1B(Rcv_Tmp,200+i,0);
548 7 }
549 6 }
550 5
551 5 if(Rcv_Buf[Rcv_Rp+16]!=0xff) //Point
C51 COMPILER V6.12 PROTOCOL 01/03/2005 12:08:20 PAGE 10
552 5 {
553 6 Rcv_Tmp=Rcv_Buf[Rcv_Rp+16];
554 6 Rcv_Tmp<<=4;
555 6 for(i=0;i<40;i++)
556 6 {
557 7 Tmp=Read1B(200+i,0);
558 7 Tmp&=0x0f;
559 7 Rcv_Tmp|=Tmp;
560 7 Write1B(Rcv_Tmp,200+i,0);
561 7 }
562 6 }
563 5 //CONST
564 5 if(Rcv_Buf[Rcv_Rp+14]!=0xff)
565 5 {
566 6 Rcv_Tmp=Rcv_Buf[Rcv_Rp+14];
567 6 Rcv_Tmp<<=4;
568 6 for(i=0;i<40;i++)
569 6 {
570 7 Tmp=Read1B(120+i,1);
571 7 Tmp&=0x0f;
572 7 Rcv_Tmp|=Tmp;
573 7 Write1B(Rcv_Tmp,120+i,1);
574 7 }
575 6 }
576 5 //RANGE
577 5 if(Rcv_Buf[Rcv_Rp+15]!=0xff)
578 5 {
579 6 Rcv_Tmp=Rcv_Buf[Rcv_Rp+15]&0x0f;
580 6 for(i=0;i<40;i++)
581 6 {
582 7 Tmp=Read1B(120+i,1);
583 7 Tmp&=0xf0;
584 7 Rcv_Tmp|=Tmp;
585 7 Write1B(Rcv_Tmp,120+Tmp,1);
586 7 }
587 6 }
588 5 Rcv_Tmp=Rcv_Buf[Rcv_Rp+17];
589 5 if(Rcv_Tmp!=0xff)
590 5 {
591 6 //Short_En
592 6 for(i=0;i<5;i++)
593 6 {
594 7 if (Rcv_Tmp&0x04)
595 7 {
596 8 Short_En=0xff;
597 8 }
598 7 else Short_En=0;
599 7 Write1B(Short_En,240+i,0);
600 7 }
601 6 //Break_En
602 6 for(i=0;i<5;i++)
603 6 {
604 7 if (Rcv_Tmp&0x10)
605 7 {
606 8 Break_En=0xff;
607 8 }
608 7 else Break_En=0;
609 7 Write1B(Break_En,245+i,0);
610 7 }
611 6 //Power_En
612 6 for(i=0;i<5;i++)
613 6 {
C51 COMPILER V6.12 PROTOCOL 01/03/2005 12:08:20 PAGE 11
614 7 if (Rcv_Tmp&0x40)
615 7 {
616 8 Power_En=0xff;
617 8 }
618 7 else Power_En=0;
619 7 Write1B(Power_En,160+i,1);
620 7 }
621 6 }
622 5
623 5 }
624 4 Trs_Comm=0xbb;
625 4 Trs_Comm_Bak=0xb1;
626 4 Trs_Flag=1;
627 4 HddEn_Count=1;
628 4 /* HddEn_Sum=0;
629 4 for (i=0;i<5;i++)
630 4 {
631 4 Hdd_En=Read1B(250+i,0);
632 4 for(j=0;j<8;j++)
633 4 {
634 4 if((Hdd_En&(1<<j))!=0)
635 4 {
636 4 HddEn_Sum++;
637 4 House_Max=i*8+j+1;
638 4 }
639 4 }
640 4 } */
641 4 }
642 3 break;
643 3 case (0x32):
644 3 if(Rcv_Buf[Rcv_Rp+7]==Station)
645 3 {
646 4 Trs_Comm=0xb2;
647 4 House_R=Rcv_Buf[Rcv_Rp+9];
648 4 Trs_Flag=1;
649 4 B3=0;
650 4 }
651 3 break;
652 3 case (0x33):
653 3 if(Rcv_Buf[Rcv_Rp+7]==Station)
654 3 {
655 4 House_R=Rcv_Buf[Rcv_Rp+9];
656 4 Hdd_Str.Hdd_B[3]=Rcv_Buf[Rcv_Rp+10];
657 4 Hdd_Str.Hdd_B[2]=Rcv_Buf[Rcv_Rp+11];
658 4 Hdd_Str.Hdd_B[1]=Rcv_Buf[Rcv_Rp+12];
659 4 Hdd_Str.Hdd_B[0]=Rcv_Buf[Rcv_Rp+13];
660 4 if(House_R==0xff)
661 4 {
662 5 for(i=0;i<40;i++)
663 5 {
664 6 Write_Hdd(i);
665 6 }
666 5 }
667 4 else
668 4 {
669 5 Write_Hdd(House_R-1);
670 5 }
671 4 Trs_Comm=0xbb;
672 4 Trs_Comm_Bak=0xb3;
673 4 Trs_Flag=1;
674 4 }
675 3 break;
C51 COMPILER V6.12 PROTOCOL 01/03/2005 12:08:20 PAGE 12
676 3 case (0x34):
677 3 if(Rcv_Buf[Rcv_Rp+7]==Station)
678 3 {
679 4 House_R=Rcv_Buf[Rcv_Rp+9];
680 4 Alarm_Select=Rcv_Buf[Rcv_Rp+10];
681 4 Trs_Comm=0xb4;
682 4 Trs_Flag=1;
683 4 }
684 3 break;
685 3 case (0x35): //Clear Alarm
686 3 if(Rcv_Buf[Rcv_Rp+7]==Station)
687 3 {
688 4 Trs_Comm=0xbb;
689 4 Trs_Comm_Bak=0xb5;
690 4 Trs_Flag=1;
691 4 }
692 3 if(Rcv_Buf[Rcv_Rp+7]==Station
693 3 ||(Rcv_Buf[Rcv_Rp+7]==0xff&&Rcv_Buf[Rcv_Rp+8]==0xff))
694 3 {
695 4 House_R=Rcv_Buf[Rcv_Rp+9];
696 4 Alarm_Check=1;
697 4 if(House_R!=0xff)
698 4 {
699 5
700 5 if (Rcv_Buf[Rcv_Rp+10]&0x04) //Short
701 5 {
702 6 i=Read1B(170+(House_R-1)/8,0);
703 6 i&=~(1<<((House_R-1)%8));
704 6 Write1B(i,170+(House_R-1)/8,0);
705 6 Short_New[(House_R-1)/8]=i;
706 6 }
707 5 if (Rcv_Buf[Rcv_Rp+10]&0x10) //Break
708 5 {
709 6 i=Read1B(175+(House_R-1)/8,0);
710 6 i&=~(1<<((House_R-1)%8));
711 6 Write1B(i,175+(House_R-1)/8,0);
712 6 Break_New[(House_R-1)/8]=i;
713 6 }
714 5
715 5 }
716 4 else
717 4 {
718 5 if (Rcv_Buf[Rcv_Rp+10]&0x04)
719 5 {
720 6 for(i=0;i<5;i++)
721 6 {
722 7 Write1B(0,170+i,0);
723 7 }
724 6 }
725 5 if (Rcv_Buf[Rcv_Rp+10]&0x10)
726 5 {
727 6 for(i=0;i<5;i++)
728 6 {
729 7 Write1B(0,175+i,0);
730 7 }
731 6 }
732 5
733 5 }
734 4 }
735 3 break;
736 3 /* case (0x37): //Yk TongDuan
737 3
C51 COMPILER V6.12 PROTOCOL 01/03/2005 12:08:20 PAGE 13
738 3 if(Rcv_Buf[Rcv_Rp+7]==Relay_Station
739 3 ||(Rcv_Buf[Rcv_Rp+7]==0xff&&Rcv_Buf[Rcv_Rp+8]==0xff))
740 3 {
741 3 House_R=Rcv_Buf[Rcv_Rp+9];
742 3 RelayOffTimes[House_R-1]=0;
743 3 }
744 3
745 3
746 3 break;
747 3 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -