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

📄 sensorcomm.c

📁 该演示程序实现温度的采集与显示功能
💻 C
字号:


//功能:团长把数据上报给探头

#include "msstate_lrwpan.h"
#include "MAC.h"

#include "SensorComm.h"




BYTE NeedRepDatToSensor(BYTE hiId,BYTE lowId)
{
   int i;
   for(i=0;i<MAXREPRECNUM;i++)
	{
	    if((RepDatToSensorRec[i].SensorId[0]==lowId)&&(RepDatToSensorRec[i].SensorId[1]==hiId))		 
		  if (TickGetDiff(TickGet(), RepDatToSensorRec[i].lastRepTime) <CAPTAIN_SENDDATATOSENSORTIME/20)//每个滴答50ms左右
		      return 0;		  		
	}
   return 1;
}

void UpdateRepDatToSensorRec(BYTE hiId,BYTE lowId)
{
    int i;
    TICK maxTime=0;
	BYTE iTmp=0;
    for(i=0;i<MAXREPRECNUM;i++)
	{
	    if((RepDatToSensorRec[i].SensorId[0]==lowId)&&(RepDatToSensorRec[i].SensorId[1]==hiId))	
	    {
		    RepDatToSensorRec[i].lastRepTime=TickGet();			
		    return ;
		}
		
		if(RepDatToSensorRec[i].lastRepTime>maxTime)
			{
			    maxTime=RepDatToSensorRec[i].lastRepTime;
				iTmp=i;
			}
	}

	RepDatToSensorRec[iTmp].SensorId[0]=lowId;
	RepDatToSensorRec[iTmp].SensorId[1]=hiId;	
    RepDatToSensorRec[iTmp].lastRepTime=TickGet();
	
}
void ResetRepDatToSensorRec(void)
{
    int i;
	for(i=0;i<MAXREPRECNUM;i++)
	{
		RepDatToSensorRec[i].SensorId[0]=0xff;
		RepDatToSensorRec[i].SensorId[1]=0xff;
		RepDatToSensorRec[i].lastRepTime=0;
	}
}

///////////////////////////////////////////////////////////////////////////


⌨️ 快捷键说明

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