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

📄 get_put.c

📁 一个电表的程序
💻 C
📖 第 1 页 / 共 4 页
字号:
/*158*/     {0xe424,        (unsigned int)(unsigned char *)REnger_Clr,                 159,          4},         //广播冻结 正向有功谷电能		  XXXXXX.XX   kWh
/*159*/     {0xe425,        ELBrock_Tm ,                                               0,            4},         			//广播冻结时间

/*160*/     {0xe42f,        154+0x4000,                                                0,            24},          //广播冻结 正向有功电能数据块		
/*161*/     {0xea30,        EClrPw_Cnt_Dtr,                                            162,          2},           //总清零次数                NNNN                                				                                                                                                                                                                       
/*162*/     {0xea31,        ELClrPw_Tm_Dtr,                                            163,          5},           //最近1次总清零时间   MMDDHHmm      月日h min 				                                                                                                                                                                       
/*163*/     {0xea32,        EL2ClrPw_Tm_Dtr,                                           164,          5},           //最近2次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                        
/*164*/     {0xea33,        EL3ClrPw_Tm_Dtr,                                           165,          5},           //最近3次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                        
/*165*/     {0xea34,        EL4ClrPw_Tm_Dtr,                                           166,          5},           //最近4次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                      
/*166*/     {0xea35,        EL5ClrPw_Tm_Dtr,                                           0,            5},           //最近4次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                      
/*167*/     {0xea3f,        162+0x4000,                                                0,            25},          //总清零记录数据块

/*168*/     {0xea40,        ELClrPwrTtl_Dtr ,                                          169,          4},           //最近1次总清零时间               NNNN                                				                                                                                                                                                                       
/*169*/     {0xea41,        EL2ClrPwrTtl_Dtr,                                          170,          4},           //最近2次总清零时间   MMDDHHmm      月日h min 				                                                                                                                                                                       
/*170*/     {0xea42,        EL3ClrPwrTtl_Dtr,                                          171,          4},           //最近3次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                        
/*171*/     {0xea43,        EL4ClrPwrTtl_Dtr,                                          172,          4},           //最近4次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                        
/*172*/     {0xea44,        EL5ClrPwrTtl_Dtr,                                          173,          4},           //最近5次总清零时间   MMDDHHmm      月日h min				                                                                                                                                                                      
/*173*/     {0xea4f,        168+0x4000,                                                0,            20},          //总清零记录数据块

/*174*/      {0xffff,        51+0x4000,                                       		   0,            1077}                                                                                                                                                              
            };        

/*查找算法
功能:从数据树中查找标识,并返回标识在数据树中的序号;
入口:标识 unsigned int sign;
出口:标识在数据数中的序号,unsigned int mid;
*/

unsigned int search(unsigned int sign)
{
	unsigned int  low;				/*数据树序号的起点,因0序号保留故从1开始;*/
	unsigned int  high;		        /*数据树序号的终点!*/
	unsigned int  mid_aa;			/*标识在数据树中的序号;*/
	low=1;
	high=Max_Item_Of_the_Tree;
	while(low<=high)				/*查找算法;*/
	{
		mid_aa = (low+high) / 2;
		if(sign == Dtree[mid_aa].sign)
		{
			return mid_aa;
			
		}
		else
			if(sign < Dtree[mid_aa].sign)
				high = mid_aa - 1;
			else
				low = mid_aa + 1;
	}
	return 0;
}




/*
功能:返回标识下数据的长度

⌨️ 快捷键说明

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