高级会员

- 积分
- 658
- 金钱
- 658
- 注册时间
- 2012-10-21
- 在线时间
- 45 小时
|
5金钱
adcx=T_Get_Temp();
LCD_ShowNum(132,130,adcx,4,16);//显示ADC的值
temp=(float)adcx*(3.3/4096);
temperate=temp;//保存温度传感起的电压值
adcx=temp;
LCD_ShowNum(132,150,adcx,1,16); //显示电压值整数部分
temp-=(u8)temp; // 剪掉整数部分
LCD_ShowNum(148,150,temp*1000,3,16);//显示电压小数部分
temperate=(1.43-temperate)/0.0043+25;// 计算当前温度值
LCD_ShowNum(140,170,(u8)temperate,2,16); //显示温度值整数部分
temperate-=(u8)temperate;
LCD_ShowNum(164,170,temperate*100,2,16);//显示温度小数部分
LED0=!LED0;
stm32自带的温度传感器,把小数分离是怎么做到的,没看懂转换原理。还有我要将 temperate发送到串口要怎么处理他,上位机要怎么解析显示,怎么知道小数点在这个数据的具体位智的 |
最佳答案
查看完整内容[请看2#楼]
adcx=T_Get_Temp();
LCD_ShowNum(132,130,adcx,4,16);//显示ADC的值
temp=(float)adcx*(3.3/4096);
temperate=temp;//保存温度传感起的电压值
比如temp在这里值为包括小数点的电压值,
而下两句
adcx=temp;
LCD_ShowNum(132,150,adcx,1,16); //显示电压值整数部分
其中adcx因为是整形的,所以得到的值是没有小数点的,所 ...
|