DS18B20单线数字温度传感器课程设计.doc_第1页
DS18B20单线数字温度传感器课程设计.doc_第2页
DS18B20单线数字温度传感器课程设计.doc_第3页
DS18B20单线数字温度传感器课程设计.doc_第4页
DS18B20单线数字温度传感器课程设计.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

DS18B20单线数字温度传感器课程设计论文与心得西安科技大学 单 片 机 课 程 设 计 论 文银 浩 0806060135翁子涵 0806060136王思麒 0806060137 指导教师: 王建专业名称: 电气工程及其自动化电气与控制工程学院2010年12月27日DS18B20单线数字温度传感器课程设计论文与心得【摘要】 随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测与显示系统应用于诸多领域。传统的温度检测以热敏电阻为温度敏感元件。热敏电阻的成本低,需要外加信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。与传统的温度计相比,这次设计的是基于DS18B20的数字温度计,它具有读数方便,测温范围广,测温精确,数字显示,适用范围宽等特点。在本设计中选用AT89C51型单片机作为主控制器件,采用DS18B20数字温度传感器作为测温元件,通过4位共阳极LED数码显示管并行传送数据,实现温度显示。本设计的内容主要分为两部分,一是对系统硬件部分的设计,包括温度采集电路和显示电路;二是对系统软件部分的设计,应用C语言实现温度的采集与显示。通过DS18B20直接读取被测温度值,送入单片机进行数据处理,之后进行输出显示,最终完成了数字温度计的总体设计。其系统构成简单,信号采集效果好,数据处理速度快,便于实际检测使用。关键词:单片机AT89C51;温度传感器DS18B20;LED数码管;数字温度计1 绪 论1.1课题背景单片机自1976年由Intel公司推出MCS-48开始,迄今已有三十多年了。由于单片机集成度高、功能强、可靠性高、体积小、功耗低、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域,对各个行业的技术改造和产品更新换代起着重要的推动作用。单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器。目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。本设计讨论的单片机多功能定时器的核心是目前应用极为广泛的51系列单片机,配置了外围设备,构成了一个可编程的计时定时系统,具有体积小,可靠性高,功能强等特点。不仅能满足所需要求而且还有很多功能可供开发,有着广泛的应用领域1。20世纪80年代中期以后,Intel公司以专利转让的形式把8051内核技术转让给许多半导体芯片生产厂家,如ATMEL、PHILIPS、ANALOG、DEVICES、DALLAS等。这些厂家生产的芯片是MCS-51系列的兼容产品,准确地说是与MCS-51指令系统兼容的单片机。这些兼容机与8051的系统结构(主要是指令系统)相同,采用CMOS工艺,因而,常用80C51系列来称呼所有具有8051指令系统的单片机,它们对8051单片机一般都作了一些扩充,使其更有特点。其功能和市场竞争力更强,其实不该把它们直接称呼为MCS-51系列单片机,因为MCS只是Intel公司专用的单片机系列型号。MCS-51系列及80C51单片机有多种品种。它们的引脚及指令系统相互兼容,主要在内部结构上有些区别。目前使用的MCS-51系列单片机及其兼容产品通常分成以下几类:基本型、增强型、低功耗型、专用型、超8位型、片内闪烁存储器型。其中ATMEL公司的标准型AT89单片机因其与MCS-51的完全兼容性、优良的工作性能、使用的灵活性以及较高的性能价格比,成为AT89系列单片机的主流机型,在嵌入式控制系统中获得广泛应用。1.2课题来源众所周知,环境温度一直是生物能否较适宜生存的一个重要因素,而人们对环境温度的感知也从单纯的身体感官的感受发展到用各种温度计来对环境温度进行准确的测量。但是受限于技术等原因,温度计通常都有体积较大,精度不高等各种缺陷。而数字温度测量芯片的出现则解决了这些问题,其中的一款芯片DS18B20是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。因此,用它来组成一个测温系统,具有线路简单,在一根通信线上可以挂载很多这样的数字温度芯片,十分方便。美国Dallas半导体公司的数字化温度传感器DS18202是世界上第一片支持 “一线总线”接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。“一线总线”独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。 同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为-55C+125C,在-10+85C范围内,精度为0.5C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3V5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小,这就为用最低的成本制作出用途更广,精度更高的便携带的数字温度计提供了可能。目前,国际上新型温度传感器正从模拟式向数字式,从集成化向智能化、网络化的方向飞速发展。1.3课题内容及要求 本设计主要介绍了用单片机和数字温度传感器DS18B20相结合的方法来实现温度的采集,以单片机AT89C51芯片为核心,辅以温度传感器DS18B20和LED数码管及必要的外围电路,构成了一个多功能单片机数字温度计。该装置适用于人民的日常生活和工、农业生产的温度测量与报警,实现对温度的监测。其主要研究内容包括两方面,一是对系统硬件部分的设计,包括温度采集电路和显示电路;二是对系统软件部分的设计,应用C语言实现温度的采集与显示。通过利用数字温度传感器DS18B20进行设计,能够满足实时检测温度的要求,同时通过LED数码管的显示功能,可以实现不间断的温度显示,并带有复位功能。本次设计的主要思路是利用51系列单片机,数字温度传感器DS18B20和LED数码显示器,构成实现温度检测与显示的单片机控制系统,即数字温度计。通过对单片机编写相应的程序,达到能够实时检测周围温度的目的。通过对本课题的设计能够熟悉数字温度计的工作原理及过程,了解各功能器件(单片机、DS18B20、LED)的基本原理与应用,掌握各部分电路的硬件连线与程序编写,最终完成对数字温度计的总体设计。其具体的要求如下:1、根据设计要求,选用AT89C51单片机为核心器件;2、温度检测器件采用DS18B20数字式温度传感器,利用单总线式连接方式与单片机的串行接口P0.0引脚相连;3、显示电路采用4个LED数码管显示器接P1口并行显示温度值,数码管由P3口(P3.0P3.3)选通,动态显示。2 基于DS18B20数字温度计设计的可行性分析2.1数字温度计设计方案论证2.1.1方案一由于本设计实现的是测温电路,首先我们可以使用热敏电阻之类的器件,利用其感温效应,将其随被测温度变化的电压或电流值采集过来,进行A/D转换后,就可以用单片机进行数据的处理,通过显示电路就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。因此,我们引出第二种方案。2.1.2方案二我们可以采用技术成熟、操作简单、精确度高的温度传感器,在此,可以选用数字温度传感器DS18B20,根据它的特点和测温原理,很容易就能直接读取被测温度值并进行转换,这样就可以满足设计要求。 从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故在本设计中采用了方案二。通过方案二设计的温度计总体电路图如附录图C所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用4位LED数码管以串口并行输出方式传送数据实现温度显示。2.2单线技术目前,常用的微机和外设之间数据传输的串行总线3有I2C总线、SPI总线等,其中I2C总线采用同步串行双线(一根时钟线,一根数据线)方式,而SPI总线采用同步串行三线(时钟线,输入线,数据输入线)方式。这两种总线需要至少两根或两根以上的信号线。美国达拉斯半导体公司推出了一项特有的单线技术。该技术于上述总线不同,它采用单根信号线,即可传输时钟,又能传输数据,而且数据传输时是双向的,因而这种单线技术具有线路简单,硬件开销少,成本低廉。便于扩展的优点。单线技术适用以单主机系统,单主机能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单线器件,它们之间的数据交换,控制都由这根线完成。主机或从机通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放线,而让其它设备使用。单线通常要求外接一个约5k的上拉电阻,这样,当该线闲置时,器件状态为高电平。主机和从机之间的通信主要分为3个步骤:初始化单线器件,识别单线器件和单线数据传输。由于只有一根线通信,所以它们必须是严格的主从结构,只有主机呼叫从机时,从机才能应答,主机访问每个单线器件都必须严格遵循单线命令序列,从机遵守上述三个步骤的顺序。如果命令序列混乱,单线器件将不会响应主机。所有的单线器件都有遵循严格的协议,以保证数据的完整性。单线协议有复位脉冲,其他均由主机发起,并且所有命令和数据都是字节的地位在前。3 系统的硬件选择及设计3.1核心处理器的设计3.1.1 AT89C51的简介对于单片机的选择,可以考虑使用8031与8051系列,由于8031没有内部RAM,系统又需要大量内存存储数据,因而不适用。所以,我们选用51系列单片机AT89C51。AT89C51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可编程的Flash只读程序存储器,兼容标准8051指令系统及引脚,并集成了 Flash 程序存储器,既可在线编程(ISP),也可用传统方法进行编程,因此,低价位AT89C51单片机可应用于许多高性价比的场合,可灵活应用于各种控制领域,对于简单的测温系统已经足够。单片机AT89C51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。AT89C51的主要特性如下: 与MCS-51 兼容; 4K字节可编程闪烁存储器; 寿命:1000写/擦循环; 数据保留时间:10年; 全静态工作:0Hz-24Hz; 三级程序存储器锁定; 128*8位内部RAM; 32根可编程I/O线; 两个16位定时器/计数器; 5个中断源; 可编程串行通道; 低功耗的闲置和掉电模式; 片内振荡器和时钟电路。(1) AT89C51引脚图 图 3.1 AT89C51单片机引脚图 (2)AT89C51引脚功能介绍单片机芯片AT89C51为40引脚双列直插式封装。其各个引脚功能5介绍如下:(1) VCC:供电电压;(2) GND:接地;(3) P0口P0口为一个8位漏级开路双向I/O口,每个管脚可吸收8TTL门电流。当P1口的管脚写”1”时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部电位必须被拉高。(4) P1口P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入”1”后,电位被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。(5) P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写”1”时,其管脚电位被内部上拉电阻拉高,且作为输入。作为输入时,P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址”1”时,它利用内部上拉的优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。(6) P3口P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入”1”后,它们被内部上拉为高电平,并用作输入。作为输入时,由于外部下拉为低电平,P3口将输出电流(ILL),也是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,同时P3口同时为闪烁编程和编程校验接收一些控制信号。其具体功能如表3.1所示。表3.1 P3口的特殊功能端口定义符号表示功能描述P3.0RXD串行输入口P3.1TXD串行输出口P3.2INT0外部中断0P3.3INT1外部中断1P3.4T0定时器0外部输入P3.5T1定时器1外部输入P3.6WR外部数据存储器写选通P3.7RD外部数据存储器读选通(7) RST:复位输入端。当振荡器复位时,要保持RST脚两个机器周期的高电平时间。(8) ALE / PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令时ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。(9) PSEN外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期PSEN两次有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。(10) EA/VPP当EA保持低电平时,访问外部ROM;注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,访问内部ROM。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。(11) XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。(12) XTAL2:来自反向振荡器的输出。3.1.2复位电路的设计单片机复位电路的设计如图3.2所示。该复位电路采用手动复位与上电复位相结合的方式。当按下按键S1时,VCC通过R1电阻给复位输入端口一个高电平,实现复位功能,即手动复位。上电复位就是VCC通过电阻R2和电容C构成回路,该回路是一个对电容C充电和放电的电路,所以复位端口得到一个周期性变化的电压值,并且有一定时间的电压值高于CPU复位电压,实现上电复位功能7。图3.2 单片机复位电路3.1.3晶振电路的设计 单片机晶振电路的设计如图3.3所示。XTAL1(X1)为反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2(X2)是来自反向振荡器的输出。按照理论上AT89C51使用的是12MHz的晶振,但实测使用11.0592MHz。所以设计者通常用的是11.0592MHz。图3.3 单片机晶振电路3.2温度采集电路的设计由于传统的热敏电阻等测温元件测出的一般都是电压,再转换成对应的温度,需要比较多的外部元件支持,且硬件电路复杂,制作成本相对较高。这里采用DALLAS公司的数字温度传感器DS18B20作为测温元件。3.2.1 DS18B20的简介 DALLAS半导体公司的数字化温度传感器DS1820是世界上第一片支持 “一线总线”接口的温度传感器,体积更小、适用电压更宽、更经济。一线总线独特而且经济的特点,使用户可轻松地组建温度传感器网络,为测量系统的构建引入全新概念。DS18B20、 DS1822 “一线总线”数字化温度传感器同DS1820一样,支持“一线总线”接口,测量温度范围为-55C+125C,在-10+85C范围内,精度为0.5C,而DS1822的精度较差为 2C 。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性,适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。DS18B20可以程序设定912位的分辨率,精度为0.5C,分辨率设定,以及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS1822与 DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为2C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。 继“一线总线”的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。3.2.2DS18B20内部结构 DS18B20内部结构主要由四部分组成:64位光刻ROM,温度传感器,非挥发的温度报警触发器TH和TL,高速暂存器。DS18B20的管脚排列如图3.4所示。64位光刻ROM是出厂前被光刻好的,它可以看作是该DS18B20的地址序列号,不同的器件地址序列号不同。8位产品系列号48位产品序号8位CRC编码图3.4 DS18B20引脚分布图 表3.2 DS18B20高速暂存器共9个存储单元序号寄存器名称作 用序号寄存器名称作 用0温度低字节以16位补码形式存放4、5保留字节1、21温度高字节6计数器余值2TH/用户字节1存放温度上限7计数器/3HL/用户字节2存放温度下限8CRCCRC校验 以12位转化为例说明温度高低字节存放形式及计算:12位转化后得到的12位数据,存储在18B20的两个高低两个8位的RAM中,二进制中的前面5位是符号位。如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度(等价说明:高8位字节的低3位和低8位字节的高4位组成温度整数值的二进制数;或者说:12位测量时,所测数值乘以0.0625(=1/16),即右移4位后去掉了二进制数的小数部分);如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625才能得到实际温度(等价说明:当温度小于0时,整数部分就是各位取反,小数部分则是各位取反后加1)。 高8位SSSSS262524低8位232221202-12-22-32-4说明:温度测量分辨率有四种,即9位测量分辨率0.5;10位测量分辨率0.25;11位测量分辨率0.125;12位测量分辨率0.0625;912位的测量,无论采用哪种分辨率,温度整数的有效位均是表中2620;以12位为例:温度值二进制数十六进制数+1250000 0111 1101 000007D0H+25.06250000 0001 1001 00010191H+10.1250000 0000 1010 001000A2H+0.50000 0000 0000 10000008H00000 0000 0000 00000000H-0.51111 1111 1111 1000FFF8H-10.1251111 1111 0101 1110FF5EH-25.06251111 1110 0110 1111FF6FH-1251111 1100 1001 0000FC90H3.2.3 DS18B20测温原理DS18B20的测温原理如图3.5所示,图中低温度系数晶振的振荡频率受温度的影响很小用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量.计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55所对应的一个基数值。图3.5 DS18B20测温原理图减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器 1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3.8中的斜率累加器用于补偿和修正测温过程中的非线性其输出用,于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时间概念,因此读写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。在正常测温情况下,DS18B20的测温分辨力为0.5,可采用下述方法获得高分辨率的温度测量结果:首先用DS18B20提供的读暂存器指令(BEH)读出以0.5为分辨率的温度测量结果,然后切去测量结果中的最低有效位(LSB),得到所测实际温度的整数部分Tz,然后再用BEH指令取计数器1的计数剩余值Cs和每度计数值CD。实际温度Ts可用式(3.1)计算: (3.1)3.2.4 温度采集电路图3.6 温度采集电路3.2.5 温度采集电路流程图开始初始化DS18B20应答脉冲?发起Skip Rom命令发起Convert T 命令延时1s,等待温度转换成初始化DS18B20应答脉冲?发起Read Scratchapad命令读取1,2字节即为温度数值NoNo3.3温度显示电路的设计3.3.1 LED数码管的操作LED数码管,也叫LED数码显示器,由于它具有很高的性能价格比、显示清晰、亮度高、使用方便、电路简单、寿命长等诸多优点,长期以来一直在各类电子产品和工程控制中得到非常广泛的应用。在单片机控制系统中,因为单片机的硬件简单、灵活等特点,非常适合使用LED数码管作为其输出设备,这样既满足了控制系统硬件简单,又能如实地显示被控系统的温度、压力、流量、高度等一些单片机的处理结果。LED数码管的基本组成是半导体发光二极管,它是将若干个发光二极管,按照一定的笔段组合起来构成的一个整体。LED数码管能显示09十个数字及部份英文字母。常见的八段LED数码管结构如图3.7所示。图3.7 数码管的内部结构它由8个发光二极管组成,其中7个长条形的发光二极管排列成”日”字形,另一个发光二极管在整个数码管的右下角,用来显示小数点。根据8个发光二极管的不同连接形式,可以将LED数码管分成共阳极和共阴极两种。将8个发光二极管的阳极都连在一起的,称之为共阳极LED数码管;将8个发光二极管的阴极都连在一起的,称之为共阴极LED数码管。共阴极和共阳极结构的LED数码管各笔段名和安排位置是相同的(如图3.7所示)。当发光二极管导通时,相应的笔段发亮,由发亮的笔段组合成09十个数字及部分英文字母。这里我们以共阴极LED数码管为例,当让其显示数字”3”时,只要a、b、c、d、g段的发光二极管点亮,e、f、dp段的发光二极管不亮,即a、b、c、d、g段发光二极管的阳极加上高电平”1”, e、f、dp段发光二极管的阳极加上低电平”0”,同时使LED数码管的公共阴极接低电平”0”,则LED数码管此时就能显示数字”3”。如果加到各笔段对应发光二极管阳极上的代码不同,则就能控制LED数码管显示不同的字符和数字,这个代码称为段码。通常将这个段码用单片机系统中的一个字节进行存储,正好这个字节中的8个二进制位(D7、D6、D5、D4、D3、D2、D1、D0),依次对应LED数码管的8个笔段dp、g、f、e、d、c、b、a。3.3.2温度显示电路显示电路采用4个共阴极LED数码管,从P1口并行输出温度段码,用P3.0P3.3四个端口输出选择脉冲,控制数码管的点亮。其具体电路图如图3.8所示。 图3.8 温度显示电路3.3.3 温度显示电路的流程图设计开始点亮所有数码管选中LED1显符号延迟选中LED2显十位延迟选LED3显个位延迟选LE结束设计心得体会 本学期的单片机实习课题也在一周内完成了。俗话说“好的开始是成功的一半”。说这次实习,我认为最重要的就是做好程序调试,认真的研究老师给的题目。其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起产品就会事半功倍。 虽然这次的实习算起来在实验室的时间只有几天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。 硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。第二,是在学习态度上,这次课设是对我的学习态度的一次检验。对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。我们这次实习所遇到的多半问题多数都是由于我们不够严谨。第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。通过这次单片机实习,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。这个设计实践过程中,我们花费了大量的时间和精力,更重要的是,我们在学会创新的基础上,同时还懂得合作精神的重要性,学会了与他人合作。作为一名电气工程及其自动化专业的大三学生,我觉得做单片机实习是十分必要的。在已度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似实习就为我们提供了良好的实践平台。在做本次实习的过程中,我感触最深的当属查阅大量的设计资料了。而我也主要负责这一块。为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。我们是在做单片机实习,我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。最后,在实习之前,我们要对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在实习过程中遇到问题是很正常的,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题。但是从中学到的知识会让我受益终身。发现、提出、分析、解决问题和实践能力提高都会受益于我在以后的学习、工作和生活中。 翁子涵 0806060136 本设计介绍了基于DS18B20的数字温度计的工作原理及实现过程,本人在这几天的时间内阅读大量有关数字温度计原理及设计的相关资料,设计了系统所需的电路原理图及实现采集与显示功能的软件程序,完成了基于DS18B20的数字温度计的设计。设计中采用最常用的单片机AT89C51作为主控模块,单总线数字温度传感器DS18B20用来测量温度,温度数据采用数码管LED显示。本设计的特点是构成系统的硬件器件少,操作简单,数据处理功能强。通过这次毕业设计使我学习到了很多的东西,不仅加深了对专业知识的理解,而且更好地把理论知识与实践相结合,提高了自身的动手能力和实践水平,增强了学习单片机系统开发与设计的兴趣。由于本人的知识有限,在本设计中不可避免存在一些不足之处,我会在以后的学习生活中不断加以完善。相信本次毕业设计的经历一定会在我今后的学习生活中产生巨大的推动作用。我要衷心感谢我的指导教师王建老师,在毕业设计期间我的设计和论文都是在老师全面、具体的指导下进行的,老师对论文的选题、构思、资料收集到最后定稿的各个阶段都给了我很大的宝贵意见和悉心指导,认真帮助我纠正设计上的错误和写作论文上的不规范之处。同时也要感谢翁子涵、银浩等同学,他们在我的毕业设计期间给我提供了很大的帮助,在他们的帮助下我少走了许多弯路,提高了工作效率。 王思麒 0806060137在大学三年了,一直很迷茫自己所学的课程,一直埋怨自己以后能做什么。在学校写了模电,数电、protel、通信原理等等。学的是那么浅薄,那么的皮毛,我能承担得起以后的工作范围能力吗?一位大学生就是这样吗?在社会我有竞争力吗?在没有实习之前我对专业知识肯定是没有什么信心。我们本次制作的是电子温度感应器,和单片机程序的编写,protel 的电路板画图,我从中学到很多有用的电路知识对于单片机软件开发:认识了很多关于单片机的软件开发的相关软件,如PROTEUS、KEIL、PROGISP、STC_ISP_V3.5、串口调试。编程的范围认识:液晶显示器、键盘(PS2)的扩展、步进电机、红外线接受等等。在学校学的单片机是用汇编的,而实际工程要用的,大多数软件开发的编程人员都会选择单片机C语言来编程,对于汇编只是对初学者理清硬件是比较重要的。所以对于编程已经学得差不多的我,我在实习期间学会了单片机C语言编程。对于一般的编程是没有问题。在实习我还认清了一点,关于嵌入式系统设计,MCU是小工程是可以应付得到的,在未来两年的需求还是比较好,但过了两年,对于ARM的前景是相当乐观的,ARM做大工程是不错的。所以我们在学好单片机的基础上,我们要向ARM看,因为我们是未来人,就要用未来的眼光看问题,有瞻仰性。单片机给我一个学ARM的很好平台。对于protel 的电路板画图及焊板:已经灵活掌握画电路板的技巧,在实习期间我画过一张单片机开发板原理图和PCB图和一张原理图。实践中,明白了,画PCB板的时候是不能机器代替人手的,靠得住的还是自己,布局与布线都要手工布。为什么呢,因为简洁,容易给使用者使用,也方便自己以后的修改,检查,电路板的小型化。任何一张复杂的电路板都是经过手工布局布线的。以前在学校的实习,是关于做一个51单片机的实习,那一次我是比较有印象的,第一次接触比较近的电子类硬件。关于那个焊元件,特别是那两个贴片电容竟然用了半个小时都搞不电,但现在看来那是多么的无知,一分钟焊几个贴片电容或者贴片电阻都是没有问题的。总之学到很多,认识很多。 对于电路(数电、模电)部分:我以前看电路图,看都很多电阻、电容是在电路中是起什么作用的,为什么用了那么多,更不用说其它古怪形状的电子元件。对于一个电阻或者电容在电路中起到什么作用我们应该要明白。对于那些奇型怪状的元件我们要明白它是有什么作用的,对于各种常用的芯片(如:74lHC164、74HC138、74HC373、24c02/ 24c01、DS1302、光耦、稳压器等等)要知道它又是有什么用,不知道是什么的,要会怎样查它的作用。开关电源部分的原理。在短短的几天中,真的学了很多,特别我分配到那个组,具有不同的人员,他们都有自己技巧,有一些都有一些实战的经验的。积累很多工作经验。只要肯不耻下问,那就会学到很多东西。最后一句:基础很重要,实践也同样重要。 银浩 0806060135附录一系统总接线图原理图:附录二系统程序清单:/DS18B20的读写程序,数据脚P3.3 /温度传感器18B20汇编程序,采用器件默认的12位转化 /最大转化时间750微秒,显示温度-55到+125度,显示精度 /为0.1度,显示采用4位LED共阳显示测温值 /P0口为段码输入,P24P27为位选 /*/#include reg51.h#include intrins.h /_nop_();延时函数用#define Disdata P0 /段码输出口#define discan P2 /扫描口#define uchar unsigned char#define uint unsigned intsbit DQ=P33; /温度输入口sbit DIN=P07; /LED小数点控制uint h; uchar flag;/*温度小数部分用查表法*/uchar code ditab16=0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09;/uchar code dis_712=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf;/共阳LED段码表 0 1 2 3 4 5 6 7 8 9 不亮 - uchar code scan_con4=0x7f,0xbf,0xdf,0xef; /列扫描控制字uchar data temp_data2=0x00,0x00; /读出温度暂放uchar data display5=0x00,0x00,0x00,0x00,0x00; /显示单元数据,共4个数据和一个运算暂用/ -=/*11微秒延时函数*/void delay(uint t)for(;t0;t-);/*显示扫描函数*/scan()char k; for(k=0;k0; i-) /DQ=1;_nop_();_nop_(); DQ = 0;_nop_();_nop_();_nop_();_nop_();_nop_();/5usDQ = val&0x01; /最低位移出delay(6); /66usval=val/2; /右移一位DQ = 1;delay(1); /*18B20读1个字节函数*/从总线上读取一个字节uchar read_byte(void)uchar i;uchar value = 0;for (i=8;i0;i-)DQ=1;_nop_();_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论