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

📄 variel.c

📁 c8051f020实现4个 产UART 口
💻 C
字号:

#include "all.h"

//铁电接口有关变量
bit   iic_error_flag,sm_busy;
ulong smbus_ms_cnt;//无中断豪秒计数器
//uchar watch_buf[20];
uchar *iic_buf_p;
uchar xdata iic_data_buf[253]={0};
uchar slave_add,send_byte,write_start_num,read_start_num,iic_add_count;
uchar iic_data_count,iic_data_len,watch;
uint iic_ram_add;	

uchar Spk_Flag_Char =0 ;     //外围喇叭是否接通过标志

// 以下是看门狗计数器


uchar Dog_INIT_cnt=0;   //看门狗计数器
uchar Dog_ZIJIAN_cnt=0;   //看门狗计数器
uchar Dog_GSMATTAND_cnt=0; //看门狗计数器
uchar Dog_TcpIp_CHULI_cnt=0; //看门狗计数器
uchar Dog_FMROMI_cnt=0; //看门狗计数器
uchar Dog_RF315_cnt=0; //看门狗计数器
uchar Dog_TIMELIMITED_cnt=0;  //看门狗计数器
uchar Dog_JINGQINGCHULI_cnt=0; //看门狗计数器
uchar Dog_YouXian_CK_task_cnt=0; //看门狗计数器
uchar Dog_KEYATTAND_cnt=0; //看门狗计数器
// 以shang是看门狗计数器




uchar xdata  EECmd; 
uchar xdata EETask = 0xff;
uint xdata FM_addr,FM_num;



void Delay_1us(){
    uchar i=0;
	for(i=0;i++;i<8);
}		

bit En_recieve_dtmfb=1;
bit    Xin_dtmfb=0;
bit    Xin_dtmf_sound_b=0;
uchar xdata Xin_dtmf;




//振铃 来检测变量定议

bit     En_Ring_data_in_B=0;     //有数据进来标志
xdata uint   En_Ring_data_in_Time_cnt=0;  //计时寄存器,下降沿开始计时
xdata uchar   Ring_cnt=0;           //铃 声计数器加1 



bit               En_Sms_data_in_B=0;     //有sms数据进来标志
xdata uint    En_Sms_data_in_Time_cnt=0;  //sms计时寄存器,下降沿开始计时
	   
	   

//=========================================================


 code struct_Para_all   struct_Para_all_IniteValue ={                   //所有参数结构
           
                              //所有参数结构

			"Ver1.00",    //char     Apn[8];                //VERSION
			MM0xa5,   //uchar   A5A5;
			1,      //uchar   Change_Flag;

			10,  //uchar   BuFang_Delay_Time;      //布防延时 (0-255)秒    
			6,  //uchar   ZhenLingCiShu_Time;      //11.	振铃次数设置1-8 次
			10,  //uchar   BaoJing_Delay_Time;     //报警延时 (0-255)秒
			1,  //uchar   ZiJian_Time;                    //7.	自检间隔设置9-2550分钟 0:则不自检
			0,  //uchar   LuXiang_CiShu;      //录像次数
                     0,  //uchar   Work_Mode;                   //0:撤防 1 布防 2在家布防  5延时布防
                     1,  //uchar    Net_oK_FLAG;     //  1:网络是通的 0不通
                     0,  //uchar   Is_Have_XingJing_FLAG; //有无新警情 0: 无新警情  1: 有新警情
                     1,  //uchar   Is_ChuangTi_Ok;       //床体是否正常
			1,  //uchar   Is_DiZhenYi_Ok;   //地震仪是否正常
			60,  //uchar  Spk_cnt_Time;    // 警号鸣响时长0-255秒??????????????
			
								/*

								Byte1: 布防延时时间(0-255)秒
								Byte2: 振铃次数(2-9) 次
								Byte3: 报警延时时间(0-255)秒
								Byte4: 系统自检间隔(0-255)分
								Byte5: 摄像记录次数(0-255)欠
								Byte6: 布撤防状态       0: 撤防状态  1: 布防   3:在家布防
								Byte7: 网络状态  0: 网络不通  1: 布网络在线
								Byte8: 有无新警情 0: 无新警情  1: 有新警情
								Byte9: 床体状态0: 床体异常  1: 床体正常

								 Byte10: 地震仪状态0: 地震仪异常  1: 地震仪正常

                                                        Byte11: 警号鸣响时长0-255秒
								*/
			 {0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5},//uchar   Test1[10];  //测试字节					
                      
	               {122,0,203,3},   //uchar   IP[4];               //ip地址
	               1234,  //uint      IP_Port;          //ip 端口
	               "cmnet",  //char     My_Apn[10];    //apn
	               {1,2,3,4,5,6,7},  //uchar   ID[7];               //车id
	     
                     {'1','1','2','2','3','3',0}, //uchar   Mima[7];    //密码  

			{1,0},  //uchar DiZhenYi_status[2];	     //11	地震仪状态
			{1,1,0},  //uchar ChuangTi_status[3];	      //12	防震床状态
			{1,1,1,1}, //uchar FangQu_is_1or0[4];	    //      //1-4有线防区的输入 状态
			
			//char      Phone_1To6[6][19];       //报警电话123456
                       {
                                                   {11,'1','3','6','7','2','7','2','6','0','2','5',},
						 	  {11,'0','7','5','6','8','3','8','5','2','8','0',},
						 	  {11,'1','3','6','7','2','7','2','6','0','2','5',},
						 	    {11,'0','7','5','6','8','3','8','5','2','8','0',},
						 	  {11,'1','3','6','7','2','7','2','6','0','2','5',},
						 	   {11,'0','7','5','6','8','3','8','5','2','8','0',},
                         },

			   {0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5,0xa5},		// uchar   Test2[10];  //测试字节
						 
                         /*
			   //struct_RF_24bit  RF_Address24_True[20];      //无线对码地址
                      {   {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}, 
                          {0,(uint)0}

		        }, 
                     */
			0, //uchar JingQing_JiLu_True_Head;  //警情记录的头指针
			0, //uchar JingQing_JiLu_True_Sum;  //警情记录总数
			

			0, //uchar  Dog_INIT_cnt;   //看门狗计数器
			0, //uchar Dog_ZIJIAN_cnt;   //看门狗计数器
			0, //uchar Dog_GSMATTAND_cnt; //看门狗计数器
			0, //uchar Dog_TcpIp_CHULI_cnt; //看门狗计数器
			0, //uchar Dog_FMROMI_cnt; //看门狗计数器
			0, //uchar Dog_RF315_cnt; //看门狗计数器
			0, //uchar Dog_TIMELIMITED_cnt;  //看门狗计数器
			0, //uchar Dog_JINGQINGCHULI_cnt; //看门狗计数器
			0, //uchar Dog_YouXian_CK_task_cnt; //看门狗计数器
			0, //uchar Dog_KEYATTAND_cnt;
			0, //uchar Dog_Gui_Reg;
			0, //uint    Dog_Gui_Reg_Day;        //180

			0 //   uchar CSsum;    //累加和
		
};


//最大值 
 code struct_Para_all   struct_Para_all_MaxValue ={                   //所有参数结构
           
		  
                1,
		  10,
		  10,
		   

		
};


//  最小值? 

 code struct_Para_all   struct_Para_all_MinValue ={   //所有参数结构
           
                0,
		  255,
		  255,
		   

		
};


code  struct_JingQing_JiLu   struct_JingQing_JiLu_True_Value[100]={   // 当前的警情
                                   
		//{{0,0},{06,12,01,13,36,55},1},                
		{{50,1},{06,12,01,13,36,56},2},
		{{50,2},{06,12,01,13,36,57},3},
		{{50,3},{06,12,01,13,36,58},4},
		{{50,4},{06,12,01,13,36,59},5},
		{{50,5},{06,12,01,13,37,00},5},
		{{50,6},{06,12,01,13,37,25},6},
		{{50,7},{06,12,01,13,37,26},2},
		{{50,8},{06,12,01,13,37,27},1},
		{{50,9},{06,12,01,13,37,28},3},
		{{50,10},{06,12,01,13,37,29},4},
		{{50,11},{06,12,01,13,37,30},1},
		{{50,12},{06,12,01,13,37,31},4},
		{{50,13},{06,12,01,13,37,32},2},
		{{50,14},{06,12,01,13,37,33},1},
		{{50,15},{06,12,01,13,37,34},2},
		{{50,16},{06,12,01,13,37,36},1},
		{{50,17},{06,12,01,13,38,37},5},
		{{50,18},{06,12,01,13,38,38},1},
		{{50,19},{06,12,01,13,38,39},5},
		{{50,20},{06,12,01,13,38,40},3},
		{{50,21},{06,12,01,13,38,41},2},
		{{50,22},{06,12,01,13,38,42},1},
		{{50,23},{06,12,01,13,38,43},3},
		{{50,24},{06,12,01,13,38,44},2},
		{{50,25},{06,12,01,13,38,45},1},
		{{50,26},{06,12,01,13,38,47},4},
		{{50,27},{07,12,02,13,38,51},4},
		{{50,28},{07,12,03,13,39,53},5},
		{{50,29},{07,12,04,13,39,55},5},
		
		{{50,30},{06,12,01,13,36,55},1},
		{{50,31},{06,12,01,13,36,55},2},
		{{50,32},{06,12,01,13,36,55},1},
		{{50,33},{06,12,01,13,36,55},3},
		{{50,34},{06,12,01,13,36,55},1},
		{{50,35},{06,12,01,13,36,55},4},
		{{50,36},{06,12,01,13,36,55},1},
		{{50,37},{06,12,01,13,36,55},3},
		{{50,38},{06,12,01,13,36,55},1},
		{{50,39},{06,12,01,13,36,55},4},

		 {{50,40},{06,12,01,13,36,55},3},
		{{50,41},{06,12,01,13,36,55},2},
		{{50,42},{06,12,01,13,36,55},2},
		{{50,43},{06,12,01,13,36,55},1},
		{{50,44},{06,12,01,13,36,55},1},
		{{50,45},{06,12,01,13,36,55},3},
		{{50,46},{06,12,01,13,36,55},1},
		{{50,47},{06,12,01,13,36,55},3},
		{{50,48},{06,12,01,13,36,55},3},
		{{50,49},{06,12,01,13,36,55},4},
		{{50,50},{06,12,01,13,36,55},4},

};

 
xdata  struct_Para_all  Para_all_True;
 uchar MYCSsum;    //累加和


xdata struct_JingQing_JiLu  struct_JingQing_Current_True;   // 当前的警情

xdata struct_JingQing_JiLu  struct_JingQing_JiLu_True[110];
xdata  uchar  struct_JingQing_JiLu_Change=0;    //用于标识是否有警情记录要存储

struct_Variale  struct_Variale_True;

xdata unsigned long  XinRf315_Value[2];
struct_RF_24bit  RF_Address24_Xin;      //  新来无线信号转换成结构字节

xdata uchar  XinJingLei_Byte;            //高位为1为有线否则为无线
xdata uchar  XinPhone_JingLei_Byte; // 打电话用的报警字节
xdata uchar  XinTcp_JingLei_Byte;

xdata  struct_Para_all  Para_all_True_Bak;
xdata uchar  XinRf315_B;

⌨️ 快捷键说明

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