楼主的问题解决了吗?如果解决了能不能分享一下? |
1、负号显示不出来,总是显示为0。 你自己看看bw这个变量,赋值“-”之后又被你下面的语句改了。 2、温度值总是要比实际值小1摄氏度。 这是个向哪个方向取整的问题,你可以不管,简单+1就可以了。 3、C语言子函数返回值调用问题,f值的调用。 这里f就是个局部变量,使用就可以了,不需要调用。 |
我也出现了这样的问题,正温度正常显示,负温度不能正常显示。不知道问题出现在哪里? |
显示正温度值会错误正常吗 |
3073084142 发表于 2018-7-26 18:12 实例97 一线式DS18B20测温 先Proteus仿真一下,确认有效。
![]() ![]() 以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil C和Proteus》清华大学出版社ISBN 978-7-302-41682-1,内有常用的单片机应用100案例,用于仿真实验操作,电路与程序真实可靠可信可行。 |
实例97 一线式DS18B20测温 |
bw="-";// 温度为负时,百位显示负号,这里有问题 write_1602dat(bw+0x30); 应该是你码表转换问题了。要你1602上显示“-”,你看下ASCII码对照表要多少才是,我估计你的一出来 |
实例97 一线式DS18B20测温 |