📄 wiegand.lst
字号:
642 1 Wiegand_dat=Wiegand_dat<<8;
643 1
644 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
645 1 Wiegand_dat=Wiegand_dat<<8;
646 1
647 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
648 1 Wiegand_dat=Wiegand_dat<<8;
649 1
650 1 Wiegand_dat=Wiegand_dat+2; // 双锁联动
651 1
652 1 Send_Wiegand();
653 1
654 1 for(i=0; i<10; i++)
655 1 Wait10ms();
656 1
657 1 // 发两次保险
658 1 Wiegand_dat=0x000000f8; // F8设置锁控方式命令
659 1 Wiegand_dat=Wiegand_dat<<8;
660 1
661 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
662 1 Wiegand_dat=Wiegand_dat<<8;
663 1
664 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
665 1 Wiegand_dat=Wiegand_dat<<8;
666 1
667 1 Wiegand_dat=Wiegand_dat+2; // 双锁联动
668 1
669 1 Send_Wiegand();
670 1
671 1 Wiegand_dat=0;
672 1 Wgnd_count=0;
673 1 }
674
675 ///////////////////////////////////////////////////////////////////////////////
C51 COMPILER V7.07 WIEGAND 09/15/2005 12:05:42 PAGE 12
676 // 自定义正常操作发送合法用户号
677 ///////////////////////////////////////////////////////////////////////////////
678 void normal_send()
679 {
680 1 idata uchar i;
681 1
682 1 Wiegand_dat=areaaddr; // 分组地址
683 1 Wiegand_dat=Wiegand_dat<<8;
684 1
685 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
686 1 Wiegand_dat=Wiegand_dat<<16;
687 1
688 1 Wiegand_dat=Wiegand_dat+asctoint(User_id); // 用户编号
689 1
690 1 Send_Wiegand();
691 1
692 1 for(i=0; i<7; i++)
693 1 Wait10ms();
694 1
695 1 // 发两次保险
696 1 Wiegand_dat=areaaddr; // 分组地址
697 1 Wiegand_dat=Wiegand_dat<<8;
698 1
699 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
700 1 Wiegand_dat=Wiegand_dat<<16;
701 1
702 1 Wiegand_dat=Wiegand_dat+asctoint(User_id); // 用户编号
703 1
704 1 Send_Wiegand();
705 1
706 1 Wiegand_dat=0;
707 1 Wgnd_count=0;
708 1 }
709
710 ///////////////////////////////////////////////////////////////////////////////
711 // 26位韦根正常操作发送合法用户号
712 ///////////////////////////////////////////////////////////////////////////////
713 void send26()
714 {
715 1 Wiegand_dat=decaddr; // 设备地址
716 1 Wiegand_dat=Wiegand_dat<<16;
717 1
718 1 Wiegand_dat=Wiegand_dat+asctoint(User_id); // 用户编号
719 1
720 1 Send_Wiegand();
721 1
722 1 Wiegand_dat=0;
723 1 Wgnd_count=0;
724 1 }
725
726 ///////////////////////////////////////////////////////////////////////////////
727 // 34位韦根正常操作发送合法用户号
728 ///////////////////////////////////////////////////////////////////////////////
729 void send34()
730 {
731 1 Wiegand_dat=areaaddr; // 分组地址
732 1 Wiegand_dat=Wiegand_dat<<8;
733 1
734 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
735 1 Wiegand_dat=Wiegand_dat<<16;
736 1
737 1 Wiegand_dat=Wiegand_dat+asctoint(User_id); // 用户编号
C51 COMPILER V7.07 WIEGAND 09/15/2005 12:05:42 PAGE 13
738 1
739 1 Send_Wiegand();
740 1
741 1 Wiegand_dat=0;
742 1 Wgnd_count=0;
743 1 }
744
745 ///////////////////////////////////////////////////////////////////////////////
746 // 注册终端地址
747 ///////////////////////////////////////////////////////////////////////////////
748 void addr_reg()
749 {
750 1 idata uchar i;
751 1
752 1 Wiegand_dat=0x000000f6; // F6注册终端地址
753 1 Wiegand_dat=Wiegand_dat<<8;
754 1
755 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
756 1 Wiegand_dat=Wiegand_dat<<8;
757 1
758 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
759 1 Wiegand_dat=Wiegand_dat<<8;
760 1 Send_Wiegand();
761 1
762 1 for(i=0; i<10; i++)
763 1 Wait10ms();
764 1
765 1 // 发两次保险
766 1 Wiegand_dat=0x000000f6; // F6注册终端地址
767 1 Wiegand_dat=Wiegand_dat<<8;
768 1
769 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
770 1 Wiegand_dat=Wiegand_dat<<8;
771 1
772 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
773 1 Wiegand_dat=Wiegand_dat<<8;
774 1 Send_Wiegand();
775 1
776 1 Wiegand_dat=0;
777 1 Wgnd_count=0;
778 1 }
779
780 ///////////////////////////////////////////////////////////////////////////////
781 // 清空所有白名单
782 ///////////////////////////////////////////////////////////////////////////////
783 void erase_bill()
784 {
785 1 idata uchar i;
786 1
787 1 Wiegand_dat=0x000000f7; // F7清空所有白名单
788 1 Wiegand_dat=Wiegand_dat<<8;
789 1
790 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
791 1 Wiegand_dat=Wiegand_dat<<8;
792 1
793 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
794 1 Wiegand_dat=Wiegand_dat<<8;
795 1 Send_Wiegand();
796 1
797 1 for(i=0; i<10; i++)
798 1 Wait10ms();
799 1
C51 COMPILER V7.07 WIEGAND 09/15/2005 12:05:42 PAGE 14
800 1 // 发三次保险
801 1 Wiegand_dat=0x000000f7; // F7清空所有白名单
802 1 Wiegand_dat=Wiegand_dat<<8;
803 1
804 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
805 1 Wiegand_dat=Wiegand_dat<<8;
806 1
807 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
808 1 Wiegand_dat=Wiegand_dat<<8;
809 1 Send_Wiegand();
810 1
811 1 for(i=0; i<10; i++)
812 1 Wait10ms();
813 1
814 1 // 发三次保险
815 1 Wiegand_dat=0x000000f7; // F7清空所有白名单
816 1 Wiegand_dat=Wiegand_dat<<8;
817 1
818 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
819 1 Wiegand_dat=Wiegand_dat<<8;
820 1
821 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
822 1 Wiegand_dat=Wiegand_dat<<8;
823 1 Send_Wiegand();
824 1
825 1 Wiegand_dat=0;
826 1 Wgnd_count=0;
827 1 }
828
829 ///////////////////////////////////////////////////////////////////////////////
830 // 电话设置报警控制
831 ///////////////////////////////////////////////////////////////////////////////
832 void tele_alarm()
833 {
834 1 Wiegand_dat=0x000000f9; // F9电话布防
835 1 Wiegand_dat=Wiegand_dat<<8;
836 1
837 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
838 1 Wiegand_dat=Wiegand_dat<<8;
839 1
840 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
841 1 Wiegand_dat=Wiegand_dat<<8;
842 1 Send_Wiegand();
843 1
844 1 Wiegand_dat=0;
845 1 Wgnd_count=0;
846 1 }
847
848 ///////////////////////////////////////////////////////////////////////////////
849 // 电话去除报警控制
850 ///////////////////////////////////////////////////////////////////////////////
851 void tele_alarm_off()
852 {
853 1 Wiegand_dat=0x000000fa; // FA电话撤防
854 1 Wiegand_dat=Wiegand_dat<<8;
855 1
856 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
857 1 Wiegand_dat=Wiegand_dat<<8;
858 1
859 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
860 1 Wiegand_dat=Wiegand_dat<<8;
861 1 Send_Wiegand();
C51 COMPILER V7.07 WIEGAND 09/15/2005 12:05:42 PAGE 15
862 1
863 1 Wiegand_dat=0;
864 1 Wgnd_count=0;
865 1 }
866
867 ///////////////////////////////////////////////////////////////////////////////
868 // 注册报警电话
869 ///////////////////////////////////////////////////////////////////////////////
870 void reg_tele()
871 {
872 1 idata uchar i;
873 1 idata uchar temp;
874 1
875 1 Wiegand_dat=0x000000fb; // FB登记报警电话
876 1
877 1 for(i=0;i<3;i++)
878 1 {
879 2 Wiegand_dat=Wiegand_dat<<8;
880 2
881 2 temp=0;
882 2 if(tele_code[2*i]>0x39) // 共计12位定长电话号码
883 2 temp=tele_code[2*i]-0x37;
884 2 else
885 2 temp=tele_code[2*i]-0x30;
886 2
887 2 temp=temp<<4;
888 2
889 2 if(tele_code[2*i+1]>0x39)
890 2 temp=temp+(tele_code[2*i+1]-0x37);
891 2 else
892 2 temp=temp+(tele_code[2*i+1]-0x30);
893 2
894 2 Wiegand_dat=Wiegand_dat+temp;
895 2 }
896 1
897 1 Send_Wiegand();
898 1
899 1 Wiegand_dat=0;
900 1 Wgnd_count=0;
901 1
902 1 for(i=0;i<10;i++)
903 1 Wait10ms(); // 发送第二部分电话号码
904 1
905 1 Wiegand_dat=0x000000fb; // FB登记报警电话
906 1
907 1 for(i=3;i<6;i++)
908 1 {
909 2 Wiegand_dat=Wiegand_dat<<8;
910 2
911 2 temp=0;
912 2 if(tele_code[2*i]>0x39) // 共计12位定长电话号码
913 2 temp=tele_code[2*i]-0x37;
914 2 else
915 2 temp=tele_code[2*i]-0x30;
916 2
917 2 temp=temp<<4;
918 2
919 2 if(tele_code[2*i+1]>0x39)
920 2 temp=temp+(tele_code[2*i+1]-0x37);
921 2 else
922 2 temp=temp+(tele_code[2*i+1]-0x30);
923 2
C51 COMPILER V7.07 WIEGAND 09/15/2005 12:05:42 PAGE 16
924 2 Wiegand_dat=Wiegand_dat+temp;
925 2 }
926 1
927 1 Send_Wiegand();
928 1
929 1 Wiegand_dat=0;
930 1 Wgnd_count=0;
931 1 }
932
933 ///////////////////////////////////////////////////////////////////////////////
934 // 清除报警电话号码
935 ///////////////////////////////////////////////////////////////////////////////
936 void erase_tele()
937 {
938 1 Wiegand_dat=0x000000fc; // FC清电话报警号码
939 1 Wiegand_dat=Wiegand_dat<<8;
940 1
941 1 Wiegand_dat=Wiegand_dat+areaaddr; // 分组地址
942 1 Wiegand_dat=Wiegand_dat<<8;
943 1
944 1 Wiegand_dat=Wiegand_dat+decaddr; // 设备地址
945 1 Wiegand_dat=Wiegand_dat<<8;
946 1 Send_Wiegand();
947 1
948 1 Wiegand_dat=0;
949 1 Wgnd_count=0;
950 1 }
951
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1927 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- 25
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -