全球旧事资料 分类
源由VDD引脚接入,此时IO线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时理论上总线可以挂接任意多个DS18B20传感器,组成多点测温系统。在外部供电的方式下,DS18B20的GND引脚不能悬空,否则不能转换温度,读取的温度总是85℃。
f③温度显示模块设计根据实际应用情况,该温度显示模块采用七段数码管显示电路,数码管选用共阳极数码管,如图U3示,以动态方式显示,显示数据由P1口送出,位控信号由P2口送出,经74LS244进行信号放大,以产生足够大的电流驱动数码管显示。流程图如图示:
④串行通信模块设计AT89S52单片机内部含有一个可编程全双工串行通信接口,由TXD引脚来传送串行数据,而由RXD引脚来接收数据。该接口具有UART通用异步接收和发送器的全部功能,它不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用,可构成双机或者多机通信系统。
⑤报警电路设计本设计采用蜂鸣器报警电路,它由晶体管和蜂鸣器组成。当温度的测量值超出给定的上下限时,由单片机的P37口输出信号控制晶体管导通,则蜂鸣器报警。
f⑥系统软件设计本系统采用AT89S52作为核心处理器件,把经过DS18B20现场实时采集到的温度数据,存入AT89S52的内部数据存储器,并送LED数码管显示,并与温度的设定值进行比较,然后由单片机输出控制信号去控制外部设备。进行温度控制程序的设计还应考虑越限报警,当采集到的温度值与温度的设置值进行比较后,若发现当前温度值越限,则产生报警信号。与硬件电路相关联,本温度控制系统的软件设计主要分为以下几个部分:主程序,温度上下限值设定子程序、温度读取子程序、温度显示子程序、串口通信子程序、输出控制子程序和报警子程序等。其中温度上下限值设定子程序完成对温度范围值的设定及数据保存;温度读取子程序完成对温度传感器数据的读取,并通过温度显示子程序显示温度值;串口通信子程序将采集到的温度数据传送到PC机,以实现远程监控;输出控制子程序根据采集到的温度数据完成对外部设备的控制;报警子程序则当采集到的温度数据超过设定的温度上下限值时报警。整个运行程序,见电子版下面是测温程序段:
sbitDQP33
定义DQ引脚为P33

延时函数
功能:在11059MHz的晶振条件下调用本函数需要24μs,然后每次计数需16μs
voidDS18_delayi
tuseco
dsi
tsfors0suseco
dss
r
好听全球资料 返回顶部