2022年简易数字温度计单片机设计方案.docx

上传人:H****o 文档编号:58172557 上传时间:2022-11-07 格式:DOCX 页数:63 大小:1.04MB
返回 下载 相关 举报
2022年简易数字温度计单片机设计方案.docx_第1页
第1页 / 共63页
2022年简易数字温度计单片机设计方案.docx_第2页
第2页 / 共63页
点击查看更多>>
资源描述

《2022年简易数字温度计单片机设计方案.docx》由会员分享,可在线阅读,更多相关《2022年简易数字温度计单片机设计方案.docx(63页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选学习资料 - - - - - - - - - 单片微机原理及应用课程设计任务书一、设计题目、内容及要求设计题目: 简易数字温度计设计内容 :1)可以测量 -50到100摄氏度内的温度2)用液晶显示温度,精确到小数点后两位;2)测量误差在 0.5摄氏度以内;设计要求:1)依据任务要求设计硬件电路;2)设计电路原理图、仿真结果电路图;3)画出程序流程图,编写程序;4)书写设计说明书;二、设计原始资料1 李群芳,肖看 .单片机原理、接口及应用.清华高校出版社,2005.3 2Proteus 软件, Wave/Keil 软件三、要求的设计成果 课程设计说明书、设计实物、图纸等)设计结果能正确仿真演

2、示;课程设计说明书一份 包括总体设计、方案论证、硬件电路、系统程序流程图、程序清单)四、进程支配周一 查阅资料,设计电路原理图、编写程序周二 利用 proteus 完成硬件电路绘制周三 程序调试周四 书写课程设计说明书周五课程设计答辩五、主要参考资料1 何利民 .单片机中级教程.机械工业出版社,2002.4 2 丁元杰 .单片微机原理及应用其次版) .机械工业出版社,2005.2 3 张有德,赵志英 .单片微型机原理、应用于试验.复旦高校出版社,2000.4指导老师 签名):教研室主任 签名):0 / 34 名师归纳总结 - - - - - - -第 1 页,共 34 页精选学习资料 - -

3、- - - - - - - 目 录1 引言 1 2 开发和仿真软件简介 2 2.1 开发软件 Keil C51 uVision22 2.2 仿真软件 Proteus ISIS3 3 总体设计方案论证 5 3.1 开发方案举例 5 3.1.1 热敏电阻 5 3.1.2 数字温度芯片 DS16215 3.2 数据通信技术 6 4 系统各部分电路的挑选和设计 7 4.1 系统的工作原理 7 4.2 AT89C51简介7 4.2.1 概述 7 4.2.2 AT89C51引脚功能 8 4.2.3 复位电路的设计 9 4.3数字温度传感器 10 4.3.1 DS1621的技术指标 10 4.3.2 DS1

4、621的工作原理 11 4.4 单片机和 DS1621接口电路 11 4.5 七段LED数码显示电路 12 5 系统软件设计 14 5.1 编程语言挑选 14 5.2 主程序的设计 14 5.3 温度采集模块设计 15 5.4 温度运算模块设计 15 5.5 串行总线编程 16 6 软硬件调试结果分析 17 7 总结 18 参考文献 19 附录 A 多点温度采集系统电路原理图 20 附录 B C 语言源代码 211 / 34 名师归纳总结 - - - - - - -第 2 页,共 34 页精选学习资料 - - - - - - - - - 1 引言随着人们生活水平的不断提高,单片机掌握无疑是人们

5、追求的目标之一,它所给人带来的便利也是不行否定的,其中数字温度计就是一个典型的例子,但人们对它的要 求越来越高,要为现代人工作、科研、生活、供应更好的更便利的设施就需要从数单 片机技术入手,一切向着数字化掌握,智能化掌握方向进展;在信息采集 传感器技 术)、信息传输 通信技术)和信息处理 运算机技术)三大信息技术中,传感器属于 信息技术的前沿尖端产品,特殊是温度传感器技术,在我国各领域已经引用的特别广 泛,可以说是渗透到社会的每一个领域,人民的生活与环境的温度息息相关,在工业 生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此讨论温度的 测量方法和装置具有重要的意义;测量温度的关

6、键是温度传感器,温度传感器的进展经受了三个进展阶段:传统 的分立式温度传感器,模拟集成温度传感器,智能集成温度传感器;目前的智能温度传感器 亦称数字温度传感器)是在20世纪90岁月中期问世的,它是微电子技术、运算机技术和自动测试技术 ATE)的结晶,特点是能输出温度数据及相关的温度掌握量,适配各种微掌握器 MCU );社会的进展使人们对传感器的要求也越来越高,现在的温度传感器正在基于单片机的基础上从模拟式向数字式,从集成化向智能化、网络化的方向飞速进展,并朝着高精度、多功能、总线标准化、高牢靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向快速进展;本次课程设计的内容是开

7、发一个基于AT89C51单片机的测温系统,并采纳了数字温度传感器 DS1621和 串行总线通信系统,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了具体讨论,对各部分的电路也一一进行了设计,该系统可以便利的实现对三路温度的采集、传输、处理和显示,并可设定上下限报警 温度;它使用起来相当便利,具有精度高、量程宽、灵敏度高、体积小、功耗低等优 点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌 入其它系统中,作为其他主系统的帮助扩展;本次课程设计,利用 Keil 和Proteus软件设计和仿真该智能数字多点测温系统;过程 中所用到的主要电路由我们自主设计制

8、作,通过查阅资料和借助指导老师最终设计出 结构合理、美观,主要电气指标良好,性能稳固牢靠的电路;以培育我们严谨的科学 态度,正确的设计思想,科学的设计方法和良好的工作作风,把握肯定的专业技能及 综合运用基础理论、基本学问的才能;1 / 34 名师归纳总结 - - - - - - -第 3 页,共 34 页精选学习资料 - - - - - - - - - 2 开发和仿真软件简介2.1 开发软件 Keil C51 uVision2 Keil uVISION2 是众多单片机应用开发软件中优秀的软件之一,它支持众多不同公司的 MCS-51 架构的芯片,它集编辑,编译,仿真等于一体,同时仍支持、PLM、

9、汇编和 C语言的程序设计,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能;Keil C51集成开发环境主要由菜单栏、工具栏、源文件编辑窗口、工程窗口和输出窗口五部 分组成;工具栏为一组快捷工具图标,主要包括基本文件工具栏、建造工具栏和调试 工具栏,基本文件工具栏包括新建、打开、拷贝、粘贴等基本操作;建造工具栏主要 包括文件编译、目标文件编译连接、全部目标文件编译连接、目标选项和一个目标选 择窗口;调试工具栏位于最终,主要包括一些仿真调试源程序的基本操作,如单步、复位、全速运行等;在工具栏下面,默认有三个窗口;左边的工程窗口包含一个工程 的目标 target)、组 group)和工

10、程文件;右边为源文件编辑窗口,编辑窗口实质上就 是一个文件编辑器,我们可以在这里对源文件进行编辑、修改、粘贴等;下边的为输 出窗口,源文件编译之后的结果显示在输出窗口中,会显现通过或错误 包括错误类型及行号)的提示;假如通过就会生成 基本环境如图 2-1所示:“ HEX” 格式的目标文件,用于仿真或烧录芯片;名师归纳总结 图 2-1 Keil C51 2 / 34 软件的运行界面第 4 页,共 34 页- - - - - - -精选学习资料 - - - - - - - - - MCS-51单片机软件 Keil C51开发过程为:建立一个工程工程,挑选芯片,确定选项;建立汇编源文件或 C源文件;

11、用工程治理器生成各种应用文件;检查并修改源文件中的错误;编译连接通过后进行软件模拟仿真或硬件在线仿真;2.2 仿真软件 Proteus ISIS Proteus软件是来自英国 Labcenter electronics公司的 EDA 工具软件;该软件有十几年的历史,在全球广泛使用,除了其具 有和其它 EDA 工具一样的原理布图、 PCB自动或人工布线及电路仿真的功能外,其革 命性的功能是,他的电路仿真是互动的,针对微处理器的应用,仍可以直接在基于原 理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,仍能看到 运行后输入输出的成效,协作系统配置的虚拟仪器如示波器、规律分析仪等,为

12、用户 建立了完备的电子设计开发环境;Proteus ISIS的工作界面是一种标准的 Windows界面;主要包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象挑选按钮、预览对象方位掌握按钮、仿真进程掌握按钮、预览窗口、对象挑选器窗口、图形编辑窗口;主要功能是在图形编辑窗口做出所需的电路图;软件的应用设计界面如图 2-2所示:名师归纳总结 图 2-2 Proteus软件的运行界面第 5 页,共 34 页- - - - - - -精选学习资料 - - - - - - - - - Proteus仍供应了诸多资源,如下所述:Proteus可供应的仿真元器件资源:仿真数字和模拟、沟通和直流等数千

13、种元器 件,有 30多个元件库;Proteus可供应的仿真外表资源:示波器、规律分析仪、虚拟终端、SPI调试器、信号发生器、模式发生器、交直流电压表、交直流电流表;理论上同一种仪器可以在一个电路中随便的调用;除了现实存在的仪器外,Proteus仍供应了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相像,但功能更多;这些 虚拟仪器外表具有抱负的参数指标,例如极高的输入阻抗、极低的输出阻抗;这些都 尽可能削减了仪器对测量结果的影响;Proteus可供应的调试手段 Proteus供应了比较丰富的测试信号用于电路的测试;这些测试信号包括模拟信号和数字信号;4 /

14、34 名师归纳总结 - - - - - - -第 6 页,共 34 页精选学习资料 - - - - - - - - - 3 总体设计方案论证3.1 开发方案举例该系统主要由温度测量和数据采集两部分电路组成,实现的方法有很多种,下面将列出两种在日常生活中和工农业生产中常常用到的实现方案;3.1.1 热敏电阻由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到 A/D 转换电路,感温电路比较麻烦;热敏电阻的外观如图 3-1所示;图 3-1 热

15、敏电阻外观图3.1.2 数字温度芯片 DS1621 采纳数字温度芯片 DS1621 测量温度,输出信号全数字化;便于单片机处理及掌握,省去传统的测温方法的很多外围电路;且该芯片的物理化学性很稳固,它能用做工业测温元件,此元件线形较好;在 0100摄氏度时,最大线形偏差小于 1摄氏度; DS1621 5 / 34 名师归纳总结 - - - - - - -第 7 页,共 34 页精选学习资料 - - - - - - - - - 的最大特点之一采纳了单总线的数据传输,由数字温度计DS1621和微掌握器 AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与运算机连接;这样,测 温系统的

16、结构就比较简洁,体积也不大;采纳 51 单片机掌握,软件编程的自由度大,可通过编程实现各种各样的算术算法和规律掌握,而且体积小,硬件实现简洁,安装便利;掌握工作,仍可以与 PC 机通信上传数据,另外 AT89S51 在工业掌握上也有着广泛的应用,编程技术及外围功能电路的协作使用都很成熟;该系统利用 AT89C51芯片掌握温度传感器 DS1621进行实时温度检测并显示,能够 实现快速测量环境温度,并可以依据需要设定上下限报警温度;该系统扩展性特别强,它可以在设计中加入时钟芯片DS1302以猎取时间数据,在数据处理同时显示时间,并可以利用 AT24C16芯片作为储备器件,以此来对某些时间点的温度数

17、据进行储备,利用键盘来进行调时和温度查询,获得的数据可以通过 接口进行串口通信,便利的采集和整理时间温度数据;MAX232 芯片与运算机的 RS232从以上两种方案,很简洁看出,采纳方案二,电路比较简洁,软件设计也比较简单,故采纳了方案二;测温电路的总体设计方框图如图 3-2所示,掌握器采纳单片机 AT89C51,温度传感器采纳 DS1621,用 5位LED数码管以串 口传送数据实现温度显示;图 3-2 测温电路的总体设计方框图3.2 数据通信技术目前,常用的微机和外设之间数据传输的串行总线有 I 2C总线、 SPI总线等,其中,I 2C总线采纳同步串行双线 一根时钟线,一根数据线)方式,而

18、SPI总线采纳同步串行 三线 时钟线,输入线,数据输入线)方式;这两种总线需要至少两根或两根以上的信 号线; I 2C是PHILIPS公司推出的一种串行总线;它是目前使用较广泛的芯片间的串行6 / 34 名师归纳总结 - - - - - - -第 8 页,共 34 页精选学习资料 - - - - - - - - - 扩展总线;该总线用两条连线实现全双工同步数据传送;它可以使具有I2C总线的单片机直接与具有 I 2C总线接口的各种扩展器件连接;本次课程设计就采纳这种通信方式;美国达拉斯半导体公司推出了一项特有的单线技术;该技术于上述总线不同,它采纳单根信号线,即可传输时钟,又能传输数据,而且数据

19、传输时是双向的,因而这种单线技术具有线路简洁,硬件开销少,成本低廉,便于扩展的优点;4 系统各部分电路的挑选和设计4.1 系统的工作原理本温度数据采集系统的主要功能是测量温度,并显示温度测量结果,并附带了单片机和 PC机之间通讯接口;系统结构包括单片机部分、温度传感器、显示电路、通讯接口电路等几个部分;图 4-1为系统的总体结构框图;图 4-1 测温系统的总体结构框图系统工作原理是:电路在上电后,最先单片机利用模拟总线I2C对DS1621进行寻址,单片机在接收到 DS1621应答后,单片机将设置 /状态寄存器的值通过 I2C总线写入该寄存器,之后 DS1621在单片机掌握下进行温度测量,然后D

20、S1621把所采集的温度 50摄氏度 100摄氏度,精度为 0.5摄氏度)传输给单片机,最终单片机把温度数据送 到LED上显示;系统中附带的串行接口以供备用;系统具体的电路原理图可见附录部分;4.2 AT89C51 简介4.2.1 概述对于单片机的挑选,可以考虑使用8031与8051系列,由于 8031没有内部 RAM ,系7 / 34 名师归纳总结 - - - - - - -第 9 页,共 34 页精选学习资料 - - - - - - - - - 统又需要大量内存储备数据,因而不适用;所以,我们选用51系列单片机 AT89C51;AT89C51是美国 ATMEL 公司生产的低功耗,高性能 C

21、MOS8位单片机,片内含 4KB 的可 编程的 Flash只读程序储备器,兼容标准 8051指令系统及引脚,并集成了 Flash 程序储备器,既可在线编程 ISP),也可用传统方法进行编程,因此,低价位 AT89C51单片机可应用于很多高性价比的场合,可敏捷应用于各种掌握领域,对于简洁的测温 系统已经足够;单片机 AT89C51具有低电压供电和体积小等特点,四个端口只需要两 个口就能满意电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电; AT89C51的主要特性如下:与MCS-51 兼容;4K字节可编程闪耀储备器;三级程序储备器锁定;1288位内部 RAM ;32根可编程

22、 I/O线;两个 16位定时器 /计数器;5个中断源;可编程串行通道;片内振荡器和时钟电路;4.2.2 AT89C51 引脚功能单片机芯片 AT89C51为40引脚双列直插式 封装;其各个引脚功能介绍如下,芯片 AT89C 51的引脚排列和规律符号如图 4-2 所示;各引脚分别为:VCC:供电电压 GND:接地 P0口 P0口为一个 8位漏级开路双向 I/O口,每个 管脚可吸取 8TTL门电流;当 P1口的管脚写 1时,被定义为高阻输入; P0能够用于外部程序数 据储备器,它可以被定义为数据 /地址的第八 位;在 FLASH 编程时, P0口作为原码输入口,当 FLASH 进行校验时, P0输

23、出原码,此时 P 0外部电位必需被拉高;P1口8 / 34 名师归纳总结 - - - - - - -第 10 页,共 34 页精选学习资料 - - - - - - - - - P1口是一个内部供应上拉电阻的8位双向 I/O口,P1口缓冲器能接收输出 4TTL 门电流P1口管脚写入 ” 1”后,电位被内部上拉为高可用作输入,P1口被外部下拉为低电平常,将输出电流,这是由于内部上拉的缘故;在 地址接收;P2口FLASH 编程和校验时, P1口作为第八位P2口为一个内部上拉电阻的 8位双向 I/O口,P2口缓冲器可接收,输出 4个TTL 门电 流 图 4-2 AT89C51 的引脚排列图当P2口被写

24、 ” 1”时,其管脚电位被内部上拉电阻拉高,且作为输入;作为输入时 P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故;P2口当用于外部程序储备器或 16位地址外部数据储备器进行存取时,P2口输出地址的高八位;在给出地址” 1”时,它利用内部上拉的优势,当对外部八位地址数据储备器进行读写时,P2口输出其特殊功能寄存器的内容;信号;P3口P2口在FLASH 编程和校验时接收高八位地址信号和掌握P3口管脚是 8个带内部上拉电阻的双向 I/O口,可接收输出 4个TTL 门电流;当 P3口写入 ” 1”后,它们被内部上拉为高电平,并用作输入;作为输入时,由于外部下拉为低电平, P3口将输出

25、电流 ILL ),也是由于上拉的缘故;P3口也可作为 AT89C51的一些特殊功能口,同时 P3口同时为闪耀编程和编程校验接收一些掌握信号;RST:复位输入端;当振荡器复位时,要保持 PSEN RST两个机器周期的高电平常间;外部程序储备器的选通信号;在由外部程序储备器取址期间,每个机器周期 PSEN两次有效;但在拜访外部数据储备器时,这两次有效的 EA/VPP PSEN信号将不显现;当EA保持低电平常,拜访外部 ROM;留意加密方式 1时, EA将内部锁定为 RESET;当 EA端保持高电平常,拜访内部ROM;在 FLASH 编程期间,此引脚也用于施加12V编程电源 VPP);4.2.3 复

26、位电路的设计单片机的复位电路如图 4-3所示;该复位电路采纳手动复位与上电复位相结合的方式;当按下按键 S1时,VCC通过R2电阻给复位输入端口一个高电平,实现复位功能,即手动复位;上电复位就是 VCC通过电阻 R2和电容 C构成回路,该回路是一个对电容C1充电和放电的电路,所以复位端口得到一个周期性变化的电压值,并且有肯定时间的电压值高于 CPU复位电压,实现上电复位功能;9 / 34 名师归纳总结 - - - - - - -第 11 页,共 34 页精选学习资料 - - - - - - - - - 图 4-3 单片机的复位电路4.3 数字温度传感器4.3.1 DS1621 的技术指标DS1

27、621是美国 DALLAS 公司生产的一种功能较强的数字式温度传感器和恒温掌握器;数字接口电路简洁,与I2C总线兼容,且可以使用一片掌握器掌握多达8片的 DS1621;其数字温度输出达 9位,精度为 0.5摄氏度; DS1621可工作在最低 2.7V电压下,适用于低功耗应用系统;DS1621的引脚排列图如图 4-4所示,引脚功能描述如表 4-1所示;图 4-4 DS1621 的引脚排列图表 4-1 DS1621 的引脚功能表引脚符号功能描述1 SDA 2线I2C 串行数据输入 /输出2 SCL 2线 I2C 串行时钟端10 / 34 名师归纳总结 - - - - - - -第 12 页,共 3

28、4 页精选学习资料 - - - - - - - - - 3 TOUT温度上下限超出输出4 GND 地5 A2A0 片选地址输入 A2 A0 6 V DD电源端 +2.75.5V)4.3.2 DS1621 的工作原理斜坡累加电路重预置计重预置电路比较器温度低敏锐振荡器数温度寄存器温度低敏锐振荡器 计数器=0 图 4-5 DS1621 的构成原理框图DS1621的构成原理框图如图 4-5所示,在测量温度时使用了独有的在线温度测量技术;它通过在一个由对温度高度敏感的振荡器打算的计数周期内对温度低敏锐的振荡器时钟脉冲的计数值的运算来测量温度; DS1621在计数器中预置了一个初值,它相当于50摄氏度;

29、假如计数周期终止之前计数器达到 0,已预置了此初值的温度寄存器中的数字就会增加,从而说明温度高 于 55摄氏度;与此同时,计数器斜坡累加电路被重新预置一个值,然后计数重视新对时钟计数,直到计数值为0;通过转变增加的每 1内的计数器的计数,斜坡累加电路 11 / 34 名师归纳总结 - - - - - - -第 13 页,共 34 页精选学习资料 - - - - - - - - - 可以补偿振荡器的非线性误差,以提高精度,任意温度下计数器的值和每一斜坡累加电路的值对应的计数次数须为已知;DS1621通过运算可以得到 0. 5摄氏度的精度,温度输出为9位,在发出读温度值恳求后仍会输出两位补偿值;表

30、2给出了所测的温度和输出数据的关系;这些数据可通过,LSB在后;4.4 单片机和 DS1621接口电路2线制串行口连续输出, MSB在前前面已经介绍了 DS1621温度传感器以 8位数字输出,数据输出与 I 2C总线兼容,可以便利地通过 SDA,SCL以串行方式与单片机相连;而 AT89C51面对主 /从功能字节的 I 2C总线串行 I/O口,所以多路温度数字量可以通过 I 2C总线直接送 GAS97C2051单片机;I 2C总线Inter IC BUS)是Philips公司推出的双向两线串行通信标准;由于它具有接口少、通信效率高等优点,现已得到广泛的应用I2C总线是一种串行的数据总线,挂在总

31、线上的各集成电路模块 单片机和具有各种功能的电路芯片)通过一条串行的数据线SDA)和一条串行的时钟线 SCL),按肯定的通信协议进行寻址和信息的传输;每个电路模块都有唯独的地址,在信息的传输过程中,I2C总线上的电路模块有的是主控器,有的是被控器,主控器和被控器都可以是发送器或接收器,这完全取决于它所要完成的功能;采纳 I 2C总线可最大限度地简化电路结构,实现电路的模块化、标准化设计;I 2C总线在进行数据传输时,由作为主控器的AT89C51来初始化一次数据的传输,并在 I 2C总线上供应时钟进行传送;信息传送的对象、方向和传送的开头、终止也由主控器 AT89C51)来打算;此时,在 I2C

32、总线上被主控器所寻址的集成电路模块称为被控器DS162);在 I 2C总线上,数据由发送器传出,并被接收器接收,接收器在每次正确接收到一个数据字节后,都要在数据总线 因单片机 AT89C51本身SDA)上给发送器一个应答信号;没有 I 2C硬件资源,所以必需用软件来模拟 I 2C总线,本系统利用单片机 AT89C51的P3.0和P3.1引脚分别作 I 2C总线的数据线和时钟线 见附录 A);AT89C51模拟 I 2C总线主要由软件设置来实现其功能;4.5 七段 LED数码显示电路采纳七段 LED数码显示, LED显示器内部由 7段发光二极管组成,因此亦称之为七段LED显示器,由于主要用于显示

33、各种数字符号,故又称之为 器仍有一个圆点型发光二极管,用于显示小数点;在单片机LED数码管;每个显示 AT89C51接收到 DS1621所采集的温度数据后,单片机把所读到的数据送给数码管显示;系统具体的显示电路如 12 / 34 名师归纳总结 - - - - - - -第 14 页,共 34 页精选学习资料 - - - - - - - - - 图4-6所示;图 4-6 七段 LED数码管显示电路显示电路中单片机 AT89C51的P0口直接驱动 8段数码管 其中需要给 P0外接上拉电阻)完成字形码的输出 字形挑选);而 P2.1-P2.5掌握6位LED 进行分时选通,这样在任一时刻,只有一位LE

34、D是点亮的,但只要扫描的频率足够高 一般大于 25Hz),由于人眼的视觉暂留特性,直观上感觉却是连续点 亮的,这就是我们常说的动态扫描电路;13 / 34 名师归纳总结 - - - - - - -第 15 页,共 34 页精选学习资料 - - - - - - - - - 5 系统软件设计5.1 编程语言挑选51的编程语言常用的有两种,一种是汇编语言,一种是C语言;汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的程序就更是难读懂,而 C语言在大多数情形下其机器代码生成效率和汇编语言相当,C 语言很好的结构性和模块化更简洁阅读和保护,用 C 编写程序比汇编更符合人们的摸索习惯,开发者可以

35、更专心的考虑算法而不是考虑一些细节问题这样就削减了开发和调试的时间,而且 性的代码编写问题;5.2 主程序的设计C语言仍可以嵌入汇编来解决高时效主程序的主要功能是负责多点温度数据的实时采集、传输,处理和显示;其程序流 程如图 5-1所示;初始化生成地址字节 1001000,循环次数 3次向设置 /状态寄存器设置为连续工作方式启动转换14 / 34 地址字节加 02H N 循环次数减 1为0?名师归纳总结 - - - - - - -第 16 页,共 34 页精选学习资料 - - - - - - - - - 5.3 温度采集模块设计为本温度采集系统开发的软件程序,可以对DS1621内部的寄存器编程

36、掌握 DS1621的工作方式,以及从这些数据寄存器读取温度值,最终把经过单片机数据处理后的温度送到 LED上显示; AT89C51扮演着上传下达的角色,单片机端的程序采纳了 C语言;DS1621一侧的通信程序将利用并行端口 P3.0和P3.1来模拟 I 2C总线协议,总线上的通信通过程序来实现;整个软件采纳了模块化的程序设计方法;为了实现 AT89C51和DS1621之间 I 2C协议之下的串行通信,编写了一些专用子程序;这些子程序段包括:符号定义、AT89C51的端口初始化、启动信号时序产生、停止信号时序产生、发送字节、读取字节、读取温度、显示;系统电路在上电后开头工作,最先程序单片机进行初

37、始化设置,然后单片机利用模拟 I 2C总线对 DS1621进行寻址;单片机在接收到DS1621应答后,紧接着单片机利用命令 AAh 、ACh、EEh、22h)将设置 /状态寄存器的值通过 I 2C总线写入 DS1621状态寄存器,该系统中把 DS1621设置为连续温度转换工作方式,之后 DS1261在单片掌握下进行温度测量,然后 DS1261把所采集的温度传输给单片机,最终单片机把温度数据送到LED上显示;具体程序可见附录 2;5.4 温度运算模块设计运算温度子程序将从 DS1621中读取的温度值进行 BCD码的转换运算,并进行温度15 / 34 名师归纳总结 - - - - - - -第 1

38、7 页,共 34 页精选学习资料 - - - - - - - - - 值正负的判定,其程序流程图如图 5-2所示;开头N 温度零下 . Y 温度值取补码置 “ ”标志 置 “ +”标志运算小数位温度 BCD值运算整数位温度 BCD值终止图 5-2 温度运算流程图5.5 串行总线编程在本系统中,单片机 AT89C51 作为主控器件, 3个DS1621作为被控器,所以我们只要考虑主方式下的状态处理模块,即考虑 AT89C51主发送和主接收方式下的状态处理模块;该电路中为了简化电路设计在I 2C总线的时钟和数据上各加了一个上拉电阻,以猎取肯定的上拉电流使信号采集可靠;本系统中挂在 I 2C总线上的各

39、电路模块都有其节点地址;AT89C51作为主控器其节点地址无意义,作为被控器的3个DS1621都有其节点地址,其地址为1001A2A1A0 ,其中, 1001是器件编号,已由芯片生产厂家规定,A2A1A0 为DS1621的3个引脚,在电路中分别接高低电平打算 2个DS1621的不同地址; 2个DS1621的地址分别为 1001000100 1010;本系统中的 I2C总线的寻址方式为的广播寻址,即AT89C51对挂在 I2C总线上全部的DS1621的广播呼叫寻址;AT89C51发出开头信号 S后的第一个字节确定由 AT89C51所挑选的一个 DS1621的地 址,然后在第一个字节以后开头数据传

40、送;具体实现寻址的方法是:由AT89C51发出启动位 S后紧跟着发送从器件 DS1621的7位地址码,即 S+SLA,在节点地址寻址中 SLA为被寻址的从节点地址,主控设备在发 送数据前,在时钟为高时,在数据线上发送一个由高到低的信号来表示开头传送数据16 / 34 名师归纳总结 - - - - - - -第 18 页,共 34 页精选学习资料 - - - - - - - - - ,DS1621 接收到开头信号时,移入后续8 位高7 位地址线和一个 R/W 位)来确定进行如何操作,R/W 位为0 表示写,为 1 表示读;读写操作完成后,在时钟为高时,在数据线上发送一个由低到高的信号表示传送终止

41、;具体数据格式如图5-3所示,时序如图 5-4所示;图 5-3 串行通信的数据格式图 5-4 串行通信的时序图6 软硬件调试结果分析本设计应用 Proteus及Keil 软件,第一依据自己设计的电路图用 Proteus软件画出电路 模型,关于这个软件的使用通过查一些资料和自己的摸索学习;然后用 Keil 软件对所编 写的程序进行编译、链接,假如没有错误和警告便可生成程序的 hex文件,调试好程序 后将目标文件导入 Proteus的AT89C51芯片中进行软件调试;最终进行三路温度的对比 测试;数字温度计的仿真电路图如图 6-1所示;17 / 34 名师归纳总结 - - - - - - -第 1

42、9 页,共 34 页精选学习资料 - - - - - - - - - 图 6-1 仿真图仿真结果分析:不断调整三路DS1621的温度值,发觉 LED显示器上的数值和 DS1621屏幕上的标准值相差无几,在误差答应的范畴之内;当某一路的温度不在 50-80 范畴时,两个 LED 同时发光,表示告警信息;经调试,证明开发者最终设计出结构合 理、美观,主要电气指标良好,性能稳固牢靠的电路;7 总结不知不觉中,一周的课程设计实习已经接近尾声了;可能是假期快到的缘故,总 感觉这次实习特殊短暂;此刻,真是感叹万千啊!现在我可以骄傲的说,这次实习我 达到了预期的目标;由于在实习期间,我每天都在接触新的东西,

43、每天都会有新的问 题等待我去探讨去解决,每天都有新收成;回想课设第一天,我们做点电脑前,不知道自己能干点什么,对于指导老师的讲18 / 34 名师归纳总结 - - - - - - -第 20 页,共 34 页精选学习资料 - - - - - - - - - 解也是云里雾里的;由于头一回接触Proteus和Keil 这两个软件;但是我信任,只要自己专心了,没有办不成的事;于是,我静下心来,认真讨论老师下发的教程;我珍爱每 一次的上机机会,勤加练习,课下积极讨论手册和相关书籍;两天过后,才算有点眉目了;到这时心里才算略微平稳了一些,再加上以前学过名为 所以我的自信心加强了;Protel的电路设计软件,在这次设计过程中,表达出自己单独设计电路的才能以及综合运用学问的才能,体会了学以致用、突出自己劳动成果的欢乐心情,从中发觉自己平常学习的不足和薄弱环节,从

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁