用CW6.3 写的程序 温度选择开关 AD子程序 问题(已解决)
本帖最后由 FSL_TICS_ZP 于 2014-10-8 16:12 编辑AD1_GetChanValue(TempMode_ch,&FiltedTempModeADValue);
if(0<(byte)(FiltedTempModeADValue)<60){ //档位电压值1.05V
TempModeStatus=16; //制冷第6档
PTDD_PTDD5=1;
}else if(60<=(byte)(FiltedTempModeADValue)<72){ //档位电压值1.29V
TempModeStatus=15; //制冷第5档
PTDD_PTDD5=0;
}
else if(73<=FiltedTempModeADValue<=84){ //档位电压值1.53V
TempModeStatus=14; //制冷第4档
}
else if(85<=FiltedTempModeADValue<=97){ //档位电压值1.77V
TempModeStatus=13; //制冷第3档
}
else if(98<=FiltedTempModeADValue<=108){ //档位电压值2V
TempModeStatus=12; //制冷第2档
}
else if(109<=FiltedTempModeADValue<=121){//档位电压值2.25V
TempModeStatus=11; //制冷第1档
}
else if(122<=FiltedTempModeADValue<=134){//档位电压值2.5V
TempModeStatus=0; //0档中间位置
}
else if(135<=FiltedTempModeADValue<=145){//档位电压值2.72V
TempModeStatus=1; //制热第1档
PTDD_PTDD5=0;
}
else if(146<=FiltedTempModeADValue<=157){//档位电压值2.94V
TempModeStatus=2; //制热第2档
PTDD_PTDD5=1;
}
else if(158<=FiltedTempModeADValue<=168){//档位电压值3.16V
TempModeStatus=3; //制热第3档
PTDD_PTDD5=0;
}
else if(169<=FiltedTempModeADValue<=180){//档位电压值3.4V
TempModeStatus=4; //制热第4档
PTDD_PTDD5=1;
}
else if(181<=FiltedTempModeADValue<=192){//档位电压值3.64V
TempModeStatus=5; //制热第5档
PTDD_PTDD5=0;
}
else if(193<=FiltedTempModeADValue<=255){//档位电压值3.89V
TempModeStatus=6; //制热第6档
PTDD_PTDD5=1;
}
10MS运行一次的小程序,连上硬件后运行仿真,FiltedTempModeADValue的值不在59以内时(60以上别的数据), TempModeStatus为什么一直为16?????
换到KEIL里头应该不会有这个问题。。。 好吧 已经知道怎么回事了,非得把那个小范围用&& 分开,
if((0<FiltedTempModeADValue) && (FiltedTempModeADValue<60)){}
这样子。。
页:
[1]