基于单片机的温度控制系统毕业设计(3)

2019-03-11 11:27

基于单片机的温度测量系统

存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

由于此设计需要编写程序,需要将程序烤入单片机中,因此单片机必须具有足够多的存储空间,其具有8K字节的Flash完全满足要求。32位的I/O 口线能够使得单片机与温度显示器、温度传感器、键盘、报警电路、按键电路和指示灯连接等等变得可能。16位的定时计数器使得读取数据变得更加简单,同时其结构有利于晶振电路和复位电路的连接。最重要的是,能够在掉电状态下保存RAM内的数据。同时,与同类51单片机相比,AT89S52具有更强的可操作性。因此,对于本设计来说,选择AT89S52是最有利的。

3.1.2 AT89S52的引脚功能

AT89S52共有40个引脚,8k Bytes Flash片内程序存储器,256 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。其逻辑引脚图如图3-1。

图3-1 AT89C51逻辑引脚图

各引脚功能叙述如下:

1.电源和晶振

VCC——运行和程序校验时加+5V

5

基于单片机的温度测量系统

GND——接地

XTAL1——输入到振荡器的反向放大器

XTAL2——反向放大器的输出,输入到内部时钟发生器 (当使用外部振荡器时,XTAL1接地,XTAL2接收振荡器信号)

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。

2.I/O(4个口,32根)

P0口——8位、漏极开路的双向I/O口。当使用片外存储器(ROM、RAM)时,作地址和数据分时复用。在程序校验期间,输出指令字节(需加外部上拉电路)。P0口(作为总线时)能驱动8个LSTTL负载。

P1口——8位、准双向I/O口。在编程/校验期间,用于输入低位字节地址。P1口可驱动4个LSTTL负载。对 P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0 和 P1.2 分别作定时器/计数器 2 的外部计数输入(P1.0/T2)和时器/计数器 2的触发输入(P1.1/T2EX),具体如下表3-2所示。

脚号 P1.0 P1.1 P1.5 P1.6 P1.7 第二功能 T2(定时器/计数器 T2 的外部计数输入),时钟输出 T2EX(定时器/计数器 T2 的捕捉/重载触发信号和方向控制) MOSI(在系统编程用) MISO(在系统编程用) SCK(在系统编程用) 表3-2 AT89S52 P1口第二功能表

P2口——8位、准双向I/O口。当使用片外存储器(ROM及RAM)时,输出高8位地址。在编程/校验期间,接收高位字节地址。P2口可以驱动4个LSTTL

6

基于单片机的温度测量系统

负载。

P3口——8位、准双向I/O口,具有内部上拉电路。P3口提供各种替代功能。在提供这些功能时,其输出锁存器应由程序置1。P3口可以输入/输出4个LSTTL负载。

3.串行口

P3.0——RXD(串行输入口),输入。 P3.1——TXD(串行输出口),输出。 4.中断

P3.2——INT0外部中断0,输入。 P3.3——INT1外部中断1,输入。 5.定时器/计数器

P3.4——T0定时器/计数器0的外部输入,输入。 P3.5——T1定时器/计数器1的外部输入,输入。 6.数据存储器选通

P3.6——WR低电平有效,输出,片外存储器写选通。 P3.7——RD低电平有效,输出,片外存储器读选通。 7.控制线(共4根) 输入:

RST——复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

EA/Vpp——片外程序存储器访问允许信号,低电平有效。在编程时,其上施加21V的编程电压。

注意:在加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

输入、输出:

ALE/PROG——地址锁存允许信号,输出。ALE以1/6的振荡频率稳定速率输出,可用作对外输出的时钟或用于定时。在EPROM编程期间,作输入,输入编程脉冲(PROG)。ALE可以驱动8个LSTTL负载。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。

注意:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

7

基于单片机的温度测量系统

输出:

PSEN——片外程序存储器选通信号,低电平有效。在从片外程序存储器取址期间,在每个机器周期中,当PSEN有效时,程序存储器的内容被送上P0口(数据总线)。PSEN可以驱动8个LSTTL负载。

3.1.3 AT89S52的工作模式及注意事项

AT89S52单片机有两种可用软件编程的省电模式,它们是空闲模式和掉电工作模式。这两种方式是控制专用寄存器PCON(即电源控制寄存器)中的PD(PCON1)和IDL(PCON0)位来实现的。PD是掉电模式,当PD=1时,激活掉电工作模式,单片机进入掉电工作状态。IDL是空闲等待方式,当IDL=1,激活空闲工作模式,点偏激进入睡眠状态。如需同时进入两种工作模式,即PD和IDL同时为1,则先激活掉电模式。

在空闲工作状态下,CPU保持睡眠状态而所有的片内的外设都保持激活状态,这种方式由软件产生,此时,片内RAM和所有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或硬件复位终止。

终止空闲工作模式的方法有两种,进入中断服务程序,执行完中断服务程序并紧随RST1(中断返回)指令后,下一条要执行的指令就是使单片机进入空闲模式的那条指令后面的一条指令。

其二是通过硬件复位可以将空闲工作模式终止。需要注意的是,当由硬件复位来终止空闲工作模式时,CPU通常是从激活空闲模式那条指令的吓一跳指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24个时钟周期)有效,在这种情况下,内部禁止CPU访问片内RAM,而允许访问其他端口。为了避免可能对端口产生意外写入,激活空闲状态的那条指令后一条指令不应是一条端口或外部存储器的写入指令。

在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令。片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但并没有因此改变RAM中的内容,在Vcc恢复到正常工作电平前,复位应无效,但必须保持一定时间以使振荡器重启动并稳定工作。

AT89S52单片机具有一些极限参数: (1)工作温度:-55摄氏度至+125摄氏度 (2)储藏温度:-65摄氏度至+150摄氏度 (3)任一引脚对地电压:-1.0V至+7.0V (4)最高工作电压:6.6V (5)直流输出电流:15.0mA

8

基于单片机的温度测量系统

模式 空闲模式 空闲模式 掉电模式 掉电模式

程序存储器 内部 外部 内部 外部

ALE 1 1 0 0

PSEN 1 1 0 0

P0 数据 浮空 数据 浮空

P1 P2 P3

数据 数据 数据 数据 地址 数据 数据 数据 数据 数据 数据 数据

表3-3 空闲和掉电模式外部引脚状态

3.2 温度传感器的选择

3.2.1 DS18B20的特点及选择原因

DS18B20是美国DALLAS公司继DS1820之后推出的增强型单总线数字式温度传感器,它在转换速度、转换时间、传输距离、分辨率等方面较之前产品有了很大的改进,给用户带来了更方便、更令人满意的效果。DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。温度测量范围为-55~+125 摄氏度,可编程为9位~12 位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到3 根或2 根线上,CPU只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。

DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DQ 为数据输入/输出引脚,开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源; GND为地信号;VDD为可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。

在硬件上,DS18B20与单片机的连接有两种方法,一种是VCC接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻.

DS18B20 的性能特点如下:

独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

9


基于单片机的温度控制系统毕业设计(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:探矿工程实施方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: