毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 嵌入式 >> 正文

ADC0809,3路模数转换后,比较的问题

更新时间:2012-10-1:  来源:毕业论文

我的程序ADC0809,3个in输入,得到了3个模数转换的结果,但是为什么一拿来比较就出现问题?
void ShowDianliu()
{
uint IONE,ITWO,ITHREE,Electric_Current;
Delay(2);
IONE=DianYa_ADC0809_Get(0)*1.0*10/255; //获得一路电压
Delay(20);
ITWO=DianYa_ADC0809_Get(1)*1.0*10/255; //获得第二路电压
Delay(20);
ITHREE=DianYa_ADC0809_Get(2)*1.0*10/255;//获得第三路电压
Delay(20);
Electric_Current=MAX(IONE,ITWO,ITHREE); //3路电压取最大值
IntToStr(&TempBuffer[0],&TempBuffer[0]); //int转换成string
LCD_Play(&TempBuffer[0],17); //LCD显示字符串
IntToStr(IONE,&TempBuffer[1]);
LCD_Play(&TempBuffer[1],21);
IntToStr(ITWO,&TempBuffer[2]);
LCD_Play(&TempBuffer[2],25);


在主函数中调用void main()
{
 
LCD_Init();
ADC0809Initial();

while(1)
{ ShowDianliu(); //电压显示

}

}//获取的三个电流比较大小,取得最大值*****************************/
uint MAX(uint one,uint two,uint three)
{
uint max=one;
max=(one>two&&one>three)?one:(two>three)?two:three;
return max;
}
IntToStr(&TempBuffer[0],&TempBuffer[0]); //int转换成string
这句话是不是写错了。(1)如果读进来的三个数据一样,那可能是你的DianYa_ADC0809_Get()函数有问题。
(2)另外,你可以先不用DianYa_ADC0809_Get函数,直接给IONE,ITWO,ITHREE赋值一个常数,这样就可以看看你的比较函数,转换函数以及显示有没有问题

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。