Beispiel #1
0
	//*********************************************************	
	void getLoad_AD(char channel)
	{
		char i=0,j=0;

		if(Load->ADtoGO)
		{
			Load->ADRES=getAD(channel,FVRCON_1V);
			for(i=0 ; i<5 ;i++)
			{	
				if(Load->AH[i] < Load->ADRES)
				{
					Load->AH[i]=Load->ADRES;
					j=1;
					break;
				}
			}
			if(!j)
			{
				for(i=0 ; i<5 ;i++)
				{	
					if(Load->AL[i] > Load->ADRES)
					{
						Load->AL[i]=Load->ADRES;
						break;
					}
				}
			}
		}
	}
void GAnalogSensor::print(Print& prn, const __FlashStringHelper* desc, const __FlashStringHelper* unit, const __FlashStringHelper* ad)
{
	if(desc) prn.print(desc); else printdesc(prn);
	prn.print(get(), 3);
	if(!unit && !ad) prn.print(F("V\n\r"));
	if(unit) prn.print(unit); 
	if(ad) {
		prn.print(getAD(), 1);
		prn.print(ad);
	}
}
	//*********************************************************
	void Temp_getAD()
	{
		if(Temp->ADtoGO)
		{
			Temp->ADRES=getAD(OverTemp_Channel,ADCON1_VDD);
			if(Temp->ADH[0] < Temp->ADRES)
			{
				Temp->ADH[0]=Temp->ADRES;
			}
			else if(Temp->ADH[1] < Temp->ADRES)
			{
				Temp->ADH[1]=Temp->ADRES;
			}
		}
	}