西安航空学院毕业论文
tvalue2<<=8; tvalue2=tvalue2|a2;
if(tvalue2<0x07ff) else
{ }
//温度值扩大10倍,精确到1位小数
tvalue2=~tvalue2+1; tflag2=1; tflag2=0;
}
tvalue2=tvalue2*(0.625); return(tvalue2);
/******************3号温度值显示************************/
void ds1820disp2() {
uchar flagdat2;
//百位数 //十位数 //个位数 //小数位
disdata2[0]=tvalue2/1000+0x30;
disdata2[1]=tvalue200/100+0x30; disdata2[2]=tvalue20/10+0x30; disdata2[3]=tvalue2+0x30;
if(tflag2==0) flagdat2=0x20; else
flagdat2=0x2d;
//负温度显示负号:-
//正温度不显示符号
if(disdata2[0]==0x30) {
disdata2[0]=0x20;
28
//如果百位为0,不显示
西安航空学院毕业论文
if(disdata2[1]==0x30)
disdata2[1]=0x20;
//如果百位为0,十位为0也不显示
}
//wr_dat(flagdat2); wr_com(0x80+0x42); wr_dat(disdata2[0]); wr_com(0x80+0x43); wr_dat(disdata2[1]); wr_com(0x80+0x44); wr_dat(disdata2[2]); wr_com(0x80+0x45); wr_dat(0x2e);
//显示符号位
//显示百位
//显示十位
//显示个位
//显示小数点
wr_com(0x80+0x46); wr_dat(disdata2[3]); }
/********************主程序***********************************/
void main() {
//显示小数位
init_play();
//1号初始化显示 //2号初始化显示 //3号初始化显示
init_play1(); init_play2(); while(1) {
keyscan(); if(flag1==1) {
read_temp(); ds1820disp();
29
//读取温度 //显示
西安航空学院毕业论文
}
if(flag2==1) {
read_temp1(); ds1820disp1();
}
if(flag3==1) {
read_temp2(); ds1820disp2();
}
if(flag4==1) {
read_temp(); ds1820disp();
read_temp1(); ds1820disp1();
read_temp2(); ds1820disp2();
}
}
}
//读取温度
//显示
//读取温度
//显示
//读取温度 //显示 //读取温度 //显示 //读取温度
//显示
30