关于51单片机的DS18B20数码管显示的问题!!! (程序在下面,,温度显示到15.9时候再上升变成20.0了)

2024-12-20 14:56:28
推荐回答(1个)
回答1:

数据位数不够。

uint readtemp(void) //改为整型
{
uchar a, b;
uint t; //改为整型
……
……
……
a = read_byte();
b = read_byte();
t = b * 256 + a;
t = t / 16 * 10;
return t;
}
试试看。

也可以试试浮点数。