<br />void change(unsigned long temp)<br />{<br /> uchar i;<br /> serial_buff[4]=10; //小数点<br /> for(i=1;i<8;i++)<br /> {<br /> if(i==4)continue; //跳过小数点的位置<br /> if(temp!=0)<br /> {<br /> serial_buff[8-i]=temp%10;<br /> temp/=10;<br /> }<br /> else <br /> {<br /> serial_buff[8-i]=0;<br /> }<br /> } <br /> if(serial_buff[1]==0)<br /> { <br /> serial_buff[1]=12; //空格<br /> if(serial_buff[2]==0)<br /> {<br /> serial_buff[2]=12; //空格<br /> }<br /> }<br />}<br /><br />void display_Pi() <br />{<br /> //unsigned int Pi;<br /> float pow;<br /> //int value;<br /> unsigned char i;<br /> //Pi=read7896();<br /> //pow=Pi*AD_Loop_PickVol_PER;//AD采集数值<br /> pow=VariablePi*AD_Loop_PickVol_PER;//AD采集数值<br /> // pow=VariableVl*AD_Loop_PickVol_PER;//AD采集数值<br /> // value = pow * 100 + (value > 0 ? 0.5 : -0.5); //大于0加0.5, 小于0减0.5<br /> if(pow>=1)<br /> {<br /> change(pow*1e3);<br /> draw_bmp(104,1,8,num[12]);//显示" "<br /> }<br /> else if(pow>=1e-3)<br /> {<br /> change(pow*1e6);<br /> draw_bmp(104,1,8,ELAPHT[11]);//显示"m"<br /> }<br /> else if(pow>=1e-6)<br /> {<br /> change(pow*1e9);<br /> //将前面的3位结果放到后面<br /> serial_buff[7]=serial_buff[3];<br /> serial_buff[6]=serial_buff[2];<br /> serial_buff[5]=serial_buff[1];<br /> //前面4位改为空格<br /> <br /> for(i=1;i<5;i++)serial_buff=12;<br /> draw_bmp(104,1,8,ELAPHT[10]);//显示"u"<br /> }<br /> else<br /> {<br /> change(0);<br /> for(i=1;i<7;i++)serial_buff=12;<br /> draw_bmp(104,1,8,ELAPHT[10]);//显示"u"<br /> }<br /> //显示读数<br /> for(i = 1; i <8; i++)<br /> {<br /> draw_bmp(32+i*8,1,8,num[serial_buff]]);<br /> }<br /> <br /> draw_bmp(8,1,8,num[15]);//显示":"<br /> draw_bmp(0,1,8,ELAPHT[13]);//显示"Pi"<br /> draw_bmp(112,1,8,ELAPHT[12]);//显示"W" <br />}<br /> <br />
|