void Display_SETTMP(uint nTmp2)
{
//send_byte(CMD_RESET);
write7279(DECODE0+4,nTmp2/100%100);
delay1ms(2);
write7279(DECODE0+5,nTmp2/10%10);
delay1ms(2);
write7279(SEGON,47);
delay1ms(2);
write7279(DECODE0+6,nTmp2%10);
delay1ms(2);
51+HD7279+ADS1110+PT100的测温系统,通过与标准温度计对比拟合,精度能达到0.5度
write7279(SEGON,31);
delay1ms(2);
write7279(SEGON,30);
delay1ms(2);
write7279(SEGON,29);
delay1ms(2);
write7279(SEGON,28);
delay1ms(2);
write7279(SEGON,27);
delay1ms(2);
//delay10ms(1000);
//send_byte(CMD_RESET);
}
void Display_SET()
{
send_byte(CMD_RESET);
if (nMode == 1) // set nLowTMP
{
write7279(SEGON,1);
delay1ms(2);
write7279(SEGON,2);
delay1ms(2);
write7279(SEGON,3);
delay1ms(2);
write7279(DECODE0+4,nLowTMP/100%100);
delay1ms(2);
write7279(DECODE0+5,nLowTMP/10%10);
delay1ms(2);
write7279(SEGON,47);
delay1ms(2);
write7279(DECODE0+6,nLowTMP%10);
}
if (nMode == 2) // set nHightTMP
{
write7279(SEGON,0);
delay1ms(2);
write7279(SEGON,1);
delay1ms(2);
write7279(SEGON,2);
delay1ms(2);
write7279(SEGON,4);
51+HD7279+ADS1110+PT100的测温系统,通过与标准温度计对比拟合,精度能达到0.5度
delay1ms(2);
write7279(SEGON,5);
delay1ms(2);
write7279(DECODE0+4,nHightTMP/100%100);
delay1ms(2);
write7279(DECODE0+5,nHightTMP/10%10);
delay1ms(2);
write7279(SEGON,47);
delay1ms(2);
write7279(DECODE0+6,nHightTMP%10);
}
if (nMode == 2) // set nTMPAdj
{
write7279(SEGON,0);
delay1ms(2);
write7279(SEGON,1);
delay1ms(2);
write7279(SEGON,2);
delay1ms(2);
write7279(SEGON,4);
delay1ms(2);
write7279(SEGON,5);
delay1ms(2);
write7279(SEGON,6);
delay1ms(2);
if (nTMPAdj < 0)
{
write7279(SEGON,32);
delay1ms(2);
write7279(DECODE0+5,(0-nTMPAdj)/10%10);
delay1ms(2);
write7279(DECODE0+6,(0-nTMPAdj)%10);
}
if (nTMPAdj > 0)
{
write7279(DECODE0+5,nTMPAdj/10%10);
delay1ms(2);
write7279(DECODE0+6,nTMPAdj%10);
}
}
}
/***********************************************************************************
51+HD7279+ADS1110+PT100的测温系统,通过与标准温度计对比拟合,精度能达到0.5度
************************************************************************************
////////////////////////////////红外解码 函数-BEGIN/////////////////////////////////
************************************************************************************
************************************************************************************/
void IR_IN() interrupt 2 using 0
{
// unsigned char j,k,N=0;
// EX1 = 0;
// delay(15);
// if (IRIN==1)
// {
// EX1 =1;
// return;
// }
// //确认IR信号出现
// while (!IRIN) //等IR变为高电平,跳过9ms的前导低电平信号。
// {
// delay(1);
// }
//
// for (j=0;j<4;j++) // 收集四组数据
// {
// for (k=0;k<8;k++) // 每组数据有8位
// {
// while (IRIN) // 等 IR 变为低电平,跳过4.5ms的前导高电平信号。
// {
// delay(1);
// }
// while (!IRIN) // 等 IR 变为高电平
// {
// delay(1);
// }
// while (IRIN) // 计算IR高电平时长
// {
// delay(1);
// N++;
// if (N>=30)
// {
// EX1=1;
// return;
// } // 0.14ms计数过长自动离开。
// } // 高电平计数完毕
// IRCOM[j]=IRCOM[j] >> 1; //数据最高位补“0”
// if (N>=8)
51+HD7279+ADS1110+PT100的测温系统,通过与标准温度计对比拟合,精度能达到0.5度
// {
// IRCOM[j] = IRCOM[j] | 0x80;
// } // 数据最高位补“1”
// N=0;
// }//end for k
// }//end for j
//
// if (IRCOM[2]!=~IRCOM[3])
// {
// EX1=1;
// return;
// }
//
// send_ad_result(IRCOM[2]);
//
// switch(IRCOM[2])
// {
// case 0x45:
// if (nFlag == 0)
// nFlag = 1;
// nFlag = 0;
// //goto OVER;
// break;
//
// case 0x47:
// if((nFlag==1) && (nMode<=3))
// nMode = 0;
// nMode++;
// //goto OVER;
// break;
//
// case 0x16:
// if ((nFlag==1) && (nMode==2))
// nHightTMP--;
// if ((nFlag==1) && (nMode==1))
// nLowTMP--;
// if ((nFlag==1) && (nMode==3))
// nTMPAdj--;