基于ATMEGA16的温度测试系统_第1页
基于ATMEGA16的温度测试系统_第2页
基于ATMEGA16的温度测试系统_第3页
基于ATMEGA16的温度测试系统_第4页
基于ATMEGA16的温度测试系统_第5页
已阅读5页,还剩35页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1中国计量学院本科课程设计(论文)基于ATMEGA16的温度测试系统TEMPERATUREMEASURINGSYSTEMBASEDONATMEGA162学生专业机械电子工程班级08机电2班二级学院机电工程学院指导老师李运堂组长小组分工设计题目备注PCB图刘子文何佳宾硬件刘子文王其盟上位机程序戚雪珍下位机程序刘建叶林敏戚雪珍资料收集和论文整理王其盟基于ATMEGA16的温度测试系统无3目录摘要(3)方案设计与论证(3)1)单片机的介绍及选择(3)2)传感器的介绍及选择(4)硬件设计(6)1)开发板的结构原理(6)2)开发平台的基本配置(7)3)开发平台的基本功能(7)4)开发板硬件原理图(8)5)ATMEGA16单片机介绍(10)6)元器件清单(11)7)DS18B20温度传感器(12)软件设计(16)1)下位机软件设计(16)2)上位机软件设计(18)3)功能调试(19)结论(24)4基于ATMEGA16的温度测试系统摘要本文介绍了一种基于ATMEGA16单片机的温度采集控制系统,该系统能实现温度检测和数值显示,系统主要由温度采集、单片机控制、人机交互、串口通讯,输出控制几个单元组成。温度采集采用单总线数字传感器DS18B20进行采集,温度数据在传感器内部转化为数字信号并传送给单片机;单片机对传感器采集来的数据进行处理,通过液晶显示器1602把各个点的温度给显示出来,另一方面单片机可以通过串口通讯传给上位机,由上位机软件显示出来;该系统可以设定温度上下限值,当温度超出系统设定的范围时,系统会报警提示。上位机软件可以记录一段时间内的温度值,并可以通过曲线图表示出来。关键词ATMEGA6单片机;温度测试;温度传感器DS18B20;液晶显示DS1602;5TEMPERATUREMEASURINGSYSTEMBASEDONATMEGA16ABSTRACTTHISDISSERTATIONINTRODUCESATEMPERATURECONTROLSYSTEMBASEDONATMEGA16MCUTHESYSTEMCANACHIEVEDETECTIONOFTEMPERATUREANDNUMERICALDISPLAYTHESYSTEMISMAINLYMADEUPOFSOMEUNITSTHATARETEMPERATUREACQUISITION,MCUCONTROL,HUMANMACHINEINTERACTION,SERIALCOMMUNICATIONANDOUTPUTCONTROLTEMPERATUREACQUISITIONSYSTEMUSESSINGLEBUSDIGITALSENSORDS18B20TOCOLLECTTHETEMPERATURETHETEMPERATUREDATAISCONVERSEDTODIGITALSIGNALSINTHESENSORANDTHENISTRANSMITTEDTO6MCU,WHICHPROCESSESTHEDATAFROMSENSORACQUISITIONANDDISPLAYSTHETEMPERATUREONVARIOUSPOINTSTHROUGHTHELCDONTHEOTHERHANDMCUCANPASSTHROUGHTHESERIALPORTCOMMUNICATIONSPC,FROMPCSOFTWAREDISPLAYEDTHESYSTEMCANSETTEMPERATURELIMITSFROMTOPTOBOTTOM,WHENTHETEMPERATUREEXCEEDSTHELIMITSSETBYSYSTEM,THESYSTEMWILLPROMPTTHEPOLICECOMPUTERSOFTWARECANBERECORDEDOVERAPERIODOFTIMETHETEMPERATURE,ANDCANBEEXPRESSEDTHROUGHTHECURVESOUTKEYWORDSSINGLECHIPMICROCOMPUTERTEMPERATUREMEASUREDS18B20DS1602CLASSIFICATIONTP2一、方案设计与论证1、单片机的介绍及选择1)MCS51系列是我国较早引进的INTEL公司的单片机产品。它具有体积小,功能全,价廉,面向控制,应用软件丰富,技术在不断更新,开发应用方便等优点,可以适应各个领域的不同需要,因而具有极强的竞争力。MCS51系列单片机无论是片内RAM容量,I/O口功能,系统扩展能力,还是指令系统和CPU的处理功能都非常强。尤其是MCS51系列单片机适合于实时控制,可构成工业控制器,智能仪表,智能接口,智能武器装置以及通用测控单元等等。2)PIC系列单片机为近年来国内市场的力推产品。采用RISC(精简指令集计算机)技术,应用范围广,通用性强。此系列产品均为内置ROM(OTPROM及EPROM)型,不可在芯片外再扩充程序存储器,由于一次性可编程(OTP)ROM型芯片价格便宜,芯片封装精巧(DIP或SOP型),大大降低了成本,加之指令集易学习,入门较容易,再由多家厂商强力引导市场,使用7日渐广泛。最近,甚至有DIP8封装的低价格产品PIC12C系列面市,内置4MHZ时钟,有6个I/O口供使用,价格还不到十元,更能降低产品的成本。为照顾初学者,PIC系列单片机开发装置除提供常规的硬件仿真器外,还提供了价廉物美的纯软件仿真器,与OTP芯片编程器组成低价的开发套件,有多种产品可供选择。3)Z8系列单片机采用Z80兼容指令集。它曾被誉为设计得最成功的8位MPU(微处理器),被首先以单板机的形式引于国内,国内早期对其开发应用十分广泛,因此,软件资源十分丰富为其极大的优势。Z8系列单片机的价格也非常有竞争力,最便宜的OTP产品也在十元以内,并且功能强大。4)AVR单片机是ATMEL公司1997年推出的RISC单片机。高可靠性、功能强、高速度、低功耗和低价位,在单片机市场中占据很大地位。RISC(精简指令系统计算机)是相对于CISC(复杂指令系统计算机)而言的。RISC并非只是简单地去减少指令,而是通过使计算机的结构更加简单合理而提高运算速度的。RISC优先选取使用频率最高的简单指令,避免复杂指令并固定指令宽度,减少指令格式和寻址方式的种类,从而缩短指令周期,提高运行速度。由于AVR采用了RESC的这种结构,使AVR系列单片机都具备了1MIPS/MHZ(百万条指令每秒/兆赫兹)的高速处理能力。AVR单片机吸收了DSP双总线的特点,采用HARVARD总线结构,因此单片机的程序存储器和数据存储器是分离的,并且可对具有相同地址的程序存储器和数据存储器进行独立的寻址。在AVR单片机中,CPU执行当前指令时取出将要执行的下一条指令放入寄存器中,从而可以避免传统MCS51系列单片机中多指令周期的出现。传统的MCS51系列单片机所有的数据处理都是基于一个累加器的,因此累加器与程序存储器、数据存储器之间的数据转换就成了单睛机的瓶颈;在AVR单片机中,寄存器由32个通用工作寄存器组成,并且任何一个寄存器都可以充当累加器,从而有效地避免了累加器的瓶颈效应,提高了系统的性能。AVR单片机具有良好的集成性能AVR系列的单片机都具备在线编程接口,其中的ATMEGA系列还具备JTAG仿真和下载功能;都含有片内看门狗电路、片内程序FLASH、同步串行接口SPI;多数AVR单片机还内嵌了AD转换器、EEPROM、摸拟比较器、PWM定时计数器等多种功能;AVR片机的I/O接口具有很强的驱动能力,灌电流可直接驱动继电器、LED等器件,从而省去驱动电路,节约系统成本。AVR单片机采用低功率、非挥发的CMOS工艺制造,除具有低功耗、高密度的特点外,还支持低电压的联机FLASH,EEPROM写入功能。AVR单片机还支持BASIC、C等高级语言编程。采用高级语言对单片机系统进行开发是单片机应用的发展趋势。对单片机用高级语言编程可很容易地实现系统移植,并加快软件的开发过程。AVR单片机具有多个系列,包括ATTINY、AT90、ATMEGA。每个系列又包括多个产品,它们在功能和存储器容量等方面有很大的不同,但基本结构和原理都类似,而且编程方也相同。AVR单片机系列齐全,可适用于各种不同场合的要求。AVR单片机共分为三个系列低档ATTINY中档AT90高档ATMEGAAVR单片机是ATMEL公司1997年推出的RISC单片机。与其他单片机相比,它具有高可靠性、功能强、高速度、低功耗和低价位,在单片机市场中占据很大地位。AVR单片机共分为三个系列低档ATTINY中档AT90高档ATMEGA。ATMEGA16是基于增强的AVRRISC结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATMEGA16的数据吞吐率高达1MIPS/MHZ,从而可以缓减系统在功耗和处理速度之间的矛盾。8综上所述,此次设计选用AVR单片机作为控制系统。2、温度传感器的介绍及选择1)模拟温度传感器有多种输出形式(绝对温度、摄氏温度和华氏温度)以及电压偏移值。后者让组件在使用单电源的情形下就能对负温度值进行监测。模拟温度传感器的输出还可以送到比较器来产生超温指示信号,或直接送到模拟数字转换器的输入,用来显示实时温度数据。模拟温度传感器适合需要低成本、小体积和低功耗的应用。2)数字温度传感器对于更紧密控制能力、更高精度和更大分辨率的需求带动了数字温度传感器的发展。被测温度信号从敏感元件接收的非电量到转换为微处理器可处理的数字信号,环节较多,而且模拟信号在长距离传输的过程中,受到的干扰较多,误差较大。因此,从非电量转换到数字信号,一般将其处理过程集成在单片IC器件体内部,这样就形成了功能强大,精确的数字传感器。12研究内容采用软硬件综合设计的方法实现温度测试,报警和描绘出温度的变化曲线。数字式传感器与模拟传感器相比,由于采取高集成度设计和数字化处理,在可靠性、干扰能力以及器件微小化方面都有明显的优点。DS18B20是美国DALLAS半导体公司生产的可组网数字式温度传感器,它使用1WIRE(单线)接口,这种总线只需要一条I/O线进行数据传输,及尽简化之能事。这种集成化的智能温度传感器与模拟传感器最大的区别是将温度信号直接转化成数字信号,然后通过串行通信的方式输出。DS18B20具有微型化、低功耗、高性能、抗扰能力强、易于与微处理器接口等优点适合用于各种温度测控系统。综上所述,本次设计采用数字式温度传感器DS18B20。二、硬件设计选用ATMEL公司的AVR型单片机ATMEGA16为核心的单片机开发板和DS18B20字温度传感器等一些其他元器件进行硬件的焊接,调试电路,对选用的单片机进行软件设计,实现温度检测的功能,下位机使用RS232通信口,通过串口设计,实现与PC机的串口通讯,在上位机中实现温度显示、上下限设定和报警功能,并可以对一段时间内采集到的温度值进行图象处理,从而反映出温度变化过程。1、开发板的结构原理为掌握常见非电量的检测方法,同时巩固和加强学生已经掌握的相关单片机知识和电子技术,该课程设计选用了一种基于ATMEL公司的AVR型单片机ATMEGA16为核心的单片机开发板。开发板的结构原理如图21所示。元件标号解释1、ATMEGA16单片机8、单片机扩展口2、RS232转换芯片9、LCD调节电位器3、9芯RS232通信口(孔)10、16X2液晶屏4、ISP下载口11、电机驱动口95、单片机复位键12、电机驱动电路6、功能键(4个)13、电源接口(交流612V)7、模拟量输入口(4通道)14、系统电源部分图21开发板系统结构图1、开发平台基本配置本课程设计开发板基本组件包括1、AVR单片机开发板一块;2、9针串口通信线一条;3、12V小变压器一个,带电源线;4、RT1602C液晶屏一块;5、ISP下载线一条;6、PC并口线一条;7、资料光盘一张;8、DS1820温度传感器;9、通用电路板;2、开发平台的基本功能由于采用了AVR高性能单片机ATMEGA16为开发板核心,再配合其他外围电路,使得该板具有丰富的外设和测量与控制功能。其中主要功能包括11、3路PWM输出,816位可编程分辨率,适用于电机调速控制等22、3个定时/计数器,2个8位,1个16位;33、8路10位ADC,可实现05V单极性信号测量;采样速率达15KSPS,可实现大多数模拟式传感器的信号测量;4板载一个功率NMOS管和一个光电耦合器,分别连接到单片机的一路PWM输出和一路计数器,可直接实现小功率直流电机的调速和转速测量;5具有标准RS232的通讯接口,方便和PC机进行通讯控制;106具备液晶显示器和键盘操作接口;7具备ISP在线编程调试功能,编程软件可选汇编或C语言开发软件;3、开发板硬件原理图ISP下载线如图22示,开发板的电路原理图见图23示,ISP下载线的PCB板中标“”号的电阻均为22K,其余电阻为100欧。根据该原理图和元件制作出实物电路板,并调试成功。图22ISP下载线原理图11图23开发板原理图124、ATMEGA16单片机介绍ATMEGA16单片机是ATMEL公司的基于增强的AVRRISC结构的低功耗8位微控制器,具有先进指令集及单周期指令执行时间,使ATMEGA16的数据吞吐率高达1MIPS/MHZ。ATMEGA16单片机的主要特性如下先进的RISC结构16K字节的系统内可编程FLASH,擦写寿命10,000次512字节的EEPROM,擦写寿命100,000次1K字节的片内SRAMJTAG接口(与IEEE11491标准兼容)外设两个具有独立预分频器和比较器功能的8位定时器/计数器一个具有预分频器、比较功能和捕捉功能的16位定时器/计数器具有独立振荡器的实时计数器RTC四通道PWM8路10位ADC8个单端通道面向字节的两线接口两个可编程的串行USART可工作于主机/从机模式的SPI串行接口具有独立片内振荡器的可编程看门狗定时器片内模拟比较器I/O和封装32个可编程的I/O口40引脚PDIP封装,44引脚TQFP封装,与44引脚MLF封装工作电压ATMEGA16L2755V速度等级08MHZATMEGA16LPDIP40封装的ATMEGA16单片机管脚图如图24示。5、元器件清单13硬件系统中所用元件如下表所示6DS18B20温度传感器DS18B20的主要特性1适应电压范围更宽,电压范围3055V,在寄生电源方式下可由数据线14供电。2独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。3DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。4DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。5测温范围55125,在1085时精度为05。6可编程的分辨率为912位,对应的可分辨温度分别为05、025、0125和00625,可实现高精度测温。7在9位分辨率时最多在9375MS内把温度转换为数字,12位分辨率时最多在750MS内把温度值转换为数字,速度更快。8测量结果直接输出数字温度信号,以一线总线“串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。9负压特性电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。DS18B20的外形和内部结构DS18B20内部结构主要由四部分组成64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。15DS18B20工作原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2S减为750MS。DS18B20测温原理如图33所示。DS18B20测温原理框图16图33中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图33中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。DS18B20主要数据部件DS18B20主要有四个数据部件1光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是开始8位28H是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码CRCX8X5X41。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。2DS18B20中的温度传感器可完成对温度的测量,以12位转化为例用16位符号扩展的二进制补码读数形式提供,以00625/LSB形式表达,其中S为符号位。这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于00625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于00625即可得到实际温度。例如125的数字输出为07D0H,250625的数字输出为0191H,250625的数字输出为FF6FH,55的数字输出为FC90H。温度数据表如表3。17DS18B20温度采集电路三、软件设计软件设计分成两部分,一部分直接置于硬件平台上,称为下位机软件,主要完成现场温度数据采集、运行控制算法、输出控制量、现场参数设定、现场参数数码管显示等底层功能,所有工作通过建立在硬件平台的软件模块由单片机主程序组织在一起构成系统软件平台,所以是软硬件综合设计的结合点;另一部分用于与上位管理机进行通讯,称为通讯软件,它主要完成与上位管理机的通讯,传递现场数据、状态和接受上位机指令等工作。下位机软件一方面要充分发挥硬件平台的潜力,在现有硬件资源的条件下,让系统根据实际温度测试系统的工艺要求完成更多的工作,从而节省硬件成本费用;另一方面,系统软件平台是用户二次开发的主要依据,为了缩短开发周期,其软件实现的主要功能都可以做成标准模块,方便二次开发使用。下位机软件遵循一定的协议通过通讯程序和上位18机进行通讯,就可以互传数据。这样不但可以实现远程控制,而且可以有更好的人机对话界面。1、下位机软件设计温度检测系统以ATMEGA16单片机为核心,它控制RT1602CLCD液晶屏的显示、DS18B20数字温度传感器的数据传送、按键的响应、串口通讯等。图41单片机控制示意图键盘的按键可以通过ATMEGA16来控制温度上下限的增减,ATEMEGA16控制液晶屏的显示,DS18B20采集到的温度通过ATEMEGA16中的程序显示到液晶屏,并可将数据通过PC通讯将数值传给上位机软件,同时温度上下限值也通过PC通讯传可给上位机软件,上位机软件设定的上下限值同样可通过串口通讯传给液晶屏显示。利用四个按键来对温度上下限值进行调整,第一个键设定下限温度值的降低,第二个键设定下限温度值的升高,第三个键设定上限温度的降低,第四个键设定上限温度值的升高。温度传感器DS18B20的读写流程图如图4219图42温度传感器DS18B20的读写流程图下位机软件设计采用模块化的方法,主要有主程序、键盘扫描以及按键处理程序、温度测试采集程序、数码管显示程序,串口通讯程序等。键盘扫描电路及按键处理程序实现按键的识别及相关处理。温度测试采集程序对温度芯片送过来的数据进行采集和处理。数码管显示程序向数码的显示传送数据,控制系统的显示部分。串口通讯程序实现下位机通过串口和PC机进行通讯,互传数据。下位机的软件编程可以由很多种语言编写,而C语言作为一种高级语言,在单片机程序编写中占据很大地位。按键及显示流程图如图43。20图43按键和显示流程图2、上位机软件设计利用MICROSOFTVISUALBASIC软件制作上位机温度监控预警的应用程序,该应用程序可以通过串口和单片机互传数据。该应用程序可以利用下位机的串口程序而改变单片机液晶屏上显示的一些数据,如果温度超限,上位机软件和下位机的显示屏都可以报警。上位机温度监控软件包括当前温度显示、当前下限温度显示、当前上限温度显示和状态显示温度(正常、太高、太低)。上位机软件界面上有报警图标,正常则为蓝色,如果超限则图标由原来的蓝色变为红色。该软件还可以由用户输入温度的上限和下限值,点击下载按钮后,用户所设定的温度下限和上限值可以由计算机直接传给单片机,单片机显示屏上的下限和上限温度值就会随用户设定的值而改变。上位机软件利用MICROSOFTVISUALBASIC软件的MSCOMM控件通过串口和单片机互传数据,上位机应用程序启动时首先通过程序自动将MSCOMM控件安装到指定目录,从而做好准备工作。然后利用程序设置好MSCOMM控件的以下参数,为传输数据做好准备。MSCOMM1COMMPORT1其作用是对COM1口进行操作MSCOMM1SETTINGS“9600,N,8,1“设置波特率为9600不作奇偶校验821位数据位,1个停止位MSCOMM1RTHRESHOLD1设置事件发生传输数据时的传输字符数为1MSCOMM1PORTOPENTRUE将串口打开设置好参数后如果事件发生则可以传输数据,点击上位机应用程序的下载按钮则可以将用户输入的数据下载到缓存区,单片机可以接受数据并改变显示屏上限和下限温度值,考虑到温度传感器的测量范围和以免用户错误输入非数字的字符等要求,用户输入的数据已经由上位机应用程序作了一些限制(只能输入55到125之间的整数),以免数据传输到单片时出错,该应用程序由当前温度值和温度的上限和下限的数据比较来判断显示状态是正常、太高还是太低,判断之后利用程序来改变报警图标的颜色,并且是否调用响铃程序。如果温度超限,则调用响铃程序,从而有响铃报警。上位机响铃可执行程序是用C编写的,当温度超过所设定值时,上位机软件就会调用响铃可执行程序,从而实现声音报警。3、功能调试上位机软件可以显示当前温度值、当前所设定的温度下限值和上限值、显示报警的状态,可以设定温度上下限值,可以描绘未来24小时(或者24秒)内的温度曲线,从而反映出一段时间内的温度变化。此上位机软件可以显示开始测量温度时的日期和时间,它具有记忆功能,可以描绘出最近一次测量过的温度曲线,并且可以显示上一次测量的时间。当温度超过所设定的上限值时,状态显示太高,当温度低于所设定的下限值时,状态显示太低,并且当温度显示太高或太低的同时,状态的颜色由正常状态的蓝色变为报警时的红色,并且有声音报警发出。22图51的界面显示了当前由下位机通过串口通讯传过来的当前温度值,温度下限值和温度上限值,状态显示“正常”,则表示前温度值在所设定的温度下限和温度上限之间。在温度下限设定输入框内和温度上限设定输入框内输入数据后点击下载按钮,则所设的温度上限和下限值就会下载到下位机的单片机内,下位机的显示屏和上位机软件都可以显示新的温度上下限值。在温度曲线的绘图过程中,横坐标选用24小时时,系统每分钟采集一次温度值,并在坐标内描绘出温度曲线图;横坐标选用24秒时,系统每秒采集一次温度值,并在坐标内描绘出温度曲线图。温度曲线可以描绘的温度范围为2050。点击温度曲线描绘按钮,则开始在温度曲线坐标系内描绘温度变化,点击添加辅助线按钮,可以添加红色的辅助线,点击上次测量曲线图,则可以显示上一次所描绘的温度曲线。图52为横坐标选用24秒,所测的温度变化。23图53为横坐标选用24小时,所测的温度变化,此次曲线图也表示了上位机软件具有记忆功能,它可以记录上一次的温度变化,并且记录了上一次温度测量的开始描绘时间。24图54显示当当前温度高于所设定的温度上限值时,所显示的软件界面,此时状态显示“太高”,并且图标由原来的正常蓝色变为不正常的红色,同时有声音发出报警。25图55显示当当前温度低于所设定的温度下限值时,所显示的软件界面,26此时状态显示“太低”,并且图标由原来的正常蓝色变为不正常的红色,同时有声音发出报警。27四、结论通过这次比较完整的基于ATMEGA16温度测试系统设计,锻炼了我们理论和实践相结合的综合能力,巩固了我们所学的专业基础知识,提高了我们解决实际工程问题的能力,同时也提高我们查阅文献资料、设计手册、设计规范的动手能力,通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,经验得到了丰富,并且意志力,抗压能力也都得到了不同程度的提升。这正是我们进行毕业设计的目的所在。虽然毕业设计内容繁多,过程繁琐但我的收获却更加丰富。各种系统的适用条件,各种电子元件的选用,程序的编写,我都是随着设计的不断深入而不断熟悉并学会应用的。和老师的沟通交流更使我对设计有了新的认识也对自己提出了新的要求。正是这一次设计让我积累了很多经验,也必然会让我在未来的工作学习中表现出更高的应变能力,更强的沟通力和理解力。顺利的完成本次毕业设计给了我很大的信心,让我了解专业知识的同时也对本专业的发展前景充满信心,在设计中我感到自己有不足之处,这些不足正是我们去更好的研究,更好的创造的最大动力,只有发现问题,才有可能解决问题,不足不会给我打击只会更好的鞭策我前行,今后我更会关注新技术,并争取尽快的掌握这些先进的知识,更好的为祖国的四化服务。28参考文献1黄智伟数字温度传感器的设计J传感器技术,2002,21931332严天峰AD7416数字温度传感器及其应用J电子世界,2001634353刘鸣,车立新,陈兴梧温度传感器DS18B20的特性及程序设计方法J电测与仪表2001,1047514吴坚,虞中伟,陈辉堂基于LONWORKS现场总线技术的分布式温度检测系统设计J子与自动化,2000,617195金伟正单线数字温度传感器的原理与应用J电子技术应用,2000666686王俊省微计算机检测技术及应用M北京电子工业出版社,19991471517沙占友DS1820组成的单线数字温度计原理与应用J电测与仪表,1999,22528孙海岩安培型电化学传感器在大气质量监测中的应用J传感器世界,199782229姜云柏,韩怀成,包文毅,孙卫东主从式RS485串行通讯在实际中的应用J信技术,200137810邹彩梅,叶振华PDA与单片机串口通信的实现J电子世界,20042343511薄玮多线程在串口通信中的应用模型研究J陕西教育学院学报,2007011141112殷志华,郑海,杨浩单片机与PC机串口通信的实现J中国数据通信,200401677013黄良沛,黄昕,阳小燕DELPHI环境中利用MSCOMM实现PLC与上位机的串口通J计算机应用与软件,20050412612814宋光德,韩旭明用MSCOMM控件实现微机单片机串口通信J微计算机应用199906343715陈功贵基于WINDOWS平台的串行端口通信程序设计J湖北民族学院学报(自科学版),200002727416JIWEICHEN,BINGXUESHICIRCUITDESIGNOFANONCHIPTEMPERATURECOMPENSAT29CONSTANTTRANSCONDUCTANCEREFERENCEJKLUWERACADEMICPUBLISHERS,2003,3721522217JAMESMBAKER,JRASINGLECHIPMESSAGEPASSINGPARALLELCOMPUTERJKLUWACADEMICPUBLISHERS2004,30133149附录A1、下位机程序/PD418B20数据口PC07液晶数据口PA5,PA6,PA7RS,RW,EN/INCLUDE“IOM16VH“INCLUDE“MACROSH“INCLUDE“STDLIBH“INCLUDE“LCDH“DEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTDEFINEDQ0PORTD/VOIDDELAY_USUCHARNTCCR00X00/STOPTCNT0255NTCCR00X02/8分频,开始计数WHILETIFR/中断产生标志位会置1TCCR00X00TIFR/标志位清零,PDF上说明标志位通过写1清零/初始化18B20/UCHARINIT_18B20VOIDUCHARERROR/DQ1DQ0DELAY_US250DELAY_US250DQ1/PD41DELAY_US50DDRD/PD4方向变为输入IFPIND/说明初始化失败DDRD|BIT4/方向输出ELSE31ERROR0/初始化成功DDRD|BIT4/方向输出DQ1/PD41DELAY_US200RETURNERROR/向单总线写1BYTE/VOIDWRITE_18B20UCHARWDATAUCHARIDDRD|BIT4FORI0I1DELAY_US100DQ1DELAY_US10/从单总线读取1BYTE/UCHARREAD_18B20VOIDUCHARIUCHARTEMP0/存储1BYTEFORI0I1DQ0DELAY_US6DQ1DELAY_US8DDRDIFPINDDELAY_US100DDRD|BIT4/方向输出DQ1DELAY_US1032RETURNTEMP/完成一次转换并读取温度值/UINTDO_1CONVERTVOIDFLOATTTUCHARAUCHARTEMP_LOWUINTTEMP,IDOAINIT_18B20WHILEA/ERROR赋值给A,直到完成初始化成功WRITE_18B200XCC/跳过读取ROM的IDWRITE_18B200X44/CONVERT转换FORI7500I0IDELAY_US100/延时800000US800MSDOAINIT_18B20WHILEAWRITE_18B200XCC/跳过读取ROM的IDWRITE_18B200XBE/读取SCRATCHPAD寄存器命令/TEMP_LOWREAD_18B20/读取低8TEMPREAD_18B20/读取高4TEMPTEMP0XFORY110Y0Y33VOIDWRITE_COMUCHARCOMCLR_RSCLR_RWCLR_ENPORTCCOMDELAY5SET_ENDELAY5CLR_ENVOIDWRITE_SHUJUUCHARSHUJUSET_RSCLR_RWCLR_ENPORTCSHUJUDELAY5SET_ENDELAY5CLR_ENVOIDLCDRESETVOIDWRITE_COM0X38/设置显示点阵00111000WRITE_COM0X0C/00001DCBWRITE_COM0X06/000001NSN1,S0,表示当读或写一个字符后地址指针加一WRITE_COM0X01/清零WRITE_COM0X80/第一行/VOIDMEASURE_DATAVOIDUCHARVAL6,I,AAFLOATTT0UINTTEMP,VTEMPDO_1CONVERTTTTEMP00625VTT100VAL0V/10000VAL1V10000/1000VAL2V1000/10034VAL310/0X2E对应小数点VAL4V100/10VAL5V10FORI0ITHDISPSTR9,1,“HIGH“ELSEDISPSTR9,1,“NORMAL“ELSEDISPSTR9,1,“ERROR“VOIDINIT_DEVICESVOIDCLIPORT_INITUART0_INITMCUCR0X0A/上升沿中断INT1GICR0XC0/使能INT0,INT1,INT2TIMSK0X40/TIMER1溢出中断使能TOIE1位SEI/VOIDGET_VALVOIDTHCOM_IN_BUF04810COM_IN_BUF148/TH设定值从数字0,1位取出TLCOM_IN_BUF24810COM_IN_BUF348/VOIDMAINVOIDINIT_DEVICESLCDRESETFLAG035DISPSTR0,0,TABLEWHILE1IFFLAGIFNUM1DISPSTR0,0,SET_MODEDISPSTR0,1,SET_HDISP1CHAR9,1,0X30TH/10DISP1CHAR10,1,0X30TH10DISPSTR11,1,“IFNUM2DISP1CHAR7,1,LDISP1CHAR9,1,0X30TL/10DISP1CHAR10,1,0X30TL10DISPSTR11,1,“IFNUM0DISP1CHAR9,1,DISP1CHAR10,1,MEASURE_DATAELSEMEASURE_DATA/INTERRUPTISR/PRAGMAINTERRUPT_HANDLERINT0_ISR2VOIDINT0_ISRVOIDDELAY5MSWHILEPIND36NUMFLAG1IFNUM1LCDWRITECOMMAND0X01,0/显示清屏IFNUM3FLAG0NUM0LCDWRITECOMMAND0X01,0DISPSTR0,0,TABLEPRAGMAINTERRUPT_HANDLERINT1_ISR3VOIDINT1_ISRVOIDDELAY5MSWHILEPINDIFFLAGSWITCHNUMCASE1THIFTH99TH0BREAKCASE2TLIFTL99TL0BREAKDEFAULT_NOPBREAKELSE_NOP2、上位机程序OPTIONEXPLICITDIMOPENFLAGASBOOLEANDIMIASINTEGER37PRIVATESUBCMDOPEN_CLICKIFOPENFLAGTHENCMDOPENCAPTION“打开串口“MSCOMM1PORTOPENFALSE打开端口SHAPE1FILLCOLORHC0棕色LABEL3“COM“1“关闭“ELSECMDOPENCAPTION“关闭串口“MSCOMM1PORTOPENTRUE打开串口SHAPE1FILLCOLORVBYELLOWLABEL3“COM“1“打开“ENDIFOPENFLAGNOTOPENFLAGENDSUBPRIVATESUBCOMMAND4_CLICKTEXT3TEXT“ENDSUBPRIVATESUBCOMMAND5_CLICKTEXT3TEXT“08机

温馨提示

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

评论

0/150

提交评论