/*********************************************************
函数名: unsigned int ADCRead()
描 述: ADC转换程序,转换10次,去掉最小值和最大值,求8次平均值
输入值: 无
输出值: 无
返回值: data—ADC结果
**********************************************************/
unsigned int ADCRead()
{
unsigned int max, min, sum, ad_temp;
unsigned char i;
unsigned int data;
max = 0x00;
min = 0xffff;
sum = 0x00;
for (i=0; i<10; i++)
{
ad_temp = ADCConvert();
if (ad_temp > max)
{
max = ad_temp;//替换最大值
}
if (ad_temp < min)
{
min = ad_temp;//替换最小值
}
sum += ad_temp;
}
sum -= min;
sum -= max;
data = sum >> 3; //除以8,取平均值
return data;
}
四、硬件方面