📄 system.lst
字号:
745 5 }
746 5 }
747 5 }
748 5 else
749 5 {
750 5 LOADPP = DataBuf[6]*4096 + DataBuf[7]*256 + DataBuf[4]*16 + DataBuf[5] - 1;
751 5 if((LOADPP < LOADP) || (LOADPP >= SAVEP))
752 5 {
753 5 LOADP = LOADPP;
754 5 if(LOADPP >= SAVEP)
755 5 {
756 5 D0_flag = 1;
757 5 I2C_rcv[0] |= 1;
758 5 AT24C128_write(0x05,I2C_rcv,1);
759 5 }
760 5 I2C_rcv[1] = (LOADP >> 8) & 0x00ff;
761 5 I2C_rcv[2] = LOADP& 0x00ff;
762 5 AT24C128_write(0x01,I2C_rcv + 1,2);
763 5 purview_timer = 0x4B0;
764 5 DataBuf[7] = 0x30;
765 5 DataBuf[8] = 0x30;
766 5 send_chk(18);
767 5 }
768 5 else
769 5 {
770 5 purview_timer = 0x4B0;
771 5 DataBuf[7] = 0x30;
772 5 DataBuf[8] = 0x36;
773 5 send_chk(18);
774 5 }
775 5 }*/
776 5 }
777 4 }
778 3 else if(DataBuf[2] == 0xE6) //门锁继电器执行时间(单独设定)
779 3 {
780 4 relay_timer1 = (DataBuf[4]<<4) + DataBuf[5];
781 4 if(relay_timer1 < 20)
782 4 relay_timer1 = 20;
783 4 if(relay_timer1 > 127)
784 4 relay_timer1 = 127;
785 4 I2C_rcv[0] = relay_timer1;
786 4 AT24C128_write(0x06,I2C_rcv,1);
787 4 purview_timer = 0x4B0;
788 4 DataBuf[7] = 0x30;
789 4 DataBuf[8] = 0x30;
790 4 send_chk(18);
791 4 }
792 3 else if(DataBuf[2] == 0xE7) //开门后等待进入的延时时间(单独设定)
793 3 {
794 4 open_timer1 = (DataBuf[4]<<4) + DataBuf[5];
795 4 if(open_timer1 < 20)
796 4 open_timer1 = 20;
797 4 I2C_rcv[0] = open_timer1;
798 4 AT24C128_write(0x07,I2C_rcv,1);
799 4 purview_timer = 0x4B0;
C51 COMPILER V7.50 SYSTEM 02/16/2009 09:18:46 PAGE 14
800 4 DataBuf[7] = 0x30;
801 4 DataBuf[8] = 0x30;
802 4 send_chk(18);
803 4 }
804 3 else if(DataBuf[2] == 0xE8) //红外报警输出的被确认时间(单独设定)
805 3 {
806 4 infrared_alarm_timer1 = (DataBuf[4]<<4) + DataBuf[5];
807 4 if(infrared_alarm_timer1 < 20)
808 4 infrared_alarm_timer1 = 20;
809 4 I2C_rcv[0] = infrared_alarm_timer1;
810 4 AT24C128_write(0x08,I2C_rcv,1);
811 4 purview_timer = 0x4B0;
812 4 DataBuf[7] = 0x30;
813 4 DataBuf[8] = 0x30;
814 4 send_chk(18);
815 4 }
816 3 else if(DataBuf[2] == 0xE9) //设定异地报警的延时时间(单独设定)
817 3 {
818 4 if(uart_rcv_len == 6)
819 4 {
820 5 exotic_alarm_timer1 = (DataBuf[4]<<4) + DataBuf[5];
821 5 if(exotic_alarm_timer1 < 20)
822 5 exotic_alarm_timer1 = 20;
823 5 I2C_rcv[0] = exotic_alarm_timer1;
824 5 AT24C128_write(0x09,I2C_rcv,1);
825 5 purview_timer = 0x4B0;
826 5 DataBuf[7] = 0x30;
827 5 DataBuf[8] = 0x30;
828 5 send_chk(18);
829 5 }
830 4 }
831 3 else if(DataBuf[2] == 0xEF) //开启红外监控后的等待延时
832 3 {
833 4 infrared_comm_timer1 = (DataBuf[6]<<4) + DataBuf[7];
834 4 if(infrared_comm_timer1 < 20)
835 4 infrared_comm_timer1 = 20;
836 4 I2C_rcv[0] = infrared_comm_timer1;
837 4 AT24C128_write(0x0A,I2C_rcv,1);
838 4 purview_timer = 0x4B0;
839 4 DataBuf[7] = 0x30;
840 4 DataBuf[8] = 0x30;
841 4 send_chk(18);
842 4 }
843 3 else if(DataBuf[2] == 0xFB) //门开关状态监控的布防与撤防
844 3 { //D7
845 4 DataBuf[4] = (DataBuf[4]<<4) + DataBuf[5];
846 4 if(DataBuf[4] == 0)
847 4 {
848 5 col_flag1 &= 0x7F;
849 5 AT24C128_write(0x0B,&col_flag1,1);
850 5 purview_timer = 0x4B0;
851 5 DataBuf[7] = 0x30;
852 5 DataBuf[8] = 0x30;
853 5 send_chk(18);
854 5 }
855 4 else if(DataBuf[4] == 1)
856 4 {
857 5 col_flag1 |= 0x80;
858 5 AT24C128_write(0x0B,&col_flag1,1);
859 5 purview_timer = 0x4B0;
860 5 DataBuf[7] = 0x30;
861 5 DataBuf[8] = 0x30;
C51 COMPILER V7.50 SYSTEM 02/16/2009 09:18:46 PAGE 15
862 5 send_chk(18);
863 5 }
864 4 }
865 3 else if(DataBuf[2] == 0xFA) //红外监控的布防与撤防
866 3 { //D6
867 4 DataBuf[4] = (DataBuf[4]<<4) + DataBuf[5];
868 4 if(DataBuf[4] == 0)
869 4 {
870 5 col_flag1 &= 0xBF;
871 5 AT24C128_write(0x0B,&col_flag1,1);
872 5 purview_timer = 0x4B0;
873 5 DataBuf[7] = 0x30;
874 5 DataBuf[8] = 0x30;
875 5 send_chk(18);
876 5 }
877 4 else if(DataBuf[4] == 1)
878 4 {
879 5 col_flag1 |= 0x40;
880 5 AT24C128_write(0x0B,&col_flag1,1);
881 5 purview_timer = 0x4B0;
882 5 DataBuf[7] = 0x30;
883 5 DataBuf[8] = 0x30;
884 5 send_chk(18);
885 5 }
886 4 }
887 3 else if(DataBuf[2] == 0xF9) //设定门控电磁锁的(种类)特性
888 3 { //D5
889 4 DataBuf[4] = (DataBuf[4]<<4) + DataBuf[5];
890 4 if(DataBuf[4] == 0)
891 4 {
892 5 col_flag1 &= 0xDF;
893 5 AT24C128_write(0x0B,&col_flag1,1);
894 5 purview_timer = 0x4B0;
895 5 DataBuf[7] = 0x30;
896 5 DataBuf[8] = 0x30;
897 5 send_chk(18);
898 5 }
899 4 else if(DataBuf[4] == 1)
900 4 {
901 5 col_flag1 |= 0x20;
902 5 AT24C128_write(0x0B,&col_flag1,1);
903 5 purview_timer = 0x4B0;
904 5 DataBuf[7] = 0x30;
905 5 DataBuf[8] = 0x30;
906 5 send_chk(18);
907 5 }
908 4 }
909 3 else if(DataBuf[2] == 0xF7) //设定门开关感应器在开门状态时的有效电平(输出给门控器)
910 3 { //D3
911 4 DataBuf[4] = (DataBuf[4]<<4) + DataBuf[5];
912 4 if(DataBuf[4] == 0)
913 4 {
914 5 col_flag1 &= 0xF7;
915 5 AT24C128_write(0x0B,&col_flag1,1);
916 5 purview_timer = 0x4B0;
917 5 DataBuf[7] = 0x30;
918 5 DataBuf[8] = 0x30;
919 5 send_chk(18);
920 5 }
921 4 else if(DataBuf[4] == 1)
922 4 {
923 5 col_flag1 |= 0x08;
C51 COMPILER V7.50 SYSTEM 02/16/2009 09:18:46 PAGE 16
924 5 AT24C128_write(0x0B,&col_flag1,1);
925 5 purview_timer = 0x4B0;
926 5 DataBuf[7] = 0x30;
927 5 DataBuf[8] = 0x30;
928 5 send_chk(18);
929 5 }
930 4 }
931 3 else if(DataBuf[2] == 0xF6) //设定红外感应器在报警时的有效电平(输出给门控器)
932 3 { //D2
933 4 DataBuf[4] = (DataBuf[4]<<4) + DataBuf[5];
934 4 if(DataBuf[4] == 0)
935 4 {
936 5 col_flag1 &= 0xFB;
937 5 AT24C128_write(0x0B,&col_flag1,1);
938 5 purview_timer = 0x4B0;
939 5 DataBuf[7] = 0x30;
940 5 DataBuf[8] = 0x30;
941 5 send_chk(18);
942 5 }
943 4 else if(DataBuf[4] == 1)
944 4 {
945 5 col_flag1 |= 0x04;
946 5 AT24C128_write(0x0B,&col_flag1,1);
947 5 purview_timer = 0x4B0;
948 5 DataBuf[7] = 0x30;
949 5 DataBuf[8] = 0x30;
950 5 send_chk(18);
951 5 }
952 4 }
953 3 else if(DataBuf[2] == 0xF5) //设定是否刷卡加密码
954 3 { //D1
955 4 DataBuf[4] = (DataBuf[4]<<4) + DataBuf[5];
956 4 if(DataBuf[4] == 0)
957 4 {
958 5 col_flag1 &= 0xFD;
959 5 AT24C128_write(0x0B,&col_flag1,1);
960 5 purview_timer = 0x4B0;
961 5 DataBuf[7] = 0x30;
962 5 DataBuf[8] = 0x30;
963 5 send_chk(18);
964 5 }
965 4 else if(DataBuf[4] == 1)
966 4 {
967 5 col_flag1 |= 0x02;
968 5 AT24C128_write(0x0B,&col_flag1,1);
969 5 purview_timer = 0x4B0;
970 5 DataBuf[7] = 0x30;
971 5 DataBuf[8] = 0x30;
972 5 send_chk(18);
973 5 }
974 4 }
975 3 else if(DataBuf[2] == 0xE5) //所有控制参数
976 3 { //门磁、红外等感应器的特性(单独设定)
977 4 //整体设定(1) 整体设定(2) 整体设定(3)
978 4 if(uart_rcv_len == 6)
979 4 {
980 5 col_flag1 = (DataBuf[4]<<4) + DataBuf[5];
981 5 AT24C128_write(0x0B,&col_flag1,1);
982 5 purview_timer = 0x4B0;
983 5 DataBuf[7] = 0x30;
984 5 DataBuf[8] = 0x30;
985 5 send_chk(18);
C51 COMPILER V7.50 SYSTEM 02/16/2009 09:18:46 PAGE 17
986 5 }
987 4 else if(uart_rcv_len == 8)
988 4 {
989 5 col_flag1 = (DataBuf[4]<<4) + DataBuf[5];
990 5 AT24C128_write(0x0B,&col_flag1,1);
991 5 col_flag2 = (DataBuf[6]<<4) + DataBuf[7];
992 5 AT24C128_write(0x0C,&col_flag2,1);
993 5 purview_timer = 0x4B0;
994 5 DataBuf[7] = 0x30;
995 5 DataBuf[8] = 0x30;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -