版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. . . . 毕业设计(论文)(说 明 书)题 目:数字温度计设计姓 名:申帅飞 编号:工业职业技术学院 2013 年 5 月 10 日工业职业技术学院毕业设计 (论文) 任 务书 申帅飞 专业应用电子技术专业任 务 下 达 日 期 2013 年 3 月 4 日设计(论文)开始日期 2013 年 3 月 11 日设计(论文)完成日期 2013 年 5 月 17 日设计(论文)题目: 数字温度计 A编制设计B设计专题(毕业论文)指 导教师 王 键 系(部)主 任 莉 2013年 5 月24日工业职业技术学院毕业设计(论文)答辩委员会记录自动化与信息工程系应用电子技术专业,学生申帅飞 于2013
2、年月日进行了毕业设计(论文)答辩。设计题目: 数字温度计 专题(论文)题目: 数字温度计的设计 指导老师: 王 键 答辩委员会根据学生提交的毕业设计(论文)材料,根据学生答辩情况,经答辩委员会讨论评定,给予学生毕业设计(论文)成绩为 。答辩委员会人,出席人答辩委员会主任(签字):答辩委员会副主任(签字):答辩委员会委员:, , , 工业职业技术学院毕业设计(论文)评语第页共页学生: 申帅飞 专业 应用电子技术专业 年级 2010 毕业设计(论文)题目: 数字温度计的设计 评阅 人:指导教师: (签字) 年 月 日成 绩:系(科)主任: (签字) 年 月 日毕业设计(论文)与答辩评语:摘 要随着
3、时代的进步和发展,单片机技术已经普与到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术, 本文主要介绍了一个基于 89C51 单片机的测温系统,详细描述了利用数字温度传感器 DS18B20 开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以与各模块系统流程进行了详尽分析,特别是数字温度传感器 DS18B20 的数据采集过程。对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,并可根据需要任意设定上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌
4、入其它系统中,作为其他主系统的辅助扩展。DS18B20 与 AT89C51 结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。关键词:单片机 DS18B20温度传感器数字温度计 AT89S52目 录摘 要5目 录6绪 论71概 述81.2课程设计的意义81.3设计的任务和要求82 开发工具Proteus与Keil92.1 Proteus软件92.1.1 Proteus简介92.1.2 4大功能模块102.1.3 ISIS智能原理图输入系统112.1.4 Proteus简单应用112.2 Keil软件122.2.1 Keil软件简介122
5、.2.2 Keil软件调试功能123 系统硬件设计与总体方案133.1 数字温度计设计方案论证133.1.1 方案一133.1.2 方案二143.2 系统总体设计143.3 系统模块143.3.1 主控制器153.3.2 显示电路163.3.3 温度传感器173.3.4 报警温度调整按键214 系统软件算法分析214.1 主程序流程图214.2 读出温度子程序224.3 温度转换命令子程序224.4 计算温度子程序234.5 显示数据刷新子程序244.6 按键扫描处理子程序245 实验仿真256 总结与体会287致 28参考文献28附 1 源程序代码29绪 论随着人们生活水平的不断提高,单片机
6、控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。随着时代的进步和发展,单片机技术已经普与到我们生活,工作、科研,各个领域,已经成为一种比较成熟的技术,单片机已经在测控领域中获得了广泛的应用本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温围广,测温准确,其输出温度采用数字显示,该设计控制器使用单片机AT89S52,测温传感器使用DS18B20,用LCD数码管以串口传送数据,实现温度显示,能准确
7、达到以上要求。1概 述1.2课程设计的意义本次课程设计是在我们学过单片机后的一次实习,可增加我们的动手能力。特别是对单片机的系统设计有很大帮助,也让我在这次设计中认识到了我的很多不足,从而是我的综合能力得到提高。1.3设计的任务和要求1、基本围-55-1282、精度误差小于0.53、LED 数码直读显示4、可以任意设定温度的上下限报警功能2 开发工具Proteus与Keil2.1 Proteus软件2.1.1 Proteus简介Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为风标电子技术)。它不仅具有其它EDA工具软件的仿真功能,还
8、能仿真单片机与外围器件。它是目前最好的仿真单片机与外围器件的工具。虽然目前国推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DSPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并
9、持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。该软件的特点是:1. 实现了单片机仿真和SPICE电路仿真相结合,具有模拟电路仿真、数字电路仿真、各种单片机(51系列、AVR、PIG等常用的MCU)与其外围电路(如LCD、RAM、ROM、键盘、LED、A/D、D/A)组成的系统仿真。2. 提供了多种虚拟仪器。如示波器、逻辑分析仪、信号发生器等,调试非常方便。3. 提供软件调试功能,同时支持第三方的软件编译和调试环境,如Keil等软件。4. 具有强大的原理图绘制功能。Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真
10、单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验从某种意义上讲,是弥补了实验和工程应用阉脱节的矛盾和现象。同时,当硬件调试成功后,利用Proteus ARES软件,很容易获得其PCB图,为今后的制造提供了方便。2.1.2 4大功能模块1. 智能原理图设计(ISIS)丰富的器件库:超过27000种元器件,可方便地创建新元件。智能的器件搜索:通过模糊搜索可以快速定位所需要的器件。智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间
11、。支持总线结构:使用总线器件和总线布线使电路设计简明清晰。可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。2. 完善的电路仿真功能(Prospice)ProSPICE混合仿真:基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真。超过27000个仿真器件:可以通过部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件。多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号
12、输入。丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等。生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动。高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等。3. 独特的单片机协同仿真功能(VSM)支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10
13、/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器。支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信。实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿
14、真。编译与调试:支持单片机汇编语言的编辑/编译/源码级仿真,带8051、AVR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试。4. 实用的PCB设计平台原理图到PCB的快速通道:原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计。先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理。完整的PCB设计功能:最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D 可视化
15、预览。多种输出格式的支持:可以输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工。2.1.3 ISIS智能原理图输入系统ISIS是PROTEUS系统的中心,它远不仅是一个图表库。它是具有控制原理图画图的外观的超强的设计环境。无论用户的要快速实现复杂设计的仿真以与PCB设计,还是设计精美的原理图以供出版,ISIS都可以很好的完成。ISIS提供给用户图形外观包括线宽、填充类型、字符等的全部控制,使用户能够生成如杂志上看到一样精美的原理图,远胜过CAD软件绘制出的稀薄的线条。画完图可以以图形文件输出,或者拷贝到剪切板以便其他文件
16、使用。这就使得ISIS成为制作技术文件,学术论文,项目报告的理想工具,也是PCB设计的一个出色的前端。画图的外形由风格模板定义。此外,此方案允许用户定制元件库提供的库部件的外观。2.1.4 Proteus简单应用图2-1 proteus界面图1. 绘制原理图:绘制原理图要在原理图编辑窗口中的蓝色方框完成。原理图编辑窗口的操作是不同于常用的WINDOWS应用程序的,正确的操作是:用左键放置元件;右键选择元件;双击右键删除元件;右键拖选多个元件;先右键后左键编辑元件属性;先右键后左键拖动元件;连线用左键,删除用右键;改连接线:先右击连线,再左键拖动;中键放缩原理图。2. 定制自己的元件:有三个个实
17、现途径,一是用PROTEUS VSM SDK开发仿真模型,并制作元件;另一个是在已有的元件基础上进行改造,比如把元件改为bus接口的;还有一个是利用已制作好(别人的)的元件,我们可以到网上下载一些新元件并把它们添加到自己的元件库里面。3. Sub-Circuits应用:用一个子电路可以把部分电路封装起来,这样可以节省原理图窗口的空间。2.2 Keil软件2.2.1 Keil软件简介Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加
18、深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。Keil C51软件是一个基于32位Windows环境的应用程序,支持C语言和汇编语言编程,其6.0以上的版本将编译和仿真软件统一为Vision(通常称为V2)。Keil提供包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在的完整开发方案,由以下几部分组成:Vision IDE集成开发环境C51编译器、A5
19、1汇编器、LIB51库管理器、BL51连接/定位器、OH51目标文件生成器以与 Monitor-51、RTX51实时操作系统。2.2.2 Keil软件调试功能应用Keil进行软件仿真开发的主要步骤为:编写源程序并保存建立工程并添加源文件设置工程编译/汇编、连接,产生目标文件程序调试。Keil使用“工程”(Project)的概念,对工程(而不能对单一的源程序)进行编译/汇编、连接等操作。工程的建立、设置、编译/汇编与连接产生目标文件的方法非常易于掌握。首先选择菜单File-New,在源程序编辑器中输入汇编语言或C语言源程序(或选择File-Open,直接打开已用其它编辑器编辑好的源程序文档)并保
20、存,注意保存时必须在文件名后加上扩展名.asm(.a51)或.c;然后选择菜单Project-New Project,建立新工程并保存(保存时无需加扩展名,也可加上扩展名.uv2);工程保存后会立即弹出一个设备选择对话框,选择CPU后点确定返回主界面。这时工程管理窗口的文件页(Files)会出现“Target1”,将其前面+号展开,接着选择Source Group1,右击鼠标弹出快捷菜单,选择“Add File to Group Source Group1”,出现一个对话框,要求寻找并加入源文件(在加入一个源文件后,该对话框不会消失,而是等待继续加入其它文件)。加入文件后点close返回主界面
21、,展开“Source Group1”前面+号,就会看到所加入的文件,双击文件名,即可打开该源程序文件。紧接着对工程进行设置,选择工程管理窗口的Target1,再选择Project-Option for TargetTarget1(或点右键弹出快捷菜单再选择该选项),打开工程属性设置对话框,共有8个选项卡,主要设置工作包括在Target选项卡中设置晶振频率、在Debug选项卡中设置实验仿真板等,如要写片,还必须在Output选项卡中选中“Creat Hex Fi”;其它选项卡容一般可取默认值。工程设置后按F7键(或点击编译工具栏上相应图标)进行编译/汇编、连接以与产生目标文件。成功编译/汇编、连
22、接后,选择菜单Debug-Start/Stop Debug Session(或按Ctrl+F5键)进入程序调试状态,Keil提供对程序的模拟调试功能,建一个功能强大的仿真CPU以模拟执行程序。Keil能以单步执行(按F11或选择Debug-Step)、过程单步执行(按F10或选择Debug-Step Over)、全速执行等多种运行方式进行程序调试。如果发现程序有错,可采用在线汇编功能对程序进行在线修改(Debug-Inline Assambly),不必执行先退出调试环境、修改源程序、对工程重新进行编译/汇编和连接、然后再次进入调试状态的步骤。对于一些必须满足一定条件(如按键被按下等)才能被执行
23、的、难以用单步执行方式进行调试的程序行,可采用断点设置的方法处理(Debug-Insert/Remove Breakpoint或Debug-Breakpoints等)。在模拟调试程序后,还须通过编程器将.hex目标文件烧写入单片机中才能观察目标样机真实的运行状况。3系统硬件设计与总体方案3.1 数字温度计设计方案论证3.1.1 方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行 A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到 A/D 转换电路,其中还涉与到电阻与温度的对应值的
24、计算,感温电路比较麻烦。而且在对采集的信号进行放大时容易受温度的影响出现较大的偏差。3.1.2 方案二进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器 DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,电路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系统的再扩展,满足设计要求。从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高,软件设计也比较简单,故采用了方案二。3.2 系统总体设计温度计电路设计总体设计方框图如图3.2-1 所示,控制器采用单片机 AT89S51,温度传感器采用
25、DS18B20,用 3 位 LED 数码管以串口传送数据实现温度显示。 AT89S52单片机复位报警温度调整键时钟振荡LED 显示蜂鸣器,指示灯DS18B20度传感器图 3.2-1 总体设计方框图3.3 系统模块系统由单片机最小系统、显示电路、按键、温度传感器等组成如图3.2-2。图 3.2-2 系统仿真图3.3.1 主控制器单片机 AT89S51 具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。晶振采用 12MHZ。复位电路采用上电加按钮复位。图 3.3.1-1 晶振电路图 3.3.1-2 复位电路3.3.2
26、显示电路显示电路采用 4 位共阳极 LED 数码管,P0 口由上拉电阻提高驱动能力,作为段码输出并作为数码管的驱动。P2 口的低四位作为数码管的位选端。采用动态扫描的方式显示如图3.3.2:图 3.3.2 数码管显示电路3.3.3 温度传感器DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。DS18B20 的性能特点如下:1、全数字温度转换与输出;2、最高12位分辨率,精度可达土0.5摄氏度;3、12位分辨率时的最大工作周期为 750
27、毫秒;4、可选择寄生工作方式;5、检测温度围为55C+125C (67F +257F);6、置 EEPROM,限温报警功能。用户可定义报警设置 ;7、64 位光刻 ROM,置产品序列号,方便多机挂接;8、多样封装形式,适应不同硬件系统;9、独特的单线接口仅需要一个端口引脚进行通信;10、多个DS18B20 可以并联在惟一的三线上,实现多点组网功能;11、无须外部器件;12、可通过数据线供电,电压围为3.05.5V;13、零待机功耗;14、温度以9 或12 位数字;15、报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;16、负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能
28、正常工作;DS18B20它有64 位ROM 的结构开始8 位是产品类型的编号,接着是每个器件的惟一的序号,共有48 位,最后8 位是前面56位的CRC 检验码,这也是多个DS18B20 可以采用一线进行通信的原因。温度报警触发器TH 和TL,可通过软件写入户报警上下限6。另外,由于DS18B20 单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20 的各种操作按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM 功能命令发存储器操作命令处理数据。DS18B20芯片封装结构如图3.33-1:图 3.33-1 DS18B20芯片封装结构 DS18B2
29、0采用3脚PR35封装或8脚SOIC封装,其部结构框图如图3.33-2所示。I/OC64位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vdd图 3.33-2 DS18B20部结构框DS18B20 工作原理 DS18B20 的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解18B20的部存储器资源。DS18B20 共有三种形态的存储器资源,它们分别是:ROM只读存储器,用于存放 DS18B20ID 编码,其前8位是单线系列编码(DS18B
30、20 的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的 CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20 共64位 ROM。 RAM 数据暂存器,用于部计算和数据存取,数据在掉电后丢失,DS18B20 共9个字节 RAM,每个字节为8位。第1、2 个字节是温度转换后的数据值信息,第3、4个字节是用户 EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第5个字节则是用户第3个 EEPROM的镜像。第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是部温度转换、计算的暂存单元。第9个字节为前8个字节的 CR
31、C码。EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在 RAM 都存在镜像,以方便用户操作7。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如表3.33-3所示。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。温度 LSB温度 MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRCTMR1R011111表3.33-3DS18B20字节定义DS18B2
32、0 可以采用两种方式供电,一种是采用电源供电方式,此时 DS18B20 的1脚接地,2脚作为信号线,3脚接电源。总线,为保证在有效的 DS18B20 时钟周期提供足够的电流,可用一个 MOSFET 管来完成对总线的上拉。当 DS18B20 处于写存储器操作和温度 A/D 转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时 VDD 端接地。由于单线制只有一根线,因此发送接口必须是三态的。图 3.3.3-4 温度传感器与单片机的连接3.3.4 报警温度调整按键本系统设计三个按键,采用查询方式,一个用于选择切换设置报警温度和当前温度,另外两个分别用于设置报警温度的加
33、和减。均采用软件消抖。图 3.3.4 按键电路4系统软件算法分析系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序,按键扫描处理子程序等。4.1 主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理 DS18B20 的测量的当前温度值,温度测量每 1s 进行一次。这样可以在一秒之测量一次被测温度,其程序流程见图4.1 所示。初始化读出温度值温度计算处理显示数据刷新发温度转换开始命令 读取温度调用显示子程序SET键是否按下设置报警温度NY图 4.1 主程序流程图4.2 读出温度子程序读出温度子程序的主要功能是读出 RAM 中的9字节,在读出时需
34、进行 CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图4.2 示4.3 温度转换命令子程序温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如上图,图4.3 所示发 DS18B20 复位命令发跳过 ROM 命令结束发 DS18B20 复位命令发跳过 ROM 命令移入温度暂存器发读取温度命令读取操作,CRC 校验9字节完?CRC 校验正?结束YYNN发温度转换开始命令图4.3 温度转换流程图 图4.2 读温度流程图4.4 计算温度子程序计算温度子程序将 RAM 中读取值
35、进行 BCD 码的转换运算,并进行温度值正负的判定,其程序流程图如图 4.4 所示。4.5 显示数据刷新子程序显示数据刷新子程序主要是对分离后的温度显示数据进行刷新操作,当标志位位为 1时将符号显示位移入第一位。程序流程图如图 4.5开始温度零下?温度数据移入显示寄存器分离显示温度置“0”标志计算小数位温度 BCD 值计算小数位温度 BCD 值温度值取补码置“1”标志结束标志位为 1?最高位显示“”结束最高为显示分理出的数据NYYNY图 4.4 计算温度流程图 图 4.5 显示数据刷新流程图4.6 按键扫描处理子程序按键采用扫描查询方式,设置标志位,当标志位为1时,显示设置温度,否则显示当前温
36、度。如下图4.6 示。SET 键按下报警温度减 1报警温度加 1ADD 键是否按下DEC 键是否按下显示切换标志位是否为“0”调用显示子程序NNYYYN图 4.6 按键扫描处理子程序5实验仿真5.1软件仿真进入 protuse 后,连接好电路,并将程序下载进去。将 DS18B20 的改为1.0,数码管显示温度与传感器的温度一样。图 5-1 温度显示仿真当按下 SET 键一次时,进入温度报警上线调节,此时显示软件设置的温度报警上线,按 ADD或 DEC 分别对报警温度进行加一或减一。当再次按下 SET 键时,进入温度报警下线调节,此时显示软件设置的温度报警下线,按 ADD或 DEC 分别对报警温
37、度进行加一或减一图 5-2 温度调试仿真当第三次按下 SET 键时,退出温度报警线设置。显示当前温度。6总结与体会通过这次对数字温度计的设计与制作,让我了解了设计电路的程序,也让我了解了关于数字温度计的原理与设计理念,要设计一个电路总要先用仿真仿真成功之后才实际接线的。但是最后的成品却不一定与仿真时完全一样,因为,再实际接线中有着各种各样的条件制约着。而且,在仿真中无法成功的电路接法,在实际中因为芯片本身的特性而能够成功。所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。通过这次学习,让我对各种电路都有了大概的了解,所以说,坐而言不如立而行,对于这些电路还是应该自己动手实际操作才会有深
38、刻理解。从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。7致非常感王键老师在我大学的最后学习阶段毕业设计阶段给自己的指导,从最初的选题,到资料收集,到写作、修改,到论文定稿,他给了我耐心的指导和无私的帮助,在此我向他表示我诚挚的意。同时,感所有任课老师和所有同学在这三年来给自己的帮助和关爱,是他们教会了我专业知识,教会了我如何学习,教会了我如何做人。通过这一阶段的努力,毕业论文终于完成了,这意味着大学生活即将结束。在大学阶段,我在学习上和思
39、想上都受益匪浅,这除了自身的努力外,与各位老师、同学和朋友的关系、支持和鼓励是分不开的。最后,感各位导师的指导批评。参考文献1楼然苗,胡佳文,光飞,玉良,俞红杰,良儿.单片机实验与课程设计M.:大学,2010:127-1482雨刚,洪炳林,郝文慧.基于DS18B20的高精度矿用温度计传感器设计J.国外电子元器件,2006(12):35-37.3黄亚,益维.温度传感器DS75LX与单片机的接口技术J.国外电子元器件,2007(10):47-49.4胡雪海.单片机原理与应用系统设计M.:电子工业,2004:59-75.5谈根林,慧文,汪庆宝,礼贤.微型计算机与其在测量中的应用M.:计量,1983:
40、89-105.6楼然苗,光飞.单片机课程设计指导M.:航空航天大学,2007:46-55.7胡翔骏.电路分析(第2版)M.:高等教育,2007:68-80.附 1 源程序代码/DS18B20 的读写程序,数据脚 P2.7 /温度传感器 18B20 汇编程序,采用器件默认的 12 位转化/最大转化时间 750 微秒,显示温度-55 到+125 度,显示精度/为 0.1 度,显示采用 4 位 LED 共阳显示测温值/P0 口为段码输入,P34P37 为位选/*/#include#define uchar unsigned char#define uint unsigned intsbit d1=P
41、22;sbit d2=P21;sbit d3=P20;sbit d4=P23;sbit key1=P30;sbit key2=P31;sbit key3=P32;sbit beep=P33;sbit DS=P12;sbit ACC_7=ACC7;uint count=1000,alarm=300;uchar shu;uchar shi,fen,ri,yue,nian,xq,miao,ss; uint temp; / 温度变量uchar flag;uchar code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;uchar code
42、 tab1=/小数点点亮0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=120;y0;y-);void dsreset()/发复位 uint i;DS=0;i=103;while(i0)i-;DS=1;i=4;while(i0)i-;uchar tmpread() /读取一字节uchar j,k,dat;uint i; for(j=1;j0)i-;dat=(k1);/读出的数据最低位在最前面存一个字节在DAT里 return(dat);void tmpwritebyt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024版分期付款合同书
- 二零二五年能源管理评估合同能源管理协议3篇
- 无锡南洋职业技术学院《石油钻采机械概论》2023-2024学年第一学期期末试卷
- 2024版高清影视内容制作与版权转让合同
- 2025年度体育场馆草坪除草与赛事运营保障合同3篇
- 2024法律顾问协议
- 2024版建筑行业招投标规则与协议签订指南版B版
- 皖江工学院《商业展示设计》2023-2024学年第一学期期末试卷
- 天津体育学院《环境科学概论(Ⅱ)》2023-2024学年第一学期期末试卷
- 塔里木职业技术学院《工笔人物画》2023-2024学年第一学期期末试卷
- 2024年石家庄正定国际机场改扩建工程合同
- 2025年度爱读书学长定制化阅读计划合同2篇
- 河南省信阳市浉河区9校联考2024-2025学年八年级上学期12月月考地理试题(含答案)
- 快速康复在骨科护理中的应用
- 国民经济行业分类和代码表(电子版)
- ICU患者外出检查的护理
- 公司收购设备合同范例
- GB/T 44823-2024绿色矿山评价通则
- 广东省潮州市2023-2024学年高二上学期语文期末考试试卷(含答案)
- 漂亮的可编辑颜色鱼骨图PPT模板
- 锅炉安装表格(全套)
评论
0/150
提交评论