ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:959.21KB ,
资源ID:3964846      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3964846.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的测温系统设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的测温系统设计.docx

1、基于单片机的测温系统设计毕业设计说明书论文题目基于单片机的测温系统设计学 号姓 名指导教师职称办 学 点教 学 班200 年 月 日2016年11月1日摘 要随着现代信息技术的飞速发展和传统工业改造的逐步实现,温度自动检测和显示系统在很多领域得到广泛应用。人们在温度检测的准确度、便捷、快速等方面有着越来越高的要求。而传统的温度传感器已经不能满足人们的需求,其渐渐被新型的温度传感器所代替。 本文设计并制作了一个简易温度计。本设计采用了单片机AT89S51和温度传感器DS18B20组成了温度自动测控系统,可根据实际需要任意设定温度值,并进行自动控制。在此设计中利用了AT89S51单片机作为主控制器

2、件,DS18B20作为测温传感器通过LED数码管串口传送数据,实现温度显示。通过DS18B20直接读取被测温度值,进行数据转换,能够设置温度上下限来设置报警温度。并且在到达报警温度后,系统会自动报警。本文设计是从测温电路、主控电路、报警电路等几个方面来分析说明的。该器件可直接向单片机传输数字信号,便于单片机处理及控制。另外,该温度计还能直接采用测温器件测量温度。从而简化数据传输与处理过程。此设计的优点主要体现在可操作性强,结构基础简单,拥有很大的扩展空间等。关键词:单片机; 温度传感器; 温度计; 报警;摘 要 1 2.1 数字温度计设计方案论证 2 2.1.1 方案一 2 2.1.2 方案二

3、 2 2.2 系统总体设计 2 2.3 系统模块 4 2.3.1 主控制器 4 2.3.2 显示电路 5 2.3.3 温度传感器 5 2.3.4 报警温度调整按键 6第3章 硬件设计 7 3.1测温和控制电路 7 3.2 显示控制电路 10 4.1 主程序流程图 13 4.2 读出温度子程序 14 4.3 温度转换命令子程序 14 4.4 计算温度子程序 14 4.5 显示数据刷新子程序 14 4.6 按键扫描处理子程序 15参考文献 19附录1 源程序 20第1章 概述1.1 课程设计的意义本次课程设计是在我们学过单片机后的一次实习,可增加我们的动手能力。特别是对单片机的系统设计有很大帮助。

4、本课程设计由两个人共同完成,在锻炼了自己的同时也增强了自己的团队意识和团队合作精神。1.2 设计的任务和要求1、基本范围-50-1102、精度误差小于 0.53、LED 数码直读显示4、可以任意设定温度的上下限报警功能 第2章 系统总体方案及硬件设计2.1 数字温度计设计方案论证2.1.1 方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行 A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到 A/D 转换电路,其中还涉及到电阻与温度的对应值的计算,感温电路比较麻烦。而且在对采集的

5、信号进行放大时容易受温度的影响出现较大的偏差。2.1.2 方案二进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器 DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,电路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系统的再扩展,满足设计要求。从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高,软件设计也比较简单,故采用了方案二。2.2 系统总体设计温度计电路设计总体设计方框图如图 2.2-1 所示,控制器采用单片机 AT89S51,温度传感器采用 DS18B20,用 3 位 LED

6、数码管以串口传送数据实现温度显示。图2.2-1 总体设计方框图图2.2-2 系统仿真图2.3 系统模块系统由单片机最小系统、显示电路、按键、温度传感器等组成。2.3.1 主控制器单片机 AT89S51 具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。晶振采用 12MHZ。复位电路采用上电加按钮复位。图2.3.1-1 晶振电路图2.3.1-2 复位电路2.3.2 显示电路显示电路采用 4 位共阴极 LED 数码管,P0 口由上拉电阻提高驱动能力,作为段码输出并作为数码管的驱动。P2 口的低四位作为数码管的位选端。采

7、用动态扫描的方式显示。图2.3.2 数码管显示电路2.3.3 温度传感器DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。DS18B20 的性能特点如下:1、独特的单线接口仅需要一个端口引脚进行通信;2、多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能3、无须外部器件;4、可通过数据线供电,电压范围为 3.05.5;5、零待机功耗;6、温度以或位数字;7、用户可定义报警设置;8、报警搜索命令识别并标志超过程序限定温度(温度报警条

8、件)的器件;9、负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20 可以采用两种方式供电,一种是采用电源供电方式,此时 DS18B20 的 1 脚接地,2 脚作为信号线,3 脚接电源。另一种是寄生电源供电方式,如图 4 所示单片机端口接单线总线,为保证在有效的 DS18B20 时钟周期内提供足够的电流,可用一个 MOSFET 管来完成对总线的上拉。当 DS18B20 处于写存储器操作和温度 A/D 转换操作时,总线上必须有强的上拉,上拉开启时间最大为 10us。采用寄生电源供电方式时 VDD 端接地。由于单线制只有一根线,因此发送接口必须是三态的。图2.3.3

9、温度传感器与单片机的连接2.3.4 报警温度调整按键本系统设计三个按键,采用查询方式,一个用于选择切换设置报警温度和当前温度,另外两个分别用于设置报警温度的加和减。均采用软件消抖。图2.3.4 按键电路第3章 硬件设计3.1测温和控制电路(1) 测温测温使用的DS18B20是典型的应用单总线技术的器件。独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感应用无需外部元件可用数据总线供电,电压范围为3.0 V至5.5 V无需备用电源测量温度范围为-55 C至+125 。华氏相当于是-67 F到257华氏度-10 C至+85 C范围内精度为0.5 C温度传感器可编程的分辨率为912位温

10、度转换为12位数字格式最大值为750毫秒用户可定义的非易失性温度报警设置应用范围包括恒温控制,工业系统,消费电子产品温度计,或任何热敏感系统描述该DS18B20的数字温度计提供9至12位(可编程设备温度读数。信息被发送到/从DS18B20通过1线接口,所以中央微处理器与DS18B20只有一个一条口线连接。为读写以及温度转换可以从数据线本身获得能量,不需要外接电源。因为每一个DS18B20的包含一个独特的序号,多个ds18b20s可以同时存在于一条总线。这使得温度传感器放置在许多不同的地方。它的用途很多,包括空调环境控制,感测建筑物内温设备或机器,并进行过程监测和控制。设备(主机或从机)通过一个

11、漏极开路或三态端口,连接至该数据线,这样允许设备在不发送数据时释放数据总线,以便总线被其它设备所使用。单总线端口为漏极开路,其内部等效电路如图1所示。单总线要求外接一个约5k的上拉电阻;这样,单总线的闲置状态为高电平。不管什么原因,如果传输过程需要暂时挂起,且要求传输过程还能够继续的话,则总线必须处于空闲状态。位传输之间的恢复时间没有限制,只要总线在恢复期间处于空闲状态(高电平)。如果总线保持低电平超过480s,总线上的所有器件将复位。另外,在寄生方式供电时,为了保证单总线器件在某些工作状态下(如温度转换期间、EEPROM写入等)具有足够的电源电流,必须在总线上提供强上拉1。(2) 控制AT8

12、9S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,

13、5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。主要功能特性: 兼容MCS-51指令系统 4k可反复擦写(1000次)ISP Flash ROM 32个双向I/O口 4.5-5.5V工作电压 2个16位可编程定时

14、/计数器 时钟频率0-33MHz 全双工UART串行中断口线 128x8bit内部RAM 2个外部中断源 低功耗空闲和省电模式 中断唤醒省电模式 3级加密位 看门狗(WDT)电路 软件设置空闲和省电功能 灵活的ISP字节和分页编程 双数据寄存器指针引脚功能说明 VCCT:电源电压 GND:地 P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口;作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或者程序存储器时,这组口线分时转换地址(低8位)和数据总线复用;在访问期间激活内部上拉电阻。在Flash编程时,P

15、0口接收指令字节,而在程序校验时,输出指令字节,校验时要求外接上拉电阻P1口:P1是一个带内部上拉电阻的8位双向I/O口;P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路,对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口;作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低会输出一个电流。 Flash编程和程序校验期间,P1接收低8位地址P2口:P2口是一个带有内部上拉电阻的8位双向I/O口;P2的输出缓冲级可驱动个(吸收或输出电流)4个TTL逻辑门电路,对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口;作输入口使用时,因为内部存在上拉电

16、阻,某个引脚被外部信号拉低会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX DPTR指令)时,P2口送出高8位地址数据;在访问8位地址的外部数据存储器(如执行MOVX RI)时,P2口线上的内容(即特殊功能寄存器(SFR)区中的R2寄存器的内容),在整个访问期间不改变;Flash编程或校验时,P2亦接收高位地址和其它控制信号。 P3口:P3口是一个带有内部上拉电阻的8位双向I/O口;P2的输出缓冲级可驱动个(吸收或输出电流)4个TTL逻辑门电路,对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口;作输入口使用时,因为内部存在上拉电阻,某个引脚被

17、外部信号拉低会输出一个电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能;如下表2-1所示: 表2.1端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2(外中断0)P3.3(外中断1)P3.4T0 (定时/计数器0)P3.5T1 (定时/计数器1)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入;当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于

18、锁存地址的低8位字节;即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的;要注意的是,每当访问外部数据存储器时将跳过一个ALE脉冲。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作,该位置位后,只有一条MOVX和MOVC指令ALE才会被激活,此外该引脚会被微弱拉高,单片机执行外部程序时,应该置ALE无效。EA/VPP:外部访问允许;欲使CPU仅访问外部程学存储器(地址为0000H FFFFH),EA端必须保持低电平(接地)。需要注意的是,如果加密位LB1被编程,复位时内部会锁存EA端的状态3。如E

19、A端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。Flash存储编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。XTML1:振荡器反相放大器的及内部时钟发生器的输入端。XTML2: 振荡器反相放大器的输出端。 图2.1测温和控制电路3.2 显示控制电路HD7279是一片具有串行接口的,可同时驱动8位共阴式数码管(或64只独立LED)的智能显示驱动芯片,该芯片同时还可联接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能。 HD7279A内部含有译码器,可直接接受BCD码或16进制码,并同时具有2种译码方式,此外,还具有多

20、种控制命令,如消隐、闪烁、左移、右移、段寻址等。 HD7279A具有片选信号,可方便地实现多于8位的显示或多于64键的键盘接口。 HD7279与单片机仅需4条接口线,其中CS为片选信号。当MCU访问HD7279时,应将片选端置为低电平。DATA为串行数据/输出端,当向HD7279发送数据时,DATA为输入端;当HD7279A输出键盘代码时,DATA为输出端。其特点为:-串行接口,无需外围元件可直接驱动LED-各位独立控制译码/不译码及消隐和闪烁属性-(循环)左移/(循环)右移指令-具有段寻址指令,方便控制独立LED-64键键盘控制器,内含去抖动电路-有DIP和SOIC两种封装形式供选择图2.2

21、显示控制电路3.3 声光报警电路555集成定时器是一种模拟和数字电路相混合的集成电路。它结构简单,使用灵活,用途十分广泛,可以组成多种波形发生器、多谐振荡器、定时延时电路、双稳触发电路、报警电路、检测电路、频率变换电路等。555含有两个比较器A1、A2,其中5端为电压控制端,通过外接一个参考电源,可以改变上、下触发电位值,不用时,可通过一个0.01F旁路电容接地。4端为触发器复位端,不用时应接高电平。总之,555相当于一个可用模拟电压来控制翻转的R-S触发器。图2.5就是用555构成的多谐振荡电路,产生的振荡脉冲信号经过三极管放大后驱动扬声器报警,由单片机的P1.5端口输出高电平发出报警。55

22、5定时器的电路原理图及管脚排列图分别如图2.3和2.4所示。 图2.5 报警电路第4章 系统软件算法分析系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序,按键扫描处理子程序等。4.1 主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理 DS18B20 的测量的当前温度值,温度测量每 1s 进行一次。这样可以在一秒之内测量一次被测温度,其程序流程见图 3.1 所示。图3.1 主程序流程图4.2 读出温度子程序读出温度子程序的主要功能是读出 RAM 中的 9 字节,在读出时需进行 CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图

23、 3.2 示4.3 温度转换命令子程序温度转换命令子程序主要是发温度转换开始命令,当采用 12 位分辨率时转换时间约为750ms,在本程序设计中采用 1s 显示程序延时法等待转换的完成。温度转换命令子程序流程图如上图,图 3.3 所示图3.2 读温度流程图4.4 计算温度子程序计算温度子程序将 RAM 中读取值进行 BCD 码的转换运算,并进行温度值正负的判定,其程序流程图如图 3.4 所示。4.5 显示数据刷新子程序显示数据刷新子程序主要是对分离后的温度显示数据进行刷新操作,当标志位位为 1时将符号显示位移入第一位。程序流程图如图 3.5。图3.4 计算温度流程图 图3.5 显示数据刷新流程

24、图4.6 按键扫描处理子程序按键采用扫描查询方式,设置标志位,当标志位为 1 时,显示设置温度,否则显示当前温度。如下图 3.6 示。图3.6 按键扫描处理子程序第5章 实验仿真进入 protuse 后,连接好电路,并将程序下载进去。将 DS18B20 的改为 0.1,数码管显示温度与传感器的温度相同。图4-1 温度显示仿真当按下 SET 键一次时,进入温度报警上线调节,此时显示软件设置的温度报警上线,按 ADD或 DEC 分别对报警温度进行加一或减一。当再次按下 SET 键时,进入温度报警下线调节,此时显示软件设置的温度报警下线,按 ADD或 DEC 分别对报警温度进行加一或减一图4-2 温

25、度调试仿真当第三次按下 SET 键时,退出温度报警线设置。显示当前温度。 总结通过本次课程设计,我掌握了很多实践知识,并在老师和同学们的帮助下对单片机的原理及应用有了进一步的了解和认识,也对温度报警器的工作原理有了进一步的掌握。本次课程设计使我深深的懂得了理论与实际相结合的重要性,二者缺一不可,只有把所学的理论知识与实践两者结合起来,从实践中得出结论,才能对自己的动手能力和思考能力有所提高。整个设计过程并不顺利,其中很多知识已经淡忘,还有很多新的东西没能及时掌握,所以在本次设计过程中不断地学习、复习,受益匪浅,也使我对单片机的运用有了进一步的了解和掌握,也为今后的学习生活和工作打下良好的基础。

26、参考文献1 单片机典型外围器件及应用实例 北京 人民邮电出版社, 2006 2 张友德,赵志英,徐时亮.单片微机原理应用与实验M.上海:复旦大学出版社,2000.3 蔡美琴,张为民,沈新群,张荣娟.MCS-51系列单片机系统及其应用M.北京:高等教育出版社,1992.附录1源程序数字温度计程序清单S1OK EQU 5FHTEMPUTER EQU 39H TEMPH EQU 5EH TEMPLEQU 5DH MS50 EQU 5CHSIGN EQU 5BH S1 BIT P1.0 S2 BIT P1.1 S3 BIT P1.2 S4 BIT P1.3 ORG 0000H LJMP MAIN OR

27、G 000BH LJMP TOIT ORG 0030HMAIN: MOV SP, #60H MOV TMOD, #01H MOV TH0, #3CH MOV TL0, #0B0H SETB ET0 SETB TR0 SETB EA MOV TEMPH, #30 MOV TEMPL, #9 MOV TEMPUTER, #15 ;温度最始值 MOV S1OK, #00H MOV SIGN, #00HMOV 38H, #0BH MOV 37H, #0CH MOV 36H, #0BH ACALL DISP ACALL T1S; 主程序START: JB S1, NET1 ACALL T12MS JB

28、S1, NET1 JNB S1, $ INC SIGN MOV A, SIGN CJNE A, #1, TIAO ACALL TIAOTL TIAO:CJNE A, #2, NET1 MOV SIGN, #0 ACALL TIAOTH; NET1: MOV A, S1OK CJNE A, #1, START MOV A, TEMPUTER SUBB A, TEMPH JNB ACC.7, ALEM MOV A, TEMPUTER SUBB A, TEMPL JB ACC.7, ALEM SETB P2.1 ACALL WENDU ACALL DISP MOV S1OK, #00H AJMP S

29、TART ALEM: MOV 36H, #0CH MOV 37H, #0CH MOV 38H, #0CH CLR P2.1 ACALL DISP ACALL T1S LCALL WENDU LCALL DISP MOV S1OK, #00H SJMP STARTTIAOTL:MOV 50H, TEMPUTER MOV 37H, TEMPL ACALL BIN_BCD ACALL DISP ACALL T12MS ACALL T12MS ACALL T12MS ACALL T12MS MOV 36H, #0AH MOV 37H, #0AH MOV 38H, #0AH ACALL DISP ACA

30、LL T12MS ACALL T12MS ACALL T12MS ACALL T12MS JB S2, ADD1 ACALL T12MS JB S2, ADD1 JNB S2, $ INC TEMPL MOV A, TEMPL CJNE A, #100, ADD1 MOV TEMPL, #0 ADD1: JB S3, ADD ACALL T12MS JB S3, ADD2 JNB S3, $ DEC TEMPL MOV A, TEMPL CJNE A, #00 , ADD2 MOV TEMPL,#100 ADD2: JB S4, TIAOTL ACALL T12MS JB S4, TIAOTL JNB S4, $ MOV TEMPUTER, 50H LJMP START; 高位调整:TIAOTH:MOV 50H, TEMPUTER MOV 37H, TEMPH ACALL BIN_BCD ACALL DISP

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1