我在做一个用18b20测量水温,并通过串口把数据传送给电脑上位机进行显示,用的51单片机。现在的问题是不接串口,把18b20泡在水里,单片机显示的温度正常;接串口,不把18b20泡水里,单片机和上位机都显示正常;但一旦同时接串口,把18b20泡水里,就单片机显示和上位机显示都不正常了,现象是我每400ms测量一次温度并显示,而单片机和上位机显示的都是40,xx,40,xx....显示40都是正常的,XX大多数时候都是00或者十几,也就是说一下子正常一下子不正常。电路时没问题的,单片机和上位机的通信也是没问题的,18b20的程序也是没问题,那问题是出在哪里了呢?我觉得我的串口好像有点漏电,用数字万能表交流档测有十几二十伏,水也是。主机箱已经接地了的。 |