《2022年基于DS18B20的多点温度检测系统设计.docx》由会员分享,可在线阅读,更多相关《2022年基于DS18B20的多点温度检测系统设计.docx(41页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品学习资源绪论1.1 设计背景和意义温度是一个反映物体冷热程度地物理量.温度地检测和掌握在当代日常生活和工农业生 产工程中有着越来越广泛地应用,要求也越来越高1. 在冶金、化工等工业生产过程中,广泛使用地各种加热炉、反应炉等,都要求对温度进行严格掌握.在日常生活中,电烤箱、微波炉、电热水器等电器也需要进行温度检测与掌握2, 而且现在越来越多地地方用到多点温度测量,比如冰箱地保鲜层和冷冻层是不同地温度,这就需要多点地测量和显示可以让用户直观地看到温度值,并依据需要调剂冰箱地温度.它仍在其他领域有着广泛地应用,如:消防电气地非破坏性温度检测,空调系统地温度检测等.温度检测系统应用特别宽阔3.1.
2、2 国内外同类设计简况目前多点温度检测系统在国内各行各业地应用已经特别广泛,但从国内生 产地多点温度检测仪器来讲,进展水平仍比较落后,和德国、美国等发达国家 相比有着很大差距 .采纳 51 单片机来对温度进行检测和掌握,不仅具有成本低廉、掌握便利和敏捷性大等优点,而且可以提高被控温度地技术指标,从而提 高产品地质量和数量 .因此,单片机对温度地处理问题是一个工业生产中常常会遇到地问题 4.1.3 本课题要解决地问题和方法本文基于AT89C51单片机,由两片DS18B20温度传感器采集环境温度,两片DS18B20 温度传感器采纳单总线连接方式,统一连接于单片机地同一IO 口,由 LCD1602将
3、采集地温度实时显示出来,当温度超过设定地温度值范畴,单片机掌握外围电路中地蜂鸣器产生报警,并且利用max232 实现与上位机地通信 .因此主要电路包括:单片机系统电路,温度采集电路,温度显示电路,上位机通信电路,报警电路等组成.2 系统总体设计2.1 系统方案地挑选该设计主要由温度测量,数据采集和数据处理部分组成,实现方案有很多种,下面将列出两种常常用到地实现方案.欢迎下载精品学习资源2.1.1 设计方案一采纳热敏电阻传感器 .随着环境温度地变化,热敏电阻地阻值也发生线性变化,电阻两端地电压也随着电阻地线性转变而发生相同地变化,用处理器采集电阻两端地电压,然后依据公式运算出当前地环境温度值.数
4、据采集部分就使用带有A/D 通道地单片机或使用专业地 A/D 转换芯片进行 A/D转换后,就可以用单片机进行数据地处理,在显示电路上,就可以将被测温度显示出来,同时对温度进行相应地报警和掌握5.此方案地优点是工作温度范畴特别宽,体积小,精确度高,但是它们也存在着输出电压小、抗干扰才能差地缺点,并且这种设计需要用到A/D 转换电路,因此此类设备需要比较多地外部硬件支持,硬件电路复杂,软件调试复杂,制作成本高.2.1.2 设计方案二采纳数字温度芯片DS18B20 测量温度 .DS18B20 是 DALLAS公司生产地一线式数字温 度传感器,温度测量范畴为55 125 ,可编程为 9 位 12 位
5、A/D 转换精度,测温辨论率可达 0.0625,稳固性好,被测温度用符号扩展地16 位数字量方式串行输出,输出信号全数字化 .多个 DS18B20 可以接在一根线上, CPU 只需一根端口线就能与诸多DS18B20 通信,占用微处理器地端口较少,可节约大量地引线和规律电路,便于单片机掌握及处理,省去传统测温方法地很多外围电路.且该芯片地性能比较稳固,线形较好,在0100C时,最大线性偏差小于1C.DS18B20 采纳了单总线地数据传输,在同一条总线上可以挂接任意多个 DS18B20 传感器,可以同时测量多个环境温度,同时也提高了单片机IO 口地利用效率 .由 DS18B20 和单片机 AT89
6、C51 构成地温度测量装置,它直接输出温度地数字信号,测温系统地结构比较简洁,体积也不大6. 采纳 51 单片机掌握,软件编程地自由度很大,可通过 C 语言编程实现各种各样地算术算法和规律掌握,而且硬件实现简洁,安装便利.另外 51 单片机在工业掌握上也有着广泛地应用,编程技术及外围功能电路地协作使用都很成熟 .该系统利用 AT89C51 单片机芯片掌握多个温度传感器DS18B20 进行多点实时温度检测并显示,能够实现快速测量多个地点地环境温度并可以依据需要设定上下限报警温度进行报警和相应地掌握处理7.从以上两种方案,简洁看出方案二地测温装置电路更简洁、实现更便利、程序设计也更简洁实现,故本次
7、设计采纳了方案二.2.2 系统地构成本设计是以51 单片机为核心设计地一种多点数字温度报警系统,系统整体硬件电路包欢迎下载精品学习资源括单片机晶振电路,复位电路,电源电路,2 路温度采集电路,温度显示电路,报警电路,上位机通信电路等组成.系统框图如图2.1 所示:图2.1 硬件电路系统框图单元模块功能如下:系统地核心器件是51单片机,它是整个系统地核心,由它来掌握和谐各外围电路模块地正常工作, 本设计采纳较为常见地AT89C51 单片机 .本设计地单片机地电源电路设计了两种供电方式,一种是采纳运算机地USB口,单片机地工作电压为 5V ,运算机地 USB 口恰好能直接供应5V 地直流电压,因此
8、采纳运算机地USB 口供电较为简洁 .其次种供电方式采纳三端固定式稳压模块7805, 7805芯片外接 12V 电池组或稳压电源, 12V电压经过 7805能输出 5V 电压8.温度检测电路由 2路DS18B20 构成,实现多点温度检测.DS18B20 是美国 DALLAS 半导体公司推出地一种改进型智能温度传感器,与传统地热敏电阻等测温元件相比,它内部含有AD 转换芯片, ,可编程为 9位 12位A/D 转换精度,能直接读出被测温度,而且DS18B20采纳单总线地数据传输,可以在一条总线上挂接任意多个DS18B20 ,每个 DS18B20 芯片拥有唯独地序列号,只需在程序中通过拜访不同地序列
9、号,就可以通过一条总线掌握全部地DS18B20 芯片.提高了单片机 I/O 口地利用率,电路也特别简洁.报警功能由蜂鸣器完成,在程序中预先设定了报警界限,即当温度超出或低于所设定地温度范畴时,将单片机地I/O 口拉高,使蜂鸣器发出警报,另外为了区分不同地DS18B20温度不再界限内,在单片地两个I/O 分别接了不同颜色地发光二极管,以达到区分地目地.显示模块就由 LCD1602 显示, LCD1602 可以显示两行字符,所以上下两行分别显示不同两点地温度 .与上位机通信模块采纳MAX232 芯片, MAX232 芯片是美信( MAXIM)公司专为 RS- 232标准串口设计地单电源电平转换芯片
10、,使用+5单电源供电 .欢迎下载精品学习资源2.3 系统地工作过程系统由 DS18B20 采集 温度后进行转换再把温度数据传递给单片机,单片机控制LCD1602 进行同步温度显示,同时对温度值进行处理,当温度高于或低于设定值后,由蜂鸣器和发光二极管产生报警.3 系统地硬件设计3.1 单片机最小系统地设计本系统采纳 AT89C51 为主控器,兼容全部 89C51单片机 .3.1.1 89C51单片机简介一.89C51 单片机地片内结构89C51单片机地片内结构如图3.1所示 .它把那些作为掌握应用所必需地基本功能部件都集成在一个集成电路芯片上.它由如下功能部件组成9 :(1) ) 微处理器( C
11、PU )(2) ) 数据储备器( RAM )(3) ) 程序储备器( 4K Flash ROM )(4) ) 4个8位可编程并行 I/O 口( P0口.P1口、 P2口、 P3口)( 5) 1个全双工串行口( 6) 2个16位定时器 /计数器( 7) 中断系统( 8) 特别功能寄存器( SFR)欢迎下载精品学习资源图 3.1 89C51 单片机片内结构1 CPU89C51单片机中有 1个8位CPU ,与通用地 CPU 基本相同,同样包括了运算器和掌握器两大部分,只是增加了面对掌握位置处理功能.2 数据储备器( RAM )片内为 256B,片外最多可扩展 64KB. 片内 128B 地RAM 以
12、高速 RAM 地势式集成在单片机内,可以加快单片机运行地速度,而且这种结构地RAM 仍可以降低功耗 .3 程序储备器( ROM )程序储备器用来储备程序.89C51 片内集成有 4KB 地Flash储备器,片外可外扩至64KB.4 中断系统5个中断源, 2级中断优先权 .5 定时器 /计数器片内有 3个16位地定时器 /计数器,具有 4种工作方式 .6 串行口1个全双工地串行口,具有4中工作方式 .可进行串行通信,扩展并行I/O ,甚至于多个单片机相连构成多级系统,从而使单片机地应用更广.7 P1口、 P2口、 P3口、 P0口4个8位并行 I/O 口.8 特别功能寄存器(SFR)共有 21个
13、特别功能寄存器,用于CPU 对片内各功能部件进行治理、掌握和监视.特别功能寄存器实际上是片内各个功能部件地掌握寄存器和状态寄存器,这些特别功能寄存器映射在片内 RAM 区 80HFFH 地地址区间内 .二、 AT89C51 单片机引脚功能说明如图 3.2所示:欢迎下载精品学习资源图 3.2 AT89C51 引脚图( 1)电源引脚VCC ( 40脚):接 +5V 电源GND ( 20脚):接地 .( 2)时钟引脚XTAL1 ( 19脚):片内振荡器反相放大器和时钟发生器电路地输入端. XTAL2 ( 18脚):片内振荡器反相放大器地输出端.( 3)掌握引脚RST( 9脚):复位信号输入端,高电平
14、有效.单片机运行时,在此引脚加上连续时间大于 2个机器周期地高电平常,就可以对单片机完成复位操作.EA /VPP( 31脚):当 EA 引脚为高电平常, 89C51 单片机读片内程序储备器,但在 PC值超过 8KB 时将自动转向外部程序储备器中地程序 . EA 为低电平常,对程序储备器地读操作只先顶着外部程序储备器 .( 4) I/O 口引脚P0口: 8位,漏极开路地双向 I/O 口.当89C51扩展外部储备器及 I/O 借口芯片时, P0口作为地址总线低 8位及数据总线地分时复用端口 .作为通用 I/O 口时需加上拉电阻,作为一般 I/O 口输入时应先向端口地输出锁存器写入 1.欢迎下载精品
15、学习资源P1口: 8位,准双向 I/O 口,具有内部上拉电阻.作为一般 I/O 输入时,先向端口输出锁存器写入 1.P2口: 8位,准双向 I/O 口,具有内部上拉电阻,作为一般I/O 输入时同上 .P3 口: 8 位,准双向 I/O 口,具有内部上拉电阻,作为一般I/O 输入时同上, P3 口仍可以供应其次功能,其其次功能定义如表3-1 所示:表 3.1 P3口其次功能引脚P3.0P3.1 P3.2其次功能RXD TXDP3.3 P3.4 P3.5 P3.6P3.7INT0 INT1 T0 T1WRRD说明串行数据输入口串行数据输出口外部中断 0输入外部中断 1输入定时器 0外部技术输入定时
16、器 1外部计数输入外部数据储备器写选通输出外部数据储备器读选通输出3.1.2 单片机最小系统整个系统地核心部件就是单片机,搭建一个稳固地单片机最小系统对于系统地正常工作是很重要地,这里单片机地最小系统包括晶振电路、复位电路.详细如图 3.3所示图 3.3 单片机最小系统其中有 4 个双向地 8 位并行 I/O 端口,分别记作 P0、P1、P2、P3,都可以用于数据地输出和输入, P3 口具有其次功能为系统供应一些掌握信号.时钟电路用于产生单片机工作所 必需地时钟掌握信号,内部电路在时钟信号地掌握下,严格地按时序指令工作.单片机内部欢迎下载精品学习资源有一个用于构成振荡器地高增益反向放大器,该高
17、增益反向放大器地输入端为芯片地引脚XTAL1 ,输出端为XTAL2. 这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳固地自激振荡器.电路中地微调电容通常挑选为22pF 左右,该电容地大小会影响到振荡器频率地高低、振荡器地稳固性和起振地快速性.本设计地晶体振荡频率采纳11.0592MHz10.单片机地复位是由外部地复位电路来实现,采纳最简洁地上电复位电路.当上电时,复位电路通过电容给RST 一个高电平,随着VCC 对电容充电地进行,高电平信号逐步衰弱. 高电平爱护在个机器周期以上,就CPU 就响应并将系统复位 .3.1.3 电源电路图 3.4 电源电路在这里设计了两种供电方式,一种是利用
18、运算机地USB 接口, USB 接口恰好能直接输出 5V 电压,能够满意单片机和其他电路地供电需求,这种方式相对来说简洁但是不是很便利,为了使设计更便利完善,增加了可手持性,即设计了其次种电源电路,如图3.4 地上部分所示,该电路主要由二极管和三段固定地稳压器件7805 组成,电源输入端可以接7 30v 地电压适配器或者是电池组,一般以12V 较为常见 .7805 有三个端子:输入端IN ,输出端 OUT 和公共端 COM. 输入端接整流滤波电路,输出端接负载,公共端接输入、输出地公共连接点 .其内部由采样、基准、放大、调整和爱护等电路组成.爱护电路具有过流、过要使整个系统正常地工作,电源电路
19、是必不行少地,电源电路要供应稳固地+5V电压,给整个多点测温系统供电.电源电路地实现方式如图3.4 所示欢迎下载精品学习资源热及短路爱护功能 .正常工作时,要求最低输入电压比输出电压3-4V ,仍要考虑输出与输入间压差带来地功率损耗,所以一般输入为9-15V之间.在图中, 1uF 电容 C8 为输入稳固电容,电容 C9 为输出稳固电容,可以起到改善负载地瞬态响应,也为1uF.同时在电路中加有开关仍发光二极管做指示灯,也使整个设计更完善11.3.2温度检测电路及 DS18B20测温原理3.2.1 DS18B20 介绍DS18B20 引脚和实物如图 3-5 所示.图 3-5 DS18B20地管脚排
20、列和实物DALLAS半导体公司地单线数字温度传感器DS18B20 是一种新型地 “一线器件 ”,其体积小、适用于多种场合.其温度测量范畴为-55 +125 C,可编程为9 位 12 位转换精度,测温辨论率可达0.0625 C.被测温度用符号扩展地16 位数字量方式串行输出.DS18B20 是世界上第一片支持 “一线总线 ”接口地温度传感器,即采纳单条信号线,既可以传输时钟,又可以传输数据,而且数据传输是双向地,因而这种单总线技术具有线路简洁,硬件开销少,成本低廉,便于总线扩展和爱护等优点.而且多个DS18B20 可以串联到一条数据线上,单片机只需一根端口线就能与诸多DS18B20 通信,提高了
21、 I/O 口地利用率,可节约大量地引线和规律电路 12.3.2.2 DS18B20 特性( 1)适应电压范畴宽: 3.0 V 5.5V ,在寄生电源方式下可由数据线供电.( 2 )特殊地单线接口方式,在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20 地双向通讯 .( 3) DS18B20 在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管地集成电路内 .欢迎下载精品学习资源( 4)测温范畴 55 125,在 -10 +85 时精度为 0.5.( 5)可编程地辨论率为912 位,对应地可辨论温度分别为0.5、 0.25、 0.125 和 0.0625,可实现高
22、精度测温 .( 6)在 9 位辨论率时最多在93.75ms 内把温度转换为数字,12 位辨论率时最多在750ms内把温度值转换为数字.( 7)测量结果直接输出数字温度信号,以“一线总线 ”串行传送给CPU,同时可传送CRC校验码,具有很强地抗干扰纠错才能.( 8)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作13.3.2.3 DS18B20内部结构( 1) DS18B20 地内部结构如图 3-6 所示 .图 3-6 DS18B20 内部结构图DS18B20 有 4 个主要地数据部件:( 1) 64 位激光 ROM.64 位激光 ROM 从高位到低位依次为8 位 CRC 、48
23、位序列号和 8 位家族代码 28H 组成 .( 2) 温度灵敏元件 .( 3) 非易失性温度报警触发器TH 和 TL. 可通过软件写入用户报警上下限值.( 4) 配置寄存器 .配置寄存器为高速暂存储备器中地第五个字节.DS18B20 在 0 工作时按此寄存器中地辨论率将温度转换成相应精度地数值,其各位定义如图3-7 所示.TMR1R011111MSBLSB欢迎下载精品学习资源图 3-7 DS18B20 配置寄存器结构图其中, TM :测试模式标志位,出厂时被写入0,不能转变; R0、R1:温度计辨论率设置位,其对应四种辨论率如表3-2 所列,出厂时 R0、R1 置为缺省值: R0=1, R1=
24、1 (即12 位辨论率),用户可依据需要改写配置寄存器以获得合适地辨论率.表 3-2 配置寄存器与辨论率关系表R0R1温度计辨论率/bit最大转换时间 /us00993.750110187.510113751112750( 2)高速暂存储备器高速暂存储备器由9 个字节组成,其安排如下图所示.当温度转换命令发布后,经转换所得地温度值以二字节补码形式存放在高速暂存储备器地第0 和第 1 个字节 .单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如图3-8 所示.对应地温度运算:当符号位 S=0 时,直接将二进制位转换为十进制;当S=1 时,先将补码变为原码,再运算十进制值 .温度
25、低位温度高位THTL配置保留保留保留8 位 CRC LSBMSB图 3-8 DS18B20 储备器映像图DS18B20 温度数据和典型对应地温度值如表3-3,表 3-4 所示:表 3-3 DS18B20 温度数据表:232221202-12-22-32-4MSBLSBSSSSS262524表 3-4 典型对应地温度值 :温度 /二进制表示十六进制表示欢迎下载精品学习资源+12500000111 1101000007D0H+25.062500000001 100100010191H+10.12500000000 1010001000A2H+0.500000000 000010000008H000
26、000000 000000000000H-0.511111111 11111000FFF8H-10.12511111111 01011110FF5EH-25.062511111110 01101111FE6FH-5511111100 10010000FC90H3-9:VCC=5VDS18BDS18BDS18BDS18B201#202#203#2020#3.2.4 DS18B20 电路设计DS18B20 最大地特点是单总线数据传输方式,DS18B20 地数据 I/O 均由同一条线来完成.硬件连接电路原理图如图4.7KAT89C511 WIRE图 3-9 DS18B20 硬件连接电路本系统为多点温
27、度测试.DS18B20 采纳外部供电方式,理论上可以在一根数据总线上挂 256 个 DS18B20 ,但实践应用中发觉,假如挂接25 个以上地 DS18B20 仍然有可能产生功耗问题 .另外单总线长度也不宜超过80M ,否就也会影响到数据地传输14.对 DS18B20 地设计,需要留意以下问题( 1)对硬件结构简洁地单线数字温度传感器DS18B20 进行操作,需要用较为复杂地程序完成 .编制程序时必需严格按芯片数据手册供应地有关操作次序进行,读、写时间片程序要严格按要求编写.特别在使用DS18B20 地高测温辨论力时,对时序及电气特性参数要求更欢迎下载精品学习资源高.( 2)有多个测温点时,应
28、考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以削减调试和爱护工作量.( 3)测温电缆线建议采纳屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接VCC 和地线,屏蔽层在源端单点接地.DS18B20 在三线制应用时,应将其三线焊接坚固;在两线应用时,应将 VCC 与GND 接在一起,焊接坚固 .如VCC 脱开未接,传感器只送85.0地温度值 .( 4)实际应用时,要留意单线地驱动才能,不能挂接过多地DS18B20 ,同时仍应留意最远接线距离 .另外仍应依据实际情形挑选其接线拓扑结构.本设计中,两片 DS18B20 芯片串接在单片机地P2.0 口,如图 3-10 所
29、示:图 3-10 DS18B20 连接图3.3 温度报警电路温度检测地更重要地意义是预警,即当温度超过安全界限时,能够提示人们,以提示人们实行相应地措施 .本设计地温度报警主要由蜂鸣器和发光二极管构成,蜂鸣器采纳 NPN 三极管驱动 .由于本设计需要测设两点地温度,所以,用不同颜色地发光二极管以示区分 .即当温度高于或低于设定地温度值时,蜂鸣器能够发生警报,同时,相对应地发光二极管发生光亮 .蜂鸣器接在单片机地 P1.0,发光二极管分别接在单片机地 P1.6 口和 P1.7 口,设计欢迎下载精品学习资源连接图如图 3-11 所示:图 3-11 温度报警电路3.4 温度显示电路显示部分可以用液晶
30、显示和数码管显示,由于要同时显示两点温度,这里采纳地液晶显示 LCD1602.LCD1602它是一种特地用来显示字母、数字、符号等地点阵型液晶模块.它由如干个 5x7 或者 5x11 等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距地间隔,每行之间也有间隔,起到了字符间距和行间距地作用.它地显示地内容为 16x2, 即可以显示两行,每行16 个字符 .1602 采纳标准地 16 脚接口,其引脚图如图3-12 所示 15,16 :图 3-12 LCD1602 引脚图其中:第 1 脚: VSS 为电源地欢迎下载精品学习资源第 2 脚: VCC 接 5V 电源正极第 3 脚:
31、V0 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影 ”,使用时可以通过一个10K 地电位器调整对比度).第 4 脚: RS 为寄存器挑选,高电平1 时挑选数据寄存器、低电平0 时挑选指令寄存器.第 5 脚: RW 为读写信号线,高电平1 时进行读操作,低电平0时进行写操作 .第 6 脚: E或 EN 端为使能 enable端,高电平( 1)时读取信息,负跳变时执行指令.第 7 14 脚: D0 D7 为 8 位双向数据端 .第 15 16 脚:空脚或背灯电源 .15 脚背光正极, 16 脚背光负极 .在本设计中, LCD1602 地数据 /命令
32、端 RS 管脚接单片机地 P2.4 口,读写端 RW 管脚接单片机地 P2.5 口,使能端EN 接单片机地 P2.6 端,数据段 D0-D7 接在单片机地P0 口,详细电路如图 3-13 所示:图 3-13 LCD1602 电路连接图在本电路中, LCD1602 地数据段 D0-D7 连接在单片机地P0 口,由于 P0 口是 8 位漏极开路地双向I/O 口,内部没有上拉电阻,是开漏地,不管它地驱动才能多大,相当于它是没有电源地,需要外部地电路供应.简洁一点说就是它要驱动LCD显示屏显示就必需要有电源驱动,否就亮不了,而恰好P0 口没有电源,所以就要外接电源,因此在PO 口接上了排阻 P1.在这
33、里, LCD1602 地 V0 管脚接了 4.7K 地电阻,液晶可以达到一个相对合适地亮度 .3.5 串口通信电路AT89C51 有一个全双工地串行通讯口,所以单片机和电脑之间可以便利地进行串口通欢迎下载精品学习资源讯.进行串行通讯时要满意肯定地条件,比如电脑地串口是RS232 电平地,而单片机地串口是 TTL 电平地,两者之间必需有一个电平转换电路,我们采纳了专用芯片MAX232 进行转换,虽然也可以用几个三极管进行模拟转换,但是仍是用专用芯片更简洁牢靠17.图 3-14 串口电路电路连接图我们采纳了三线制连接串口,也就是说和电脑地9 针串口只连接其中地3 根线:第5脚地 GND 、第 2
34、脚地 RXD 、第 3 脚地 TXD. 这是最简洁地连接方法,但是对本设计来说已经足够使用了,电路如上图所示.通信线采纳交叉接法,即两者信号线对应成为RT, TR.详细连接电路如图3-15:详细电路如图3-14:J111J2662 RXDRXD2773 TXDTXD388449955DB9 AT89C51DB9 PC图 3-15 单片机与PC 机串口连接图欢迎下载精品学习资源3.6 整体电路见附件一(电路原理图)4 软件设计4.1 概述整个系统地功能是由硬件电路协作软件来实现地,当硬件基本定型后,软件地功能也就基本定下来了.从软件地功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统
35、地核心,特地用来和谐各执行模块和操作者地关系.二是执行软件(子程序),它是 用来完成各种实质性地功能如测量、运算、显示、通讯等.每一个执行软件也就是一个小地 功能执行模块 .这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义. 各执行模块规划好后,就可以规划监控程序了.第一要依据系统地总体功能和键盘设置挑选一种最合适地监控程序结构,然后依据实时性地要求,合理地支配监控软件和各执行模块之间地调度关系.4.2 主程序方案主程序调用了4 个子程序,分别是温度测试程序、LCD1602温度显示程序、温度报警程序、单片机与PC 机串口通讯程序 .温度测试程序:对温度芯片送过来地数据进行处理
36、,运算和显示.LCD1602 温度显示程序:单片机向LCD1602 发送温度值,实时显示测量结果.温度报警:对温度值做出判定,当超出界限时,蜂鸣器发声报警,发光二级管发光.串口通讯程序:实现PC 机与单片机通讯,将温度数据传送给PC 机.将各个功能程序以子程序地势式写好,当写主程序地时候,只需要调用子程序,然后在寄存器地安排上作一下调整,排除寄存器冲突和I/O 冲突即可 .程序应当尽可能多地使用调用指令代替跳转指令.由于跳转指令使得程序难以看懂各程序段之间地结构关系.而调用指令就不同,调用指令使得程序结构清楚,无论是修改仍是爱护都比较便利.将功能程序段写成子程序地势式,除了便利调用之外,仍有一
37、个好处那就是以后写程序地时候假如要用到,就可以直接调用这个单元功能模块18,19.主程序流程图如图4-1:欢迎下载精品学习资源图 4.1 主程序流程图4.3 各模块子程序设计下面对主要几个子程序地流程图做介绍:( 1)温度测试子程序设计在设计中 ,在同一条数据线上挂接了两片DS18B20 芯片 ,程序通过读取每个芯片地序列号来识别 ,因此必需事先知道每片DS18B20 芯片地序列号 .我们可以程序猎取到每片DS18B20 芯片地序列号,并通过液晶显示出来.通过程序我们得到地两片DS18B20 地 64 位序列号分别为 20 :A: 28AB17D003000072 B: 28961AD0030
38、00039注:均为十六进制表示温度测试子程序流程图如图4-2 所示:欢迎下载精品学习资源开头初始化 DS18B20搜寻 ROM读并储备 DS18B20 地序列号Y存在一个DS18B20 ?N初始化 DS18B20跳过 ROM温度转换命令等待 1ms 转换命令终止初始化匹配 ROM 命令欢迎下载精品学习资源YN图4-2 温度测试子程序流程图( 2)温度显示子程序DS18B20读取地温度存在一个十六位地寄存器中,如表3-3 所示,其中前五位表示温度地正负,因此要对读取到地温度进行处理,得到十进制表示地温度值,再分别出温度值地百位,十位,各位,及小数位分别显示到液晶上.( 3)串口通信程序设计本次通
39、讯中,测控系统分位上位机和下位机之间地通信,系统中单片机负责数据采集、处理和掌握,上位机进行现场可视化检测,通信协议采纳半双工异步串行通信方式,通过 RS232 地 RTS 信号进行收发转换,传输数据采纳二进制数据,上位机与下位机之间采用主从式通讯 .本设计中,上位机主要利用串口调试助手接收从下位机发送来地温度数据,所以借助USB 就可完成 .假如利用串口线,仍需要其他软件搭建窗口界面.为了显示更加清楚,发送 数据为十进制地字符,因此在实际程序中,采纳每得到一个字符发送一次.串口通信显示温度仿真结果如图4-3 所示:欢迎下载精品学习资源图 4-3 串口通信显示温度如图 4-3 示,每两个数据为
40、一组数据,以“Fir和”“Sec区”分 .5 温度传感器调试最终地工作是制作实物,依据电路原理,制作出PCB 板,然后焊接实物.在实际制作 中,考虑到硬件电路不是很复杂,所以挑选用洞洞板自己焊接.焊接实物见附录三.PCB 图见附录二 .5.1 系统调试1、测试环境及工具测试温度: 0100 摄氏度 .(模拟多点不同温度值环境)测试仪器及软件:数字万用表,温度计0100 摄氏度,串口调试助手.测试方法:目测 .2、测试方法打开实物电源开关,观看系统硬件检测是否正常(包括单片机最小系统,键盘电路, 显示电路,温度测试电路等).采纳温度传感器和温度计同时测量多点环境温度变化情形(取温度值不同地多点)
41、,目测显示电路是否正常.并记录各点温度值,与实际温度值比欢迎下载精品学习资源较,得出系统地温度指标.使用串口调试助手与单片机通讯,观看单片机与串口之间传输数据正确否.3、测试结果分析自检正常,各点温度显示正常,串口传输数据正确.、调试过程中问题及解决实物焊接后,打开电源开关,发觉并未达到预期结果,液晶打开,但并未显示温度. 用万用表对各个模块进行检测,发觉电源电路是正常地,能过输出+5V 电压 .因此可能是单片机模块或者LCD模块显现问题 .对单片机模块地检测是通过编写简洁小程序,测量其管脚位置来判定地,经测量单片机模块也使正确地.因此确定是 LCD模块显现错误 .通过与电路原理图比对,找到连
42、接错误地引脚,重新正确焊接,显现预期地显示结果.、结论该设计能够正确地检测多点地环境温度,系统是稳固牢靠地,具有肯定有用意义.欢迎下载精品学习资源总结AT89C51 地时钟为 11.0592M , I/O 口可达 32 个,高地时钟频率和丰富地I/O ,都为实现电路功能供应了特别有利地条件.同时 AT89C51 内含 4KB FLASH ROM,开发环境友 好,易用,便利,大大加快本系统设计开发.实时显示电路地设计,使温度信息更快速,直 观地发布 .电源地设计是个亮点,本设计采纳两种供电方式可供挑选,其中其次种利用电池组或电源适配器供电,可以任凭在任何环境中工作,不用担忧供电问题,增加了使用地灵活性 .报警系统地存在,更是增显本设计地有用性.整个系统硬件简洁、牢靠,系统成本低.当然在设计地过程中也显现很多困难,特别是在焊接电路及最终调试过程中.当系统上电后,并没有显现预想地结果,通过对电路各个模块地检测以及与电路原理图地比对,最终一一解决了