基于单片机的温控检测系统设计.doc
《基于单片机的温控检测系统设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的温控检测系统设计.doc(27页珍藏版)》请在沃文网上搜索。
1、摘要:本设计单片机采用STC89C52芯片,数字温度传感器采用单总线器件DS18B20,与单片机组成一个测温系统,当系统上电时,温度传感器就会读出当前环境的温度,并在八位LED数模显示管上显示出当前的温度,该测温仪的测温范围为099,按此要求设计硬件和软件以实现这一功能。温度超出200-300摄氏度这个范围时候,报警器报警。 关键词:单片机STC89C52 温度传感器DS18B20 汇编语言 温度目录1 引言:32 总体设计方案:32.1 设计思路:32.2设计主元件电气性能:42.2.1 电源42.2.2 STC89C52的主要性能:42.2.3 DS18B20的主要性能82.2.4 74H
2、C573的主要性能102.2.5 蜂鸣器123 系统整体硬件电路124 设计原理分析:144.1 时钟电路的设计:144.2 控制电路的设计:154.3 计算温度子程序165 程序:17结束语:25参考文献:26谢辞27附录:实物图281 引言: 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。单片机渗透到我们生活的各个领域,在检测和控制系统中得到广泛的应用, 温度则是系统常需要测量、控制和保持的一个量。本设计具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,该设计控制器使用单片
3、机STC89C52,测温传感器使用DS18B20,用4位共阴极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。2 总体设计方案:2.1 设计思路:(1)本设计是测温电路,使用热敏电阻之类的器件利用其感温效应,将随被测温度变化的电压或电流采集,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。(2)从中考虑到用温度传感器,采用一只温度传感器DS18B20,很容易直接读取被测温度值,进行转换,就可以满足设计要求。采用方案(2),电路比较简单,软件设计也比较简单,故采用了方案(2)。 根据设计的所需
4、要求分析单片机的工作原理,可得出来温度计电路设计总体设计方框图如图1所示,控制器采用单片机STC89S52,温度传感器采用DS18B20,用4位LED数码管、蜂鸣器以串口传送数据实现温度显示。2.2设计主元件电气性能:2.2.1 电源 直接由外接USB接口提供5V直流电源。2.2.2 STC89C52的主要性能:1.主要性能特点 与MCS-51单片机产品兼容、8KFlash字节闪速存储器、1000次擦写周期、全静态操作:0Hz88Hz、32个可编程I/O口线、三个16位定时器/计数器、八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针。2.引脚
5、排列图2 引脚排列3.89C52单片机接口资源 VCC : 电源 GND: 地 P0 口:8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口: 具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部
6、拉低的引脚由于内部电阻,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表1所示。在flash编程和校验时,P1口接收低8位地址字节。 P2 口:具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在
7、这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。 表1 P1口功能 表2 P3口功能 P3 口:具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如上表2所示。在flash编程和校验时,P3口也接收一些控制信号。 R
8、ST: 复位输入。 ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。如果需要,通过将地址为8EH的SFR的第0位置 “1”,ALE操作将无效。这一位置 “1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。 PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当S
9、TC89C52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。 EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。4.存储器结构 程序存储器:如果EA引脚接地,程序读取只从外部存储器开始。对于89S52,如果EA 接VCC,程序读写先从内部存储器(地址为0000H1FFFH)开始
10、,接着从外部寻址,寻址地址为:2000HFFFFH。 数据存储器:STC89C52 有256 字节片内数据存储器。高128 字节与特殊功能寄存器重叠。5.晶振特性 如图2所示,STC89C52 单片机有一个用于构成内部振荡器的反相放大器,XTAL1 和XTAL2 分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器图3 自激振荡器原理图6.89C52单片机中断系统 89C52提供具有2个优先级的8个中断源。中断源,中断向量与中断优先级INTO-外部中断0请求。低电平有效。通过P32引脚输入。INT1-外部中断1请求。低电平有效。通过P33引脚输入。T0- 定时器计数器0
11、溢出中断请求。T1- 定时器计数器1溢出中断请求。T2- 定时器计数器2溢出中断请求。2.2.3 DS18B20的主要性能 本次设计使用到了由DALLAS半导体公司生产的DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器,可广泛用于工业、民用、军事等领域的温度测量及控制仪器、测控系统和大型设备中。它具有体积小、接口方便、高性能、抗干扰能力强、易配微处理器,可直接将温度转化成串行数字信号供处理器处理。 特性:l 适应电压范围宽3.05.5V ,在寄生电源方式下可由数据线供电;l 独特的单线接口方式,它与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通信
12、;l 在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;l 温度可测范围-55+125;l 可编程分辨率为912位,对应的可分辨温度为:0.5、0.25、0.125和0.0625;l 测量结果直接输出数字温度信号,以“一线总线”串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。引脚定义电源负极信号输入输出电源正极 图4 引脚定义图工作原理: 33H-读ROM。读DS18B20温度传感器ROM中的编码(即64位地址)。 55H-匹配ROM。发出此指令后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20并使之做出响应,为下一步
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 温控 检测 系统 设计
