当前位置:文档之家› 基于STC89C51的温度报警器设计

基于STC89C51的温度报警器设计

河南理工大学自动化专业
单片机应用与仿真报告
学院:
班级:
姓名:
学号:
指导老师:
基于STC89C51的温度报警器设计
(14级自动化2班学号)
摘要:温度是日常生活中无时不在的物理量,温度的控制在各个领域都有积极的意义。

很多行业中都有大量的用电加热设备,如用于热处理的加热炉,用于融化金属的坩锅电阻炉及各种不同用途的温度箱等,采用单片机对它们进行控制不仅具有控制方便、简单、灵活性大等特点,而且还可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量。

因此,智能化温度控制技术正被广泛地采用。

关键词:温度控制单片机智能化控制
0引言
温度是一个十分重要的物理量,对它的测量与控制有十分重要的意义。

随着现代工农业技术的发展及人们对生活环境要求的提高,人们也迫切需要检测与控制温度。

温度控制电路在工农业生产中有着广泛的应用。

日常生活中也可以见到,如电冰箱的自动制冷,空调器的自动控制等等。

在工业生产中,温度、压力、流量和液位是四种最常见的过程变量。

其中,温度是一个非常重要的过程变量。

例如:在冶金工业、化工工业、电力工业、机械加工和食品加工等许多领域,都需要对各种加热炉、热处理炉、反应炉和锅炉的温度进行监控。

然而,用常规的监控方法,潜力是有限的,难以满足较高的性能要求。

采用单片机来对它们进行监控不仅具有监控方便、简单和灵活性大的优点,而且可以大幅度提高被测温度的技术指标,从而能够大大提高产品的质量和数量。

因此,单片机对温度的监控问题是一个工业生产中经常会遇到的监控问题。

现代社会是信息化的社会,随着安全化程度的日益提高,而通过温度报警器及时报警,避免不必要的损失。

1 STC89C51芯片特性
1.1简介
STC89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,A TMEL 的89C51是一种高效微控制器。

STC89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1.2电路图
STC89C51电路图如图1所示。

图1 STC89C51电路图
1.3芯片擦除
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE 管脚处于低电平10ms 来完成。

在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。

此外,89C51设有稳态逻辑,可在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。

在闲置模式下,CPU停止工作,但RAM,定时器,计数器,串口和中
断系统仍在工作。

在掉电模式下,保存RAM 的内容并冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。

2 系统总体设计
2.1总体设计思路
系统总体设计流程图如图2所示。

图2 系统总体设计流程图
本文用protues进行仿真,采用at89c51单片机作为处理的核心部分;用pt100作为温度传感器,把采集到的温度经放大后送到adc0804进行A/D转换,经过at89c51单片机处理后送到显示器,显示器将显示采集的温度。

2.2主程序设计
LED_0 EQU 30H
LED_1 EQU 31H
LED_2 EQU 32H
ADC EQU 35H
TCNTA EQU 36H
TCNTB EQU 37H H_TEMP EQU 46H ; //温度上限L_TEMP EQU -14H; //温度下限FLAG BIT 00H
H_ALM BIT P3.0
L_ALM BIT P3.1
SOUND BIT P3.7
CLOCK BIT P2.4
ST BIT P2.5
EOC BIT P2.6
OE BIT P2.7
ORG 00H
SJMP START
ORG 0BH
LJMP INT_T0
ORG 1BH
LJMP INT_T1
START : MOV LED_0, #00H
MOV LED_1, #00H
MOV LED_2, #00H
MOV DPTR, #TABLE
MOV H_TEMP, #60
MOV L_TEMP, #30
MOV TMOD, #12H
MOV TH0, #245
MOV TL0, #0
MOV TH1,# (65536-1000)/256
MOV TL1, # (65536-1000) %256
MOV IE, #8aH
CLR C
SETB TR0;为ADC0808提供时钟WAIT: SETB H_ALM
SETB L_ALM
CLR ST
SETB ST
CLR ST ;启动转换
JNB EOC, $
SETB OE
MOV ADC, P1;读取AD转换结果
CLR OE
MOV A, ADC
SUBB A, #30;判断是否低于下限JC LALM
MOV A, H_TEMP
MOV R0, ADC
SUBB A, R0 ;判断是否高于上限
JC HALM
CLR TR1
LJMP PTOC
LALM: ;低温报警
CLR L_ALM
SETB T R1
CLR FLAG
LJMP P TOC
HALM: ;高温报警
CLR H_ALM
SETB TR1
SETB FLAG
LJMP PtOC
PTOC: MOV A, ADC ;数值转换
MOV B, #100
DIV AB
MOV LED_2, A
MOV A, B
MOV B,#10
DIV AB
MOV LED_1,A
MOV LED_0,B
LCALL DISP
SJMP WAIT
INT_T0: CPL CLOCK;提供89C51时钟RETI
INT_T1: MOV TH1, #(65536-1000)/256
MOV TL1, #(65536-1000)%256
CPL SOUND
INC TCNTA
MOV A, TCNTA
JB FLAG,I1 ;判断高温或低温警报
CJNE A,#30,RETUNE;低温警报声SJMP I2
I1: CJNE A, #20, RETUNE;高温警报声I2: MOV TCNTA, #0
INC TCNTB
MOV A, TCNTB
CJNE A, #25, RETUNE
MOV TCNTA, #0
MOV TCNTB, #0
LCALL DELAY2 RETUNE: RETI
DISP: MOV A,LED_0 ;数码显示子程序
MOVC A,@A+DPTR
CLR P2.3
MOV P0, A
LCALL DELAY
SETB P2.3
MOV A, LED_1
MOVC A,@A+DPTR
CLR P2.2
MOV P0, A
LCALL DELAY
SETB P2.2
MOV A, LED_2
MOVC A,@A+DPTR
CL R P2.1
MOV P0, A
LCALL DELAY
SETB P2.1
RET
DELAY: M OV R6, #10
D1: MOV R7, #250
DJNZ R7, $
DJNZ R6, D1
RET
DELAY2: MOV R5,#20
D2: MOV R6, #20
D3: MOV R7, #250
DJNZ R7, $
DJNZ R6, D3
DJNZ R5, D2
RET
TABLE: DB 3FH, 06H, 5BH, 4FH, 66H
DB 6DH, 7DH, 07H, 7FH, FH
END
2.3 Proteus仿真图
系统总体设计Proteus仿真图如图3所示。

图3 仿真图3 结束语
这种温度报警器结构简单。

工作时,温
度测量范围为0~250ºC。

当温度达到预定
值时,立刻发出报警信号,从而防止因温度
升高或过低而带来的不必要的损失。

通过本次课程设计,又使我学到了许多
书本上无法学到的知识,也使我深刻体会到
单片机技术应用领域的广泛,不仅使我对学
过的单片机知识有了很多的巩固,同时也对
单片机这一门课程产生了更大的兴趣。

本次
课程设计中,我感触最深的是查阅大量的设
计资料。

其次,我学会了在网络上查找有关本设
计的各硬件的资源,其中包括:AT89C51
单片机及其引脚说明、ADC0808引脚图及
其引脚功能等,为本次课程设计提供了一定
的资料。

经过这次的设计,为我们以后毕业
设计的制作也奠定了一定的基础。

参考文献:
[1]余发山,王福忠单片机原理及应用技术徐州:
中国矿业大学出版社.2012.6
[2]艾永乐,付子义数字电子技术基础北京中国
电力出版社.2008
[3]王俊峰电子产品开发设计与制作北京人民
邮电出版社.。

相关主题