基于AT89C51的自动温度测量报警系统设计
值经过匹配后送入A/D转换器,经过转换之后的数据送入单片机进行处理。单片机按照编制好的程序进行处理,如果确实此时的温度超过了人们凭借经验设定的阈值,单片机将通过指令使P0.0、P0.1两口输出为高电平(约为+5 V),使得扬声器与发光二极管产生报警信号。该部分的电路设计如图4和图5所示。
2 系统软件设计
为了便于程序的修改,将系统按照模块化的方法进行设计。该系统由温度采集、A/D转换、数据处理、报警输出4个模块部分组成。温度采集是由温度传感器LM35完成,A/D转换和报警输出是由单片机进行控制的。而数据处理部分则是单片机接收到A/D转换器送来的数据后,在单片机内部完成的,其结果将决定报警输出模块是否工作。
系统的工作流程是:LM35采集温度,并且将温度信号转换成电信号:A/D转换将线性放大后的模拟电信号进行A/D转换,使之成为单片机能够处理的数字信号;单片机通过处理转换后的数字信号来分析采样的温度值,并将分析结果送到报警输出电路中;报警输出电路根据分析的结果做出相应的反应。系统的软件设计流程图如图6所示。
2.1 A/D转换模块
A/D转换器在启动之前需要对其进行初始化,否则会影响后面的使用。根据图2的连接方式,初始化时将单片机的P1.4口置1,然后软件启动一次转换过程即可。在转换的过程中。由于任何A/D转换器都会有一定的转换时间,所以在转换时要设置一定的延时,并且该延时要略长于器件的转换时间。由于 AD1812的转换时间约为2.3 μs,在程序中可以将延时设置为3μs,以保证转换过程的顺利进行。
2.2 中央处理模块
这部分模块的软件设计主要包括单片机对A/D转换模块的控制、单片机处理送来的数据以及单片机对报警系统的控制3大部分。
对A/D模块的控制主要包括对AD7812进行有关控制字的写入以及对P1口的引脚的置位与清零操作;数据处理部分主要是将外界温度转换过来的电压值与预先的经验阈值进行比较,进而决定是否启动报警系统;报警系统的设计则是根据数据处理的结果对P0口进行清零或是置位,来启动或停止报警电路。
3 结束语
本文主要设计了一种自动温度测量报警系统,该系统的设计主要基于AT89C51单片机,中央处理单元与外围扩展模块的构造简单,整个系统实现成本较低。由于LM35是采用单电源供电方式,因此该系统只能够在5~150℃的范围内工作,可以作为常温下的报警装置使用,尤其是在一些对温度较敏感的电气设备内部,可以起到防止设备故障的作用,故而具有一定的实用价值。在设计中没有使用并口的A/D转换AD0 809而是使用了串口转换的AD7812为单片机节约了许多端口资源,可以利用这些资源扩展LED或LCD显示系统,也可制成温度的测量与报警系统,使其功能更加完善。
- LabVIEW实现水循环温度控制系统(08-05)
- 基于AT89C51单片机的温度测控系统设计(04-16)
- 基于RC测量系统的设计方案(01-08)
- 涡轮发电机转速测试系统设计(10-29)
- 一种基于AT89C51的便携式焊缝底片数字化检测仪设计(08-26)
- 基于AT89C51的智能矿井环境质量监控系统(10-21)