基于rx485的温度采集与显示终稿.docx

上传人:b****6 文档编号:15582391 上传时间:2023-07-05 格式:DOCX 页数:41 大小:219.91KB
下载 相关 举报
基于rx485的温度采集与显示终稿.docx_第1页
第1页 / 共41页
基于rx485的温度采集与显示终稿.docx_第2页
第2页 / 共41页
基于rx485的温度采集与显示终稿.docx_第3页
第3页 / 共41页
基于rx485的温度采集与显示终稿.docx_第4页
第4页 / 共41页
基于rx485的温度采集与显示终稿.docx_第5页
第5页 / 共41页
基于rx485的温度采集与显示终稿.docx_第6页
第6页 / 共41页
基于rx485的温度采集与显示终稿.docx_第7页
第7页 / 共41页
基于rx485的温度采集与显示终稿.docx_第8页
第8页 / 共41页
基于rx485的温度采集与显示终稿.docx_第9页
第9页 / 共41页
基于rx485的温度采集与显示终稿.docx_第10页
第10页 / 共41页
基于rx485的温度采集与显示终稿.docx_第11页
第11页 / 共41页
基于rx485的温度采集与显示终稿.docx_第12页
第12页 / 共41页
基于rx485的温度采集与显示终稿.docx_第13页
第13页 / 共41页
基于rx485的温度采集与显示终稿.docx_第14页
第14页 / 共41页
基于rx485的温度采集与显示终稿.docx_第15页
第15页 / 共41页
基于rx485的温度采集与显示终稿.docx_第16页
第16页 / 共41页
基于rx485的温度采集与显示终稿.docx_第17页
第17页 / 共41页
基于rx485的温度采集与显示终稿.docx_第18页
第18页 / 共41页
基于rx485的温度采集与显示终稿.docx_第19页
第19页 / 共41页
基于rx485的温度采集与显示终稿.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于rx485的温度采集与显示终稿.docx

《基于rx485的温度采集与显示终稿.docx》由会员分享,可在线阅读,更多相关《基于rx485的温度采集与显示终稿.docx(41页珍藏版)》请在冰点文库上搜索。

基于rx485的温度采集与显示终稿.docx

基于rx485的温度采集与显示终稿

毕业设计论文

 

基于RS485的多机温度采集与显示

陈红香

 

指导老师姓名:

晏文靖

专业名称:

电子信息工程技术

班级学号:

07136337

论文提交日期:

2010年01月07日

论文答辩日期:

2010年01月13日

2010年01月13日

【摘要】温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用。

随着电子技术和微型计算机的迅速发展,微机测量和控制技术得到了迅速的发展和广泛的应用。

单片机具有处理能强、运行速度快、功耗低等优点,应用在温度测量与控制方面,控制简单方便,测量范围广,精度较高。

多机温度监测系统可实现对多点温度的测量,并能根据设定值对环境温度进行调节,实现控温的目的。

本设计基于DS18B20传感器的温度测量和AT89S52单片机的控制装置,通过MAX485通信模块将温度数据传回计算机控制端,从而实现对环境温度进行监测。

本设计就是利用一台PC机与两块单片机所组成的主从式温度监测系统。

在本系统中上位机以PC和Windows操作系统为软硬件资源,下位机采用ATMEL公司的AT89S52,总线采用的是测控系统常用的RS-485。

【关键词】AT89S52PC机与单片机通信MAX485

【Abstract】Temperatureisthemainaccusedintheindustrialcontroloneoftheparameters,especiallyinthemetallurgical,chemical,buildingmaterials,food,machinery,oilindustry,hasheldtheroleofheavy-lightfoot.Aselectronictechnologyandtherapiddevelopmentofmicro-computer,computermeasurementandcontroltechnologyhasbeenrapiddevelopmentandwideapplication.SCMhasadealcanbestrong,fast,lowpowerconsumptionadvantages,applicationsintemperaturemeasurementandcontrol,controlissimpleandconvenient,measuringawiderangeofhighprecision.

Multi-machinetemperaturemonitoringsystemcanrealizethemulti-pointtemperaturemeasurements,andaccordingtosetvaluetoadjusttotheambienttemperaturetoachievetemperaturecontrolpurposes.ThedesignisbasedonDS18B20sensortemperaturemeasurementandcontrolunitMCUAT89S52,throughtheMAX485communicationmodulethetemperaturedatabacktocomputer-controlledside,thusbringingabouttheambienttemperaturemonitoring.

ThisdesignistheuseofaPC,andcomposedoftwomaster-slavemicrocontrollertemperaturemonitoringsystem.Inthissystem,hostcomputerandtheWindowsoperatingsystemtoPChardwareandsoftwareresources,thenext-bitmachineusingATMELCorporationAT89S52,thebususesacontrolsystemcommonlyusedinRS-485.

【KeyWords】AT89S52PCandSingle-chipcommunicationMAX485

绪论

基于RS485的多机温度采集与显示是通过DS18B20检测温度,然后通过MAX485通信模块,将检测到的温度发射到电脑端的接收端,从而在电脑上(VB界面)显示检测到的温度。

系统中使用到的主要材料有:

MAX485通信模块,多功能开发板,温度传感器(DS18B20),RS232-RS485接口.在实际检测时,主要通过温度传感器(DS18B20)的温度检测功能,以及MAX485通信模块的多机串行通信功能,去实现多组温度在电脑端的显示。

电脑端主要通过VB程序(VisualBasic),得以将开发板上的温度检测系统(DS18B20)所测得的温度在电脑端显示。

通信模块采用了MAX485总线通信模块,这种模式由于具有结构简单、价格低廉、通信距离和数据传输速率适当等特点而被广泛应用于仪器仪表、智能化传感器集散控制、楼宇控制、监控报警等领域。

RS-485是一个多引出线接口,这个接口可以有多个驱动器和接收器,可以实现一台PC和多台单片机之间的串行通信;而且RS-485的最长的传输距离为1200m,适合中距离的传输。

多功能开发板通过下载温度检测程序(由AT89S52接收程序),与温度检测模块(DS18B20)连接,再连接MAX485通信模块,再通过RS232-RS485转接口与PC机连接即可实现PC与多单片机的多机通信。

第1章系统设计原理及要求

1.1设计思路

有两个智能开发板每个开发板上安装DS18B20温度传感器并显示当前检测温度值,板上的MAX485和RS232与485转换接口与PC机连接。

在PC微机上用VB建立一界面显示两个智能板上所测的温度。

1.2总体设计思路框图

图1-2基于RS485的多机温度采集与显示总体设计框图

1.3各部分组件说明

DS18B20是“一线总线”数字化温度传感器,测量温度范围为-55℃~+125℃,在-10℃~+85℃,精度范围为±0.5℃。

51系列单片机采用AT89S52单片机。

通信模块采用了MAX485总线通信模块,这种模式由于具有结构简单、价格低廉、通信距离和数据传输速率适当等特点而被广泛应用于仪器仪表、智能化传感器集散控制、楼宇控制、监控报警等领域。

RS-485是一个多引出线接口,这个接口可以有多个驱动器和接收器,可以实现一台PC和多台单片机之间的串行通信;而且RS-485的最长的传输距离为1200m,适合中距离的传输。

在计算机接收端,编辑一个VB程序,用于接收数据和显示温度。

第2章AT89S52单片机的原理与结构

2.1AT89SXX系列单片机的内部结构

ATMEL89系列(以下简称AT89)单片机是美国ATMEL公司生产的8位高性能单片机,其主要技术优势是内部含有可编程Flash存储器,用户可以很方便地进行程序的擦写操作,在嵌入式控制领域中被广泛的应用。

内部结构如图2-1所示

图2-1MCS-51系列单片机的内部结构图

下面对各功能部件作进一步的说明:

⑴数据存储器(RAM):

片内为128个字节(单元),AT89S52单片机内部有256个字节的RAM数据存储器,片内最多可外扩64K字节。

⑵程序存储器(ROM/EPROM):

803l无此部件,8051为4KROM;8751则为4K EPROM。

AT89S51单片机内部有4 KB的闪存程序存储器(Flash),当不够使用时,可扩展为64KB外部程序存储器。

它们的逻辑空间是分开的,并有各自的寻址机构和寻址方式。

这种结构的单片机称为哈佛型结构单片机。

⑶中断系统:

具有5个中断源,2级中断优先权。

⑷定时器/计数器:

2个16位的定时器/计数器,具有四种工作方式。

⑸串行口;一个全双工的串行口,具有四种工作方式。

⑹Pl口、P2口、P3口、P0口:

为4个并行8位I/O口。

⑺特殊功能寄存器(SFR):

共有21个,用于对片内各功能模块进行管理、控制、监视。

实际上是一些控制寄存器和状态寄存器,是一个特殊功能的RAM区。

⑻微处理器(CPU):

为8位的CPU,且内含一个1位CPU(位处理器),不仅可处理字节数据,还可以进行位变量的处理。

8位机在数据采集,运算处理有明显的长处。

ATMEL52子系列功能增强的具体如下四个方面。

(1)片内ROM从4KB增加到8KB。

(2)片内RAM从128B增加到256B。

(3)定时/计数器从2个增加到3个。

(4)中断源从5个增加到6个。

2.2AT89S52单片机的引脚功能

图2-2AT89S52单片机的引脚图

2.2.1I/O端口线输入输出引脚

P0.0—P0.7(39—32):

P0口是一个漏极开路型准双向I/O口。

在访问外部存储器时,它是分时多路转换的地址(低8位)和数据总线,在访问期间激活了内部的上拉电阻。

在EPROM编程时,它接收指令字节,而在验证程序时,则输出指令字节。

验证时,要求外接上拉电阻。

P1.0—P1.7(1-8):

P1口是带内部上拉电阻的8位双向I/O口。

在EPROM编程和程序验证时,它接收低8位地址。

P2.0—P2.7(21-28):

P2口是一个带内部上拉电阻的8位双向I/O口。

在访问外部存储器时,它送出高8位地址。

在对EFROM编程和程序验证期间,它接收高8位地址。

P3.0—P3.7(10-17):

P3口是一个带内部上拉电阻的8位双向I/O口。

在MCS—5l中,这8个引脚还兼有专用功能,P3的8条口线都定义有第二功能,详见表2-2-1:

表2-2-1:

P3口各引脚与第二功能

 

2.2.2控制线控制引脚

ALE(30脚)地址锁存控制信号。

在系统扩展时,ALE用于控制P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。

此外,由于ALE是以晶振1/6的固

定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。

PSEN(29脚)外部程序存储器读选通信号。

在读外部ROM时,有效(低电平),以实现外部ROM单元的读操作。

EA/Vpp(31脚)访问程序存储控制信号。

当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。

RST/Vpp(9脚)复位信号。

当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。

2.2.3外接晶体线

XTAL1(19脚)和XTAL2(18脚)外接晶体引线端。

当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。

主电源引脚高VCC和低VSS

VCC(40脚)+5V电源。

VSS(20脚)地线(GND)。

2.3AT89S52存储器组织

ATMEL89S52单片机在物理上有四个存储空间:

片内程序存储器和片外程序

存储器、片内数据存储器和片外数据存储器。

ATMEL89S52片内有256字节数据存储器RAM和4KB的程序存储器ROM。

除此以外,还可以在片外扩展RAM和ROM,并且各有64KB的寻址范围。

也就是最多可以在外部扩展2×64KB存储器。

ATMEL89S52的存储器组织结构如图2-3所示:

 

图2-3-1ATMEL89S52存储器组织结构

2.4AT89S52程序存储器

ATMEL89S52最多可外扩64K字节程序存储器,64K程序存储器中有5个单元具有特殊用途。

5个特殊单元分别对应于5种中断源的中断服务程序的人口地址,见表2-4:

表2-4各种中断的子程序入口地址

 

通常在这些人口地址处都放一条约对跳转指令。

加跳转指令的目的是,由于两个

中断入口间隔仅有八个单元,存放中断服务程序往往是不够用的。

2.5AT89S52的复位方式

单片机的复位方式有上电自动复位和手工复位两种,其中C=22uF,R=200,Rk=1k。

RST引脚是复位信号的输入瑞。

复位信号是高电平有效。

图2-5上电复位电路

2.6AT89S52的时钟电路

单片机的晶振电路也叫时钟电路,是单片机时序的基础。

单片机内部有振荡器,可以产生时钟。

时钟可以由两种方式产生:

内部方式和外部方式。

外部方式:

可以通过XTAL1和XTAL2接入外部时钟。

内部方式:

在XTAL1和XTAL2端外接入石英晶体作定时元件,内部振荡器自激振荡,产生时钟。

时钟发生器对振荡脉冲进行二分频,因此,时钟是一个双相信号,由P1相和P2相构成。

FOSC可在2MHZ---12MHZ选择。

小电容可以取30PF左右。

图2-6内部方式时钟电路

其中电容为30PF,这种无极性电容是使单片机易起振并保持串口通信,准确计算出波特率。

一般情况晶振选用12MHZ,但串行通信时,使用11.0592MHZ。

第3章串口通信的基本原理

3.1串口通信的有关概念

1、RS-232是串行数据接口标准,最初都是美国EIA(电子工业联合会)制订并发布的,1969年公布的通信协议,适合的数传率为0~20bps。

2、传输率:

所谓传输率就是指每秒传输多少位,传输率也常叫波特率。

国际上规定了一个标准波特率系列,标准波特率也是最常用的波特率,标准波特率系列为110、300、600、1200、4800、9600和19200。

在通信为保证通信正确,必须通信双方必须同一波特率。

3、RS-232-C标准:

RS-232-C标准对逻辑电平的各种信号线的功能作了规定,即信号电平标准和控制信号线的定义。

RS-232-C采用负逻辑规定逻辑电平,信号电平与通常的TTL电平不兼容,逻辑“1”=-3V~-15V逻辑“0”=+3V~+与TTL电平不一样可用TTL/EIA转换器进行转换。

4、RS232接口芯片实现了TTL标准和RS-232-C标准之间的电平转换。

5、AT89S52单片机片上有通用异步接收/发送(UART)用于串行通信,发送时数据由TXD端送出,接收时数据由RXD端输入。

有两个缓冲器SBUF,一个作发送缓冲器,另一个作接收缓冲器。

它是可编程的全双工的串行口。

短距离的机间通信可使用UART的TTL电平,使用驱动芯片(MAX232或1488/1489)可接成RS232C和通用微机进行通信。

波特率时钟必须从内部定时器1或定时器2获得。

若应用要求RS232完全的握手功能,必须借助单片机其它管脚用软件处理。

3.2RS-232有关的串行通信概念

RS232是个人计算机上的通讯接口之一,由电子工业协会(ElectronicIndustriesAssociation,EIA)所制定的异步传输标准接口。

通常RS-232接口以9个接脚(DB-9)或是25个接脚(DB-25)的型态出现,一般个人计算机上会有两组RS-232接口,分别称为COM1和COM2。

3.3与串行口有关的SFR

3.3.1串行通信控制寄存器SCON

SCON是串行口控制和状态寄存器,其格式如下:

 

SM0、SM1:

串行口工作方式控制位,具体工作方式见表3-3-1所示:

表3-3-1串行口工作方式控制

SMOSM1

工作方式

说明

波特串

00

方式0

同步移位寄存器

fosc/12

01

方式1

10位异步收发

由定时器控制

10

方式2

11位异步收发

fosc/32或fosc/64

11

方式3

11位异步收发

由定时器控制

SM2:

多机通信控制位(方式2,3)。

1一只有接收到第9位(RB8)为1,RI才置位。

0-收到字符N就置位。

REN:

串行口接收允许位。

1一允许串行口接收。

0一禁止串行口接收。

TB8:

方式2和方式3时,为发送的第9位数据,也可以作奇偶校验位。

RB8:

方式2和方式3时,为接收到的第9位数据;方式1时,为接收到的停止位。

TI:

发送中断标志。

由硬件置位,必须由软件清0。

RI:

接收中断标志。

由硬件置位,必须由软件清0。

3.3.2电源控制器PCON

PCON的第7位SMOD是与串行口的波特率设置有关的选择位。

SMOD:

串行口波特率加倍位。

1——方式1,3波特率=定时器1溢出率/16;方式2波特率为fosc/32;

0——方式1,3波特率=定时器1溢出率/32;方式2波特率为fosc/64。

GF0、GF1:

两个通用标志位。

PD、IDL:

CHMOS器件的低功耗控制位。

3.4串行口的工作方式

1.方式0

方式0为移位寄存器输入/输出方式。

串行数据通过RXD输入/输出,TXD则用于输出移位时钟脉冲。

方式0时,收发的数据为8位,低位在前。

波特率固定为fosc

/12,其中fosc为单片机外接晶振频率。

发送是以写SBUF寄存器的指令开始的,8位输出结束时TI被置位。

方式0接收是在REN=1和RI=0同时满足时开始的。

接收的数据装入SBUF中,结束时RI被置位。

2.方式1

方式1是10位异步通信方式,1位起始位(0),8位数据位和1位停止位

(1)。

其中的起始位和停止位在发送时是自动插入的。

任何一条以SBUF为目的寄存器的指令都启动一次发送,发送的条件是TI=0,发送完置位TI。

方式1接收的前提条件是SCON中的REN为1,同时以下两个条件都满足,本次接收有效,将其装入SBUF和RB8位。

否则放弃接收结果。

两个条件是:

(1)RI=0;

(2)SM2=0或接收到的停止位为1。

方式1的波特率是可变的,波特率可由以下计算公式计算得到:

方式1波特率=2SMOD·(定时器1的溢出率)/32

其中的SMOD为PCON的最高位。

定时器1的方式0,1,2,都可以使用,其溢出率为定时时间的倒数值。

3.方式2和方式3

这两种方式都是11位异步接收/发送方式,它们的操作过程完全一样,所不同的是波特率:

方式2波特率=2SMOD·(fosc/64)

方式3波特率同方式1(定时器1作波特率发生器)。

方式2和方式3的发送起始于任何一条“写SBUF”指令。

当第9位数据(TB8)输出之后,置位TI。

方式2和方式3的前提条件也是REN为1。

在第9位数据接收到后,如果下列条件同时满足:

(1)RI=0;

(2)SM2=0或接收到的第9位为1,则将已接收的数据装入SBUF和RB8,并置位RI;如果条件不满足,则接收无效。

ATMEL89S52串行口的不同寻常的特征是包括第九位方式。

这允许在串行口通信增加的第九位用于标志特殊字节的接收。

对简单网络,第九位方案允许接收单片机仅当字节具有一个第九位时才能被中断。

用这种方法,发送器可以广播一个字节让第九位为高作为“每个人请注意”字节。

字节可以为节点地址,地址相同的节点可以打开接收接下来的字符。

所接续字节(第九位为低)不能引起其它单片机中断,因为未送它们的地址。

用这种方式。

一个单片机可以和大量的其它单片机对话而不打扰不寻址的单片机。

这种系统必须工作在严格的主从方式,由软件进行取舍安排。

 

3.5串行口的初始化

3.5.1串行口波特率

通常情况下,使用单片机的串行口时,选用的晶振比较固定6MHz,12MHz,11.0592MHz。

常用于和微机的通信;选用的波特率也相对固定。

串行口常用的波特率及相应的设置见表3-5-1所示:

表3-5-1串行口波特率表

3.5.2初始化步骤

在使用串行口之前,应对它进行编程初始化,主要是设置产生波特率的定时器1、串行口控制和中断控制。

具体步骤如下:

⑴确定定时器1的工作方式——编程TMOD寄存器;

⑵计算定时器1的初值——装载TH1、TL1;

⑶启动定时器1——编程TCON中的TR1位;

⑷确定串行口的控制——编程SCON;

⑸串行口在中断方式工作时,须开CPU和源中断——编程IE寄存器。

 

第4章DS18B20温度传感器

4.1DS18B20的简介

DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。

与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。

可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。

因而使用DS18B20可使系统结构更趋简单,可靠性更高。

4.2DS18B20的特点

(1)独特的单线接口方式:

DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

(2)在使用中不需要任何外围元件。

(3)可用数据线供电,电压范围:

+3.0~+5.5V。

(4)测温范围:

-55~+125℃。

固有测温分辨率为0.5℃。

(5)通过编程可实现9~12位的数字读数方式。

(6)用户可自设定非易失性的报警上下限值。

(7)支持多点组网功能,多个DS18B20可并联在惟一的三线上,实现多点测温。

(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。

4.3DS18B20的封装结构

 

图4-3DS18B20的封装结构图

DS18B20引脚功能:

·GND电压地·DQ单数据总线·VDD电源电压·NC空引脚

4.4DS18B20的测温原理

DS18B20的测温原理如图4-4所示,图中低温度系数晶振的振荡频率受温度的影响很小〔1〕,用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。

计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。

减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。

图4-4中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。

 

图4-4DS18B20的测温原理图

4.5DS18B20与单片机的典型接口电路

 

图4-5DS18B20与CPU的接口电路

上图采用寄生电源供电方式,P1.0口接单线总线为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管和89C51的P1.0来完成对总线的上拉。

当DS18B20处于写存储

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2