首先是你的两个18B20是在两个管脚上,还是一个管脚上。如果是在两个管脚上的话你先检查一遍另一个18b20的程序有没有忘改的引脚;如果在一个引脚上你要先确认18b20的序列码有没有错,能付正常读取两个18b20的程序。
然后是两个18b20控制的都是以个P1^1,还是一个控制P1^1,一个控制其余管脚。如果两个都是控制P1^1的话,你要确定是任意一个18b20 >=50度是输出低,还是两个都>=50度时输出低,否则如:
if(wd1>=50)P11=0;else P11=1;
if(wd2>=50)P11=0;else P11=1;
这样编写的话第一只18b20显然是无法起到控制作用,因为P11的状态马上就会被第二只18b20改变。
关于楼上的PID算法,那是用来进行恒温控制的,跟楼主出现的问题没关系。
温馨提示:答案为网友推荐,仅供参考