《单片机课程设计报告》-温度控制器-

更新时间:2024-06-11 05:45:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《 微 机 原 理 与 接 口 技 术 》

课 程 设 计 报 告

目 温 度 控 制 器 的 设 计

学 院 电 气 工 程 学 院 班 级 电 气 0802 班 学 号 0 8 2 9 1 0 5 8 指导老师 姜久春 小组成员 杨 洋 、徐 国 金

2011年 1 月 12 日

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

《微机原理与口技术》课程设计报告

——温度控制器的设计

【题目】

温度控制器

【要求】

1.采用1路模拟输入,电压范围为0——5V,控制温度变化范围为0——99.9。C 。 2.使用2个继电器分别控制加热器和风机,用来加热和降温。 3.目标温度保持在60度。

4.系统中加一个滞环,当温度低于50度,开始加热;当温度高于55度时,关加热器; 当温度高于70度时,开风机;当温度低于65度时,关风机。 5.使用3个数码管作为输出显示电压值或温度值。

【预习及准备】

1.课题背景

电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化。在现代社会中,温度控制不仅应用在工厂生产方面,其作用也体现到了各个方面。

而本次设计就是要通过以MCS-51系列单片机为控制核心,实现温度控制器的设计。

2.系统原理及流程图的初步设计

通过调整继电器,则可将需要设定的温度随所对应的电压值传输给单片机,再由单片机控制显示器,显示出设定的电压值(即对应的温度值),再通过温度传感器和AD转换将采集的温度与设定的温度进行比较,若一致,则不动作,若不一致,则驱动加热或降温设备,从而实现对被控对象的温度控制。

经设计,温度控制器主要由单片机AT89S51、温度采样电路、A/D转换电路、温度显示电路、温度输入电路、驱动电路等组成。我自己绘制的系统框图和主程序流程图如下所示:

数码管 数码管 数码管 译码 器 译码 器 译码 器 图1 温度控制器系统框图

- 1 -

AT89S51 AD转换电路 继电器继电器 采样电路 传感器 加热器 风机 被控 对象 输入(温度设定)

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

主程序流程图如下所示:

转换是否完成? 单片机 AD转换 Y N 开始 输入 (设定温度) 采样电路 实际值小 比较实际值与 输入值的大小 实际值大 传感器 继电器A 继电器B 数码显示 加热器 被控对象

- 2 -

风机 低于50度 判断实际值的大小 低于65度 高于55度 高于70度

图2 主程序流程图

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

3.元件资料及管脚图 预习部分:

(1)AT89S51单片机

AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4k bytes的可系统编程的Flash制度程序存储器,器件采用ATMEL公司的高密度、非易失行存储技术生产,兼容标准8051指令系统及引脚。

其主要组成和功能为:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),2个数据指针,2个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89S51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个复位。

其管脚图及框图如下:

图3 AT89S51管脚图 图4 AT89S51功能框图

(2)ADC0809(或ADC0804)

ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。其内部逻辑结构为:ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。

ADC0809对输入模拟量要求:信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。地址输入和控制线:4条。

ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。通道选择为:当CBA的值由000——111变化时,分别选择IN0——IN7通道。数字量输出及控制线:11条。

ST为转换启动信号。当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。D7-D0为数字量输出线。

- 3 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,

VREF(+),VREF(-)为参考电压输入。 其管脚图及内部结构图如下:

图5 ADC0809管脚图 图6 ADC0809内部结构图

因本设计只要1路模拟输入,所以用0809比较浪费。可采用ADC0804,ADC0804与ADC0809基本相同,但只将输入模拟值转换为数字值输出到D0。

(3)74LS48译码器

74LS48七段显示译码器输出高电平有效,用以驱动共阴极显示器。该集成显示译码器设有多个辅助控制端,以增强器件的功能。它有3个辅助控制端LT、RBI、BI/RBO,现简要说明如下:

1. 灭灯输入BI/RBO:BI/RBO是特殊控制端,有时作为输入,有时作为输出。当BI/RBO作输入使用且BI=0时,无论其它输入端是什么电平,所有各段输入a~g均为0,所以字形熄灭。

2. 试灯输入LT:当LT=0时,BI/RBO是输出端,且RBO=1,此时无论其它输入端是什么状态,所有各段输出a~g均为1,显示字形8。该输入端常用于检查7488本身及显示器的好坏。

3.动态灭零输入RBI:当LT=1,RBI=0且输入代码DCBA=0000时,各段输出a~g均为低电平,与BCD码相应的字形熄灭,故称“灭零”。利用LT=1与RBI=0可以实现某一位的“消隐”。此时BI/RBO是输出端,且RBO=0。

4. 动态灭零输出RBO:BI/RBO作为输出使用时,受控于LT和RBI。当LT=1且RBI=0,输入代码DCBA=0000时,RBO=0;若LT=0或者LT=1且RBI=1,则RBO=1。该端主要用于显示多位数字时,多个译码器之间的连接。

7448的功能表如下:

图7 74LS48译码器功能表

从功能表可看出,对输入码0000,译码条件是:LT和RBI同时等于1,而对其它输入码则仅要求LT=1,这时候,译码器各段a~g输出的电平是由输入BCD码决定的,并且满足显示字形的要求。

- 4 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

其管脚图及与数码管的连接如下:

图8 74LS48管脚图 图9 74LS48与数码管的连接

(4)共阴极LED数码显示管

在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。八段LED显示器由8个发光二极管组成。基中7个长条形的发光管排列成“日”字形,另一个点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。LED显示器有两种不同的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED显示器。共阴极和共阳级结构的LED显示器各笔划段名和安排位置是相同的。当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示的各种字符。8个笔划段hgfedcba对应于一个字节(8位)的D7 D6 D5 D4 D3 D2 D1 D0,于是用8位二进制码就可以表示欲显示字符的字形代码。例如,对于共阴LED显示器,当公共阴极接地(为零电平),而阳极hgfedcba各段为01110011(76H)时,显示器显示\字符,即对于共阴极LED显示器,“P”字符的字形码是73H。如果是共阳LED显示器,公共阳极接高电平,显示“P”字符的字形代码应为10001100(8CH)。

其管脚图及内部结构图如下:

图10 LED管脚图 图11 LED内部结构(共阳极) 图12 LED内部结构(共阴极)

- 5 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

实际使用部分:

(1)AT89S51单片机

AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4k bytes的可系统编程的Flash制度程序存储器,器件采用ATMEL公司的高密度、非易失行存储技术生产,兼容标准8051指令系统及引脚。

其主要组成和功能为:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),2个数据指针,2个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89S51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个复位。

其管脚图及框图如下:

图13 AT89S51管脚图 图14 AT89S51功能框图

(2)ADC0832

ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。学习并使用ADC0832 可是使我们了解A/D转换器的原理,有助于我们单片机技术水平的提高。

ADC0832 具有以下特点: · 8位分辨率;

· 双通道A/D转换;

· 输入输出电平与TTL/CMOS相兼容; · 5V电源供电时输入电压在0~5V之间; · 工作频率为250KHZ,转换时间为32μS; · 一般功耗仅为15mW;

· 8P、14P—DIP(双列直插)、PICC 多种封装; · 商用级芯片温宽为0°C to +70°C,工业级芯片温宽为?40°C to +85°C;

- 6 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

芯片如下所示:

图15 ADC0832管脚图

芯片接口说明:

· CS_ 片选使能,低电平芯片使能。

· CH0 模拟输入通道0,或作为IN+/-使用。 · CH1 模拟输入通道1,或作为IN+/-使用。 · GND 芯片参考0 电位(地)。

· DI 数据信号输入,选择通道控制。 · DO 数据信号输出,转换数据输出。 · CLK 芯片时钟输入。

· Vcc/REF 电源输入及参考电压输入(复用)。

ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI 数据输入端,可以轻易的实现通道功能的选择。

单片机对ADC0832 的控制原理:正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。

当 ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能。

其功能项如下图所示:

图16 ADC0832功能项表

- 7 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

如上表所示,当此2 位数据为“1”、“0”时,只对CH0 进行单通道转换。当2位数据为“1”、“1”时,只对CH1进行单通道转换。当2 位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。当2 位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。到第3 个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATD0。随后输出8位数据,到第19 个脉冲时数据输出完成,也标志着一次A/D转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。

其时序说明图如下所示:

图17 ADC0832时序说明图

作为单通道模拟信号输入时ADC0832的输入电压是0~5V且8位分辨率时的电压精度为19.53mV。如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。

ADC0832 芯片接口程序的编写:为了高速有效的实现通信,我们采用汇编语言编写接口程序。由于ADC0832 的数据转换时间仅为32μS,所以A/D转换的数据采样频率可以很快,从而也保证的某些场合对A/D转换数据实时性的要求。数据读取程序以子程序调用的形式出现,方便了程序的移植。程序占用资源有累加器A,工作寄存器R7,通用寄存器B 和特殊寄存器CY。通道功能寄存器和转换值共用寄存器B。在使用转换子程序之前必须确定通道功能寄存器B 的值,其赋值语句为“MOV B,#data”(00H~03H)。运行转换子程序后的转换数据值被放入B 中。子程序退出后即可以对B 中数据处理。

ADC0832 芯片接口程序[汇编]: /*------------------------------------------- 子程序名: ADC0832子程序

程序功能: 将模拟电压量转换成数字量 实现方法: 串行通信。 CPU说明: MCS-51

植入说明: 占用 A、B、CY、R7 -------------------------------------------*/

- 8 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

;以下接口定义根据硬件连线更改 ADCS BIT P3.5 ;使能接口 ADCLK BIT P3.4 ;时钟接口

ADDO BIT P3.3 ;数据输出接口(复用) ADDI BIT P3.3 ;数据输入接口 ;以下语句在调用转换程序前设定

MOV B,#00H ;装入通道功能选择数据值 ;以下为ADC0832读取数据子程序 ;==== ADC0832读数据子程序==== ADCONV:

SETB ADDI ;初始化通道选择 NOP NOP

CLR ADCS ;拉低/CS端 NOP NOP

SETB ADCLK ;拉高CLK端 NOP NOP

CLR ADCLK ;拉低CLK端,形成下降沿 MOV A,B

MOV C,ACC.1 ;确定取值通道选择 MOV ADDI,C NOP NOP

SETB ADCLK ;拉高CLK端 NOP NOP

CLR ADCLK ;拉低CLK端,形成下降沿2 MOV A,B

MOV C,ACC.0 ;确定取值通道选择 MOV ADDI,C NOP NOP

SETB ADCLK ;拉高CLK端 NOP NOP

CLR ADCLK ;拉低CLK端,形成下降沿3 SETB ADDI NOP NOP

MOV R7,#8 ;准备送下后8个时钟脉冲 AD_1:

MOV C,ADDO ;接收数据

- 9 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

MOV ACC.0,C RL A ;左移一次 SETB ADCLK NOP NOP

CLR ADCLK ;形成一次时钟脉冲 NOP NOP

DJNZ R7,AD_1 ;循环8次 MOV C,ADDO ;接收数据 MOV ACC.0,C MOV B,A MOV R7,#8 AD_13:

MOV C,ADDO ;接收数据 MOV ACC.0,C RR A ;左移一次 SETB ADCLK NOP NOP

CLR ADCLK ;形成一次时钟脉冲 NOP NOP

DJNZ R7,AD_13 ;循环8次 CJNE A,B,ADCONV ;数据校验 SETB ADCS ;拉高/CS端 CLR ADCLK ;拉低CLK端

SETB ADDO ;拉高数据端,回到初始状态 RET

;====子程序结束==== (3)74HC573

74HC573是八进制 3 态非反转透明锁存器。属于高性能硅门 CMOS 器件,SL74HC573 跟 LS/AL573 的管脚一样。器件的输入是和标准 CMOS 输出兼容 的;加上拉电阻,他们能和 LS/ALSTTL 输出兼容。当锁存使能端LE为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。LE为锁存控制端。

图17 74HC573管脚图 图18 74HC573与LED的连接

- 10 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

(4)74HC245

74HC245是总线驱动器,典型的TTL型三态缓冲门电路。由于单片机等CPU的数据/地址/控制总线端口都有一定的负载能力,如果负载超过其负载能力,一般应加驱动器。 另外,也可以使用74HC244等其他电路,74HC244比74HC245多了锁存器。

图19 74HC245内部电路及管脚图

引脚定义如下:

第1脚DIR:输入输出端口转换用,DIR=“1”高电平时信号由“A”端输入“B”端输出,DIR=“0”低电平时信号由“B”端输入“A”端输出。

第2~9脚“A”信号输入输出端,A1=B1、、、、、、A8=B8,A1与B1是一组,如果DIR=“1”OE=“0”则A1输入B1输出,其它类同。如果DIR=“0”OE=“0”则B1输入A1输出,其它类同。 第11~18脚“B”信号输入输出端,功能与“A”端一样,不再描述。

第19脚OE,使能端,若该脚为“1”A/B端的信号将不导通,只有为“0”时A/B端才被启用,该脚也就是起到开关的作用。 第10脚GND,电源地。 第20脚VCC,电源正极。 (5)共阴极LED数码显示管

在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。八段LED显示器由8个发光二极管组成。基中7个长条形的发光管排列成“日”字形,另一个点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。LED显示器有两种不同的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED显示器。共阴极和共阳级结构的LED显示器各笔划段名和安排位置是相同的。当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示的各种字符。8个笔划段hgfedcba对应于一个字节(8位)的D7 D6 D5 D4 D3 D2 D1 D0,于是用8位二进制码就可以表示欲显示字符的字形代码。例如,对于共阴LED显示器,当公共阴极接地(为零电平),而阳极hgfedcba各段为01110011(76H)时,显示器显示\字符,即对于共阴极LED显示器,“P”字符的字形码是73H。如果是共阳LED

- 11 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

显示器,公共阳极接高电平,显示“P”字符的字形代码应为10001100(8CH)。

其管脚图及内部结构图如下:

图20 LED管脚图 图21 LED内部结构(共阳极) 图22 LED内部结构(共阴极)

(6)运放OP07CP

OP07CP是运算放大器。其特点为:高质量数字音频放大102分贝动态范围(OP07CP设备)的THD + N <0.06%的电源效率为90%到8 -Ω负载16 - ,20 - ,或24位输入32千赫,44.1 kHz的, 48千赫,88.2千赫兹,96赫兹,1.764 -千赫,192千赫采样率经济48引脚TQFP封装下抖动内部PLL OP07CP(绝对)最大额定值:除了终止和EMC兼容性的要求,计算设备都必须为公共服务电子化敏感性测试。这个测试是在IEC 61000-4-2描述,并在已有的欧洲。这个测试需要的设备,并继续容忍ESD事件,而无需用户干预的业务。对于4比4英寸的敏感性前vious索尼由民政事务总署的超级CCD技术饱和信号电平通过产品分贝比以前增加了2 4英寸CCD的与以前的1 / 4的兼容性分贝增加光学系统的使用英寸CCD的水平保持寄存器和复位栅极驱动电压降低至3.0 V(最小)。

其管脚图如下所示:

图23运放OP07CP管脚图

(7)继电器

继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。

继电器的继电特性:继电器的输入信号x从零连续增加达到衔铁开始吸合时的动作值xx,继电器的输出信号立刻从y=0跳跃到y=ym,即常开触点从断到通。一旦触点闭合,输入量x继续增大,输出信号y将不再起变化。当输入量x从某一大于xx值下降到xf,继电器开始释放,常开触点断开。我们把继电器的这种特性叫做继电特性,也叫继电器的输入-输出特性。 释放值xf与动作值xx的比值叫做反馈系数,即 Kf= xf /xx 。触点上输出的控制功率Pc与线圈吸收的最小功率P0之比叫做继电器的控制系数,即Kc=PC/P0。其示意图如下所示:

- 12 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

图24 继电器示意图

当输入量(如电压、电流、温度等)达到规定值时,使被控制的输出电路导通或断开的电器。可分为电气量(如电流、电压、频率、功率等)继电器及非电气量(如温度、压力、速度等)继电器两大类。具有动作快、工作稳定、使用寿命长、体积小等优点。广泛应用于电力保护、自动化、运动、遥控、测量和通信等装置中。其实质是一种传递信号的电器,它根据输入的信号达到不同的控制目的。 电磁继电器的工作原理和特性:电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。

继电器的作用:作为控制元件,概括起来,继电器有如下几种作用。

1) 扩大控制范围。例如,多触点继电器控制信号达到某一定值时,可以按触点组的不同形式,同时换接、开断、接通多路电路。

2) 放大。例如,灵敏型继电器、中间继电器等,用一个很微小的控制量,可以控制很大功率的电路。

3) 综合信号。例如,当多个控制信号按规定的形式输入多绕组继电器时,经过比较综合,达到预定的控制效果。

4) 自动、遥控、监测。例如,自动装置上的继电器与其他电器一起,可以组成程序控制线路,从而实现自动化运行。

- 13 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

【电路板分析及原理图】

经过自己使用万用表对PCB电路板的测量和观察,我了解到了温度控制器的电路原理和结构。使用Proteus软件导出位图,得到其各部分电路及电路原理图如下所示:

图25 AT89C52单片机及接线 图26复位及中断

图27 晶振部分 图28 ADC0832及接线

- 14 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

SEAT: MOV 23H,#01H

SUB: CLR C MOV A,45H

SUBB A,22H ;去掉最大、小值,和存在45H MOV 45H,A MOV A,46H

SUBB A,23H ;高8位的和减掉低8位的溢出值(0或1) MOV 46H,A MOV R6,#3

PING: CLR C ;求平均值 MOV A,46H RRC A MOV 46H,A MOV A,45H RRC A

MOV 45H,A DJNZ R6,PING

MOV 41H,45H ;平均值的结果放在41H里面 RET

BCD: MOV A,41H

MOV B,#100 MUL AB

MOV 30H, A MOV 31H,B MOV A,31H MOV B,#10

DIV AB MOV 50H,A MOV 51H,B MOV A,30H

MOV B,#10 MUL AB

MOV A,B MOV 52H,A

DISPLAY: SETB P1.5 SETB P1.6 SETB P1.7

MOV A,50H ;十位数的字形码送A,查表显示十位的2进制数 MOV DPTR,#TAB

MOVC A,@A+DPTR MOV P0,A

- 20 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

CLR P1.5 ;字位送P1.5,即对应数码管1的字位 LCALL DELAY

SETB P1.5

MOV A,51H ;个位数的字形码送A,查表显示个位的2进制数 MOV DPTR,#TAB

MOVC A,@A+DPTR ORL A,#01H MOV P0,A

CLR P1.6 ;字位送P1.6,即对应数码管2的字位 LCALL DELAY

SETB P1.6

MOV A,52H ;小数位的字形码送A,查表显示小数位的2进制数 MOV DPTR,#TAB

MOVC A,@A+DPTR MOV P0,A

CLR P1.7 ;字位送P1.7,即对应数码管3的字位 LCALL DELAY RET

TAB: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H

DELAY: MOV R4,#02H ;延时4ms子程序(2*250*2*2*2us=4ms) DELAY1: MOV R5,#0FAH DELAY2: DJNZ R5,DELAY2 DJNZ R4,DELAY1 RET

DONGZUO: CLR C MOV A,40H

CJNE A,#128,NEXT ;判断温度是否大于50度 NEXT: JNC NEXT1 ;高于等于50,跳转 SETB P1.2 ;低于50,开热机 CLR P1.3 ;关风机

CLR P1.0 ;开灯1

SETB P1.1 ;关灯2 SJMP COM

NEXT1: CJNE A,#141,NEXT10 ;判断温度是否大于55度 NEXT10: JNC NEXT2 ;高于55,跳转

CLR P1.3 ;位于50~55度之间,关风机,热机保持 SETB P1.1 ;关灯2 SJMP COM

- 21 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

NEXT2: CJNE A,#166,NEXT20 ;判断温度是否大于65度 NEXT20: JNC NEXT3 ;高于65,跳转

CLR P1.2 ;位于55~65之间,两机都关 CLR P1.3

SETB P1.0 ;关灯1

SETB P1.1 ;关灯2 SJMP COM

NEXT3: CJNE A,#179,NEXT30 ;判断温度是否大于70度 NEXT30: JNC NEXT4 ;高于70,跳转

CLR P1.2 ;位于65~70之间, 关热机,风机保持 SETB P1.0 ;关灯1 SJMP COM

NEXT4: CLR P1.2 ;关热机 SETB P1.0 ;关灯1 SETB P1.3 ;开风机 CLR P1.1 ;开灯2 COM: RET END

【Proteus软件仿真】

Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。

经过用万用表检查和观察PCB板,以及对本次设计的要求及原理的理解,我使用Proteus软件对本次设计进行了仿真。

- 22 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

仿真步骤及效果图如下:

(1)先用Proteus软件画出整个PCB电路板电路连接图。(注:因为电路设计的元件比较多,为避免连线造成的错误,所以使用网络标号的方式,这样显得简洁、清晰)

图40 用Proteus软件画出的整个PCB电路板电路连接图

(2)双击单片机AT89C52芯片,在弹出的对话框里添加程序文件的HEX格式文件,其中HEX文件可以在使用WAVE6000-伟福编译器编译程序的同时生成。

图41 添加程序的HEX格式文件

- 23 -

《微机原理与接口技术》课程设计报告—温度控制器的设计 电气0802班 杨洋 08291058

(2)点击上方工具栏中的“源代码”—“添加/删除源代码选项,再在弹出的对话框里添加程序的HEX格式文件。

图42 添加源代码

图 43 添加源代码—即程序的HEX格式文件

- 24 -

本文来源:https://www.bwwdw.com/article/lh86.html

Top