《2022年智能温度表参考 .pdf》由会员分享,可在线阅读,更多相关《2022年智能温度表参考 .pdf(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一章课设要求与课设内容分析1 第一章课设要求与课设内容分析1.1 引言温度是日常生活、工业、医学、环境保护、化工、石油等领域最常遇到的一个物理量,也是工业控制中主要的被控参数之一。对温度的测量与控制在现代工业中也是运用的越来越广泛。而传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信与信息处理结合起来,适应传感器的生产、研制、开发和应用。另一方面,传感器的被测信号来自于
2、各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。温度传感器是其中重要的一类传器。其发展速度之快,以及其应用之广。并且还有很大潜力为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机结合温度传感器技术而开发设计了这一温度测量系统。文中将传感器理论与单片机实际应用有机结合,详细地讲述了利用热电阻作为温度传感器来测量实时的温度,以及实现热电转换的原理过程。本设计系统包括温度传感器,信号放大电路,A/D 转换模块,数据处理与控制模块,温
3、度显示五个部分。文中对每个部分功能、实现过程作了详细介绍。整个系统的核心是进行温度测量与显示,完成了课题所有要求。1.2 课设内容分析本设计运用主从分布式思想,由单片机工作,实时显示当前各点的温度值,对各点进行控制。设计采用的是单片机基于数字温度传感器DS18B20 的系统。 DS18B20利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 24 页 - - - - - - - - - 第一章课设要求与课设内容分
4、析2 行现场温度测量。本系统可以应用在大型工业及民用常温多点监测场合。如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、石化、机械, 等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 24 页 - - - - - - - - - 第二章硬件电路设计3 第二章硬件电路设计2.1 单片机简介单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:
5、CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器( Microcontroler) ,是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。INTEL 的 Z80 是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是8 位或 4 位
6、的。其中最成功的是INTEL 的 8031,因为简单可靠而性能不错获得了很大的好评。此后在 8031 上发展出了 MCS51系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16 位单片机,但因为性价比不理想并未得到很广泛的应用。90 年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着INTEL i960 系列特别是后来的ARM 系列的广泛应用,32位单片机迅速取代16 位单片机的高端地位, 并且进入主流市场。而传统的 8 位单片机的性能也得到了飞速提高,处理能力比起 80 年代提高了数百倍。目前,高端的32 位单片机主频已经超过3
7、00MHz,性能直追 90年代中期的专用处理器,而普通的型号出厂价格跌落至1 美元,最高端的型号也只有 10美元。 当代单片机系统已经不再只在裸机环境下开发和使用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌上电脑和手机核心处理的高端单片机甚至可以直接使用专用的Windows 和Linux 操作系统。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 24 页 - - - - - - - - - 第二章硬件电路设计4 单片机比专用处理器更适合应用于嵌入式系
8、统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2 部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备 40 多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC 机和其他计算的综合,甚至比人类的数量还要多。单片机又称单片微控制器 ,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开
9、发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10 元即可 .用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、 VCD 等等的家电里面都可以看到它的身影!它主要是作为控制部分的核心部件。它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力, 较低的成本, 这也是和离线式计算机的 (比如家用 PC)的主要区别。单片机是靠程序的,并且可以修
10、改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50 年代开发的 74 系列,或者 60 年代的 CD4000 系列这些纯硬件来搞定的话,电路一定是一块大PCB 板!但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为名师资料总结 - - -精品资料欢迎下载 - - - -
11、- - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 24 页 - - - - - - - - - 第二章硬件电路设计5 什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K 的尺寸!对于家用PC 的硬盘来讲没什么,可是对于单片机来讲是不能接受的。单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。一样的道理,如果把巨型计算机上的操作系统和应用软件拿
12、到家用PC 上来运行,家用 PC 的也是承受不了的。可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设品升级换代的功效,常在产品名称前冠以
13、形容词“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上。2.2 单片机的选择主要性能参数:与 MCS-51 产品指令和引脚完全兼容8K 字节可重擦写 FLASH 闪存存储器1000次写/ 擦循环时钟频率: 0Hz24MHz三级加密存储器256字节内部 R图 2-1 引脚图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 24 页 -
14、 - - - - - - - - 第二章硬件电路设计6 可编程串行 UART 通道低功耗的空闲和掉电模式片内振荡器和时钟电路AT89C51有40个引脚, 32个外部双向输入 / 输出( I/O)端口,同时内含2个外中断口, 3个16位可编程定时计数器 ,2 个全双工串行通信口, 2个读写口线,片内振荡器及时钟电路, AT89C51可以按照常规方法进行编程,也可以在线编程。同时,AT89C51可降至 0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU 的工作,但允许 RAM ,定时/ 计数器,串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁
15、止其他所有部件工作直到下一个硬件复位。其将通用的微处理器和 Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发本.AT89C52有PDIP、 PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。AT89C51引脚功能:Vcc:电源电压GND:地P0 口:P0 口是一组 8 位漏极开路型双向I/O 口,也即地址 / 数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个 TTL 逻辑门电路,对端口P0写“ 1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址 (低 8位)和数据总线复用,在访问器件激活内部上拉电阻
16、。在 Flash 编程时, P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1 是一个带内部上拉电阻的8 位双向 I/O 口,P1的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。对端口写“ 1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。与 AT89C51 不同之处是, P1.0和 P1.1还可分别作为定时 / 计数器 2 的外部名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心
17、整理 - - - - - - - 第 6 页,共 24 页 - - - - - - - - - 第二章硬件电路设计7 计数输入( P1.0/T2)和输入 ( P1.1/T2EX) ,参见表 2-1。Flash 编程和程序校验期间, P1接收低 8 位地址。 表 2-1 为 P1.0和 P1.1的第二功能表 2-2 P1.0和 P1.1 的第二功能P2口:P2 是一个带有内部上拉电阻的8 位双向 I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,同时可作输入口,作输入口使用时,因为内部存在上拉电阻, 某个引
18、脚被外部信号拉低时会输出一个电流(IIL) 。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVDPTR指令)时, P2 口送出高 8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVRI 指令)时, P2 口输出 P2锁存器的内容。Flash编程或校验时, P2亦接收高位地址和一些控制信号。P3 口:P3 口时一组带有内部上拉电阻的8 位双向 I/O 口。P3 口输出缓冲级可驱动 (吸收或输出电流) 4个 TTL逻辑门电路。 对 P3口写入“ 1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL ) 。P3口作为一般的
19、 I/O 口线外,更重要的用途是它的第二功能,如表 2-2所示:此外, P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时, RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/:当访问外部程序存储器或数据存储器时,ALE( 地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下, ALE仍以时钟振荡频率的 1/6 输出固定的脉冲信号, 因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。引脚号功能特性P1.0T2(定时 /计数器 2外部计数脉冲输入),时钟输出P1.1T2EX (定时
20、 /计数 2捕获 /重装载触发和方向控制)名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 24 页 - - - - - - - - - 第二章硬件电路设计8 端口引脚第二功能P3.0 RXD(串行输入口)P3.1 TXD (串行输出口)P3.2 (外中断 0)P3.3 (外中断 1)P3.4 T0(定时 / 计数器 0)P3.5 T1(定时 / 计数器 1)P3.6 (外部数据存储器写选通)P3.7 ( 外部数据存储器读选通 ) 表 2-3 P3 口第二功能对 Flash
21、 存储器编程器件,改引脚还用于输入编程脉冲() 。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0位复位,可禁止 ALE 操作。该位置复位后,只有一条MOVX 和 MOVC 指令才能将 ALE 激活。此外,该引脚会被微弱拉高, 单片机执行外部程序时,应设置 ALE 禁止位无效。:程序储存允许()输出是外部程序存储器的读选通信号,当 AT89C52 由外部程序存储器取指令 (或数据)时,每个机器周期两次有效,即输出两个脉冲。在次期间,当访问外部数据存储器, 将跳过两次信号。CPU 则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上12V的编程允许电源Vpp,当然这
22、必须是该器件是使用12V编程电压 Vpp。XTAL1 :振荡器反相放大器及内部时钟发生器的输入端。XTAL2 :振荡器反相放大器的输出端。单片机最小系统电路AT89C51作为温度测试系统设计的核心器件。该器件是INTEL 公司生名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 24 页 - - - - - - - - - 第二章硬件电路设计9 产的MCS一5l系列单片机中的基础产品,采用了可靠的CMOS工艺制造技术,具有高性能的 8位单片机,属于标准的 MCS51的CMOS
23、产品。不仅结合了HMOS的高速和高密度技术及 CHMOS的低功耗特征,而且继承和扩展了MCS48单片机的体系结构和指令系统。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 24 页 - - - - - - - - - 第三章软件设计10 第三章 软件设计3.1 概述整个系统的功能是由硬件电路配合软件来实现的,当硬件基本定型后,软件的功能也就基本定下来了。从软件的功能不同可分为两大类:一是监控软件(主程序),它是整个控制系统的核心,专门用来协调各执行模块和操作者的关系。二是
24、执行软件(子程序) ,它是用来完成各种实质性的功能如测量、计算、显示、通讯等。每一个执行软件也就是一个小的功能执行模块。这里将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义。各执行模块规划好后,就可以规划监控程序了。首先要根据系统的总体功能和键盘设置选择一种最合适的监控程序结构,然后根据实时性的要求,合理地安排监控软件和各执行模块之间地调度关系。主程序调用了 4 个子程序,分别是数码管显示程序、键盘扫描以及按键处理程序、 温度测试程序、 中断控制程序、 单片机与 PC机串口通讯程序。键盘扫描电路及按键处理程序:实现键盘的输入按键的识别及相关处理。温度测试程序:对温度芯片送过来的数
25、据进行处理,进行判断和显示。数码管显示程序:向数码的显示送数,控制系统的显示部分。中断控制程序:实现循环显示功能。串口通讯程序:实现PC 机与单片机通讯,将温度数据传送给PC机。将各个功能程序以子程序的形式写好,当写主程序的时候, 只需要调用子程序,然后在寄存器的分配上作一下调整,消除寄存器冲突和I/O 冲突即可。程序应该尽可能多的使用调用指令代替跳转指令。因为跳转指令使得程序难以看懂各程序段之间的结构关系。而调用指令则不同,调用指令使得程序结构清晰,无论是修改还是维护都比较方便。将功能程序段写成子程序的形式,除了方便调用之外,还有一个好处那就是以后写程序的时候如果要用到,就可以直接调用这个单
26、元功能模块。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 24 页 - - - - - - - - - 第三章软件设计11 开始系统初始化系统硬件测试程序串口通讯子程序温度显示子程序拨码开关扫描子程序温度测试及处理子程序图 3-1 功能模块3.2 各模块子程序设计温度测试子程序设计;#include #define uchar unsigned char #define uint unsigned int sfr P1M0=0 x91; sfr P1M1=0 x92;
27、 sfr A_CONTR=0 xBC; sfr A_RES=0 xBD; sfr A_RESL=0 xBE; sfr A_P1ASF=0 x9D; sbit EADC=0 xAD; uchar num4; uchar code S=0 x03,0 x9f,0 x25,0 x0d,0 x99,0 x49,0 x41,0 x1f,0 x01,0 x09,0 x11,0 xc1,0 x63,0 x85,0 x61,0 x71; sbit KeyFunction = P20; / 定义功能键名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
28、 名师精心整理 - - - - - - - 第 11 页,共 24 页 - - - - - - - - - 第三章软件设计12 sbit KeyMove = P21; / 定义最大最小选择键sbit KeyAdd = P22; /定义加数键sbit Keyjian = P23; /定义减数键sbit key = P13; / 定义继电器控制sbit led1 = P24; /加热:亮不加热:灭sbit led2 = P25; /设置上限:亮sbit led3 = P26; /设置下限:亮sbit led4 = P27; /温度显示:亮/外侧/继电器: 4 脚继电器7 脚 AD 脚uint te
29、mp; int Ad; uint set,Flag,min,max; uchar AddFlag,SetTem1,SetTem2,SetTem3,SetTem4; bit A_end; bit FunctionFlag=0; bit MoveFlag=0; void DelayMs(int t) uchar i; while(t-) for(i=0;i113;i+); void Se(uint Sa) num3=Sa/1000; num2=(Sa%1000)/100; num1=(Sa% 1000)%100)/10; num0=Sa%10; void Disp(uint temper) uch
30、ar i; Se(temper); for(i=0;i 0;num-) ValAv += temp; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 24 页 - - - - - - - - - 第三章软件设计14 ValAv /= 100.00; ValAv = 25.00 + (134.00-ValAv)/1.67 ; return(ValAv); / k1 键设置模式:按一下进入设置模式按两下退出/ k2 键设置最大最下:按一下设置最大按两下设置最小/ k3 键:
31、加 1 键/ k4 键:减 1 键void KeyScan() if(KeyFunction = 0) /功能键设定 / DelayMs(10); if(KeyFunction = 0) while(KeyFunction = 0); FunctionFlag = FunctionFlag; if(KeyMove = 0) DelayMs(10); if(KeyMove = 0) while(KeyMove = 0); MoveFlag = MoveFlag; if(KeyAdd = 0) /加数键设定 / DelayMs(10); if(KeyAdd = 0) while(KeyAdd =
32、0); Flag+; if(Flag99) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 24 页 - - - - - - - - - 第三章软件设计15 Flag=99; if(Keyjian = 0) /减数键设定 / DelayMs(10); if(Keyjian = 0) while(Keyjian = 0); Flag-; if(Flag1) Flag=0; void KeyDeal() if(FunctionFlag = 1) /进入设置模式 if(Mov
33、eFlag = 0) /设置上线 max=Flag*100; if(maxmax) min=0; Disp(min+2); led2=1; led3=0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 24 页 - - - - - - - - - 第三章软件设计16 led4=1; void Relay1() /不加热 key = 1; led1=1; void Relay2() /加热 key = 0; led1=0; void main() IN(); while
34、 (1) KeyScan(); while(FunctionFlag) /设置循环 KeyScan(); KeyDeal(); DelayMs(200); led2=1; led3=1; led4=0; A_CONTR|=0 x08; while(!A_end); A_end=0; Ad = (int)(AdAv()*100); Disp(Ad); DelayMs(8000); if(Ad = max) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 24 页 - -
35、- - - - - - - 第三章软件设计17 Relay1(); if(Ad = min) Relay2(); 3.3 编译软件介绍Keil 软件简介:单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为 CPU 可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51 单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil 软件是目前最流行开发MCS-51 系列单片机的软件,这从近年来各仿
36、真机厂商纷纷宣布全面支持Keil 即可看出。 Keil 提供了包括 C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil 软件需要 Pentium或以上的CPU,16MB 或更多 RAM 、20M 以上空闲的硬盘空间、 WIN98、NT、WIN2000、WINXP 等操作系统。1. 系统概述Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后
37、再使用C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 24 页 - - - - - - - - - 第三章软件设计18 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。2. Keil C51 单片机软件开发系统的整体结构
38、C51工具包的整体结构,如图4.1 所示,其中 uVision 与 Ishell 分别是C51 for Windows 和 for Dos 的集成开发环境 ( IDE) ,可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE 本身或其它编辑器编辑 C 或汇编源文件。然后分别由C51 及 A51 编译器编译生成目标文件( .OBJ) 。目标文件可由 LIB51 创建生成库文件, 也可以与库文件一起经L51连接定位生成绝对目标文件( .ABS) 。ABS 文件由 OH51 转换成标准的 Hex文件,以供调试器 dScope51或 tScope51使用进行源代码级调试, 也可由仿真
39、器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 24 页 - - - - - - - - - 第四章系统调试19 第四章 系统调试4.1 分步调试1、测试环境及工具测试温度: 0100摄氏度。 (模拟多点不同温度值环境)测试仪器及软件:数字万用表,温度计0100摄氏度,串口调试助手。测试方法:目测。2、测试方法使系统运行,观察系统硬件检测是否正常(包括单片机最小系统,键盘电路,显示电路,温度测试电路等)
40、 。系统自带测试表格数据,观察显示数据是否相符合即可。采用温度传感器和温度计同时测量多点水温变化情况(取温度值不同的多点) ,目测显示电路是否正常。 并记录各点温度值, 与实际温度值比较,得出系统的温度指标。使用串口调试助手与单片机通讯,观察单片机与串口之间传输数据正确否。3、测试结果分析自检正常,各点温度显示正常,串口传输数据正确。因为芯片是塑料封装,所以对温度的感应灵敏度不是相当高,需要一个很短的时间才能达到稳定。4.2 统一调试将硬件及软件结合起来进行系统的统一调试。实现PC 机与单片机通讯,两者可以实时更新显示各点温度值。名师资料总结 - - -精品资料欢迎下载 - - - - - -
41、 - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 24 页 - - - - - - - - - 心得体会20 心得体会作为大三学生,我觉得做单片机课程设计是很有意义的,而且也是必要的。在此首先感谢我的各位老师给与我的无私的帮助。在做这次课程设计的过程中,我感触最深的当属查阅大量的设计资料了。为了让自己的设计更加完善,查阅这方面的实际资料是十分必要的,也是必不可少的。通过做这个课程设计我不但回顾了以前学习的知识,如:电子 CAD,汇编语言、模拟和数字电路知识等。在学习过程当我再一次用到以前学过的东西时,才发现这次的设计竟然可以让以前不太
42、懂的问题通过这次的任务而得到解决。在这次设计的过程中我发现要做好这次的设计,首先要对单片机有足够的了解,这是一门基于单片机的课程,里面用到了关于单片机和c 语言的许多知识。这不但让我温习了以前的知识,更对知识的加深起到极大的作用,我深深体会到一个设计不是一次就可以完成的,它需要不停的修改,精益求精。在次过程中我们要踏踏实实的做,不能好高骛远。最后让我在此由衷的感谢我的老师,他给与我的帮助是无法估量的。李雪2013626 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 2
43、4 页 - - - - - - - - - 参考文献21 参考文献 :1 赵茂泰 . 智能仪器原理及应用北京:电子工业出版社,2001 2 赵新民 . 智能仪器原理及设计哈尔滨工业大学出版社,1995 3 李广弟 , 朱月秀 , 王秀山编著 .单片机基础 . 北京 : 北京航空航天大学出版社,2001 4 何立民 .MCS-51 系列单片机应用系统设计系统配置与接口技术. 北京: 北京航空航天大学出版社,1999 5 蔡美琴等 .MCS-51 单片机系统及应用. 北京 : 高等教育出版社,1992 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
44、 - - - - 名师精心整理 - - - - - - - 第 21 页,共 24 页 - - - - - - - - - 附录22 附录:智能温度表电路设计智能温度表电路整体设计名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 24 页 - - - - - - - - - 附录23 智能温度表软件编程名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共
45、 24 页 - - - - - - - - - 目录目录第一章课设要求与课设内容分析. 11.1 引言 . 11.2 课设内容分析. 1第二章硬件电路设计. 32.1 单片机简介 . 32.2 单片机的选择. 5第三章软件设计 . 103.1 概述 . 103.2 各模块子程序设计. 113.3 编译软件介绍. 17第四章系统调试 . 194.1 分布调试 . 194.2 统一调试 . 19心得总结: . 22参考文献: . 21附录: . 22名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 24 页 - - - - - - - - -