基于单片机AT89C52的粮仓温度测量系统的设计.doc_第1页
基于单片机AT89C52的粮仓温度测量系统的设计.doc_第2页
基于单片机AT89C52的粮仓温度测量系统的设计.doc_第3页
基于单片机AT89C52的粮仓温度测量系统的设计.doc_第4页
基于单片机AT89C52的粮仓温度测量系统的设计.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

2012届毕业生毕业设计说明书题 目: 基于单片机粮仓温测系统的设计 院系名称: 信息学院 专业班级: 电科 学生姓名: 学 号: 指导教师: 教师职称: 2012 年 6 月 1 日III摘 要随着科学与社会的进步和发展, 温度在人们的日常生活生产中起着越来越重要的作用.例如在现代农业大棚,在农产品存储,运输,国家的大型粮仓的粮食存储,温度都是一个很重要的参数。随着社会需求自动化程度会越来越高,电子技术和微型计算机技术的长足进步, 微机测量和控制技术得到了迅速的发展和广泛的应用。微机与下位机相结合实现更为友好的人机界面,是未来社会发展的必然趋势。 鉴于数字传感器的速度快,分辨率高,并且完全能够胜任粮仓温度检测方面精度及准确度的要求。本设计以AT89C52单片机为核心,选用DS18B20为数字温度传感器对温度进行多点检测;使用DS18B20时,应先通过软件对它进行初始化,然后再由单总线进行读取测到的温度,然后再通过LCD液晶显示器进行实时显示,当温度过高时,启动警报模块,发出警报从而启动风扇进行通风进而散热,从而达到目标的温度。硬件部分采用模块化设计方法,主要包括: 电源电路, 温度测量模块, 报警模块, TFTLCD液晶显示模块,外围接口电路(与测温电缆的接口及下载程序接口)等。本系统经过实验调试及现场模拟测试,系统能够实现所要实现目标的各个功能,且能够长期稳定运行。关键词: AT89C52、 数字温度传感器 单总线 Title The design of Grain storage temperature measurement system based on hardware Abstractwith the social progress and the development of scientific and technological, the temperature has played an important role in the modern agricultural production. For example, in the modern agricultural greenhouses, the agricultural storage, transportation, countries large granary of food storage, temperature is a very important parameter. with the improvement of social needs ,the development micro-electronic technology and the considerable progress of computer technology, computer measurement and control technology has been rapid development and wide application. Computer and the next crew combined to achieve a more friendly interface, it is the development trend of future society.Given the speed of the digital sensor, high resolution, and fully capable of granary temperature detection precision and accuracy requirements, this design is AT89C52 microcontroller as the core;Use of DS18B20 should be initialized by software, and then through the LCD monitor in real-time display, When the temperature is too high to start the alarm module, issue the alert in order to start the fan for ventilation; The hardware part of the modular design method, including: the power supply circuit, the temperature measurement modules, alarm modules, TFTLCD liquid crystal display module, the peripheral interface circuit After commissioning of the system test and field simulation tests, the system can realize the various functions to achieve the goal, and it can be long-term stable operation.Keywords: AT89C52 Digital Thermal Sensor Single bus目 次1 绪论11.1 本系统设计的意义和目的11.2 国内粮情测控系统的现状21.3 国内粮情测控系统的发展趋势21.4 论文的结构安排32 本毕业设计的方案的选择与论证。42.1 常用温度的主要测量方法:42.2 红外测温方法:42.3 热敏电阻测温方法:52.4 数字温度传感器方法:52.5 单点点测量与多点测量:63 本测温系统的方案硬件设计的实现。73.1 总体的硬件设计框图:73.2 单片机最小系统的设计:73.3 温度采集模块:83.4 显示模块:93.5报警模块:123.6 复位电路:123.7 时钟电路:134 粮仓测温系统的软件设计144.1 软件设计总体规划144.2 温度采集子程序164.3温度显示程序:17结 论20致 谢21参考文献22附录1:系统总体连接图23附录2:主要程序241 绪论随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的。单片机在测控领域中具有十分广泛的应用,它既可以测量电信号,又可以测量温度湿度等非电信号。由单片机构成的温度检测、温度控制系统可广泛应用于很多领域。单片机在工业控制、尖端武器、通信设备、信息处理、家用电器等各测控领域的应用中独占鳌头。今天,我们的生活环境和工作环境有越来越多称之为单片机的小电脑在为我们服务。人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。温度是工业控制中主要的被控参数之一, 随着社会的进步和工业技术的发展, 人们越来 越重视温度因素特别是在冶金,化工,建材,食品,机械,石油等工业中,具有举足重轻 的作用.同时温度也是现代化农业生产的主要参数之一,例如在现代农业大棚,在农产品存储,运输,国家的大型粮仓的粮食存储,温度都是一个很重要的参数。因此温度检测在工农业的生产过程中都扮演着重要的角色,同时,随着社会的发展,自动化程度会越来越高, 随着电子技术和微型计算机的迅速发展, 微机测量和控制技术得到了迅速的发展和广泛的应用。微机与下位机相结合实现更为友好的人机界面,是未来社会发展的必然趋势。1.1 本系统设计的意义和目的粮食对发展中国家来说,是基本的物质基础,因为我们没有全球资源控制能力,不会通过战争来控制资源价格,而没有全球资源做抵押,就只有走实体经济这个路,和西方某些国家的虚拟经济,多印钞票就能解决问题,是不一样,粮食是咱们国家的经济基础,粮食的安全,质量和数量将直接影响社会的稳定与安全,所以我们就要进一步改善我们国家的粮食存储体系。但是我们国家目前的现状是国家百分之八十的粮食存储方法仍然是原始存储方式,这种方式常常不可能及时的反应粮食的温湿度,害虫密度等指标,从而造成粮食发霉变质,其损失不可估量。所以开展科学的粮食存储技术刻不容缓,而其中粮情测控技术就显得尤为重要。本设计设计的目的是可以很好的实时的检测粮仓温度的变化,并显示出来,当温度过高时,启动散热功能,达到降温的功能,从而延长粮食的存储时间。兵以民为本、民以食为天,而粮食的储备多少及存储时间的长短直接影响着国家的安全问题,对国家具有重大的战略性意义。传统的温度检测以热敏电阻和AD590为温度敏感元件。热敏电阻的成本低,但需后续信号处理电路,而且可靠性相对较差;但测温准确度低,检测系统也有一定的误差。因此,利用新型温度传感器取代旧式的温度传感器是必然的趋势,新型的温度传感器的优势越来越得到体现,越来越普及。单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,成为自动化和各个测控领域中必不可少且广泛应用的器件,尤其在日常生活中也发挥越来越大的作用。1.2 国内粮情测控系统的现状我们知道粮情的测控技术是粮食存储的基础和关键,目前国内已有数十家企业生产粮情测控系统产品,品种多样,系统结构各异,但其基本功能无外乎仓内外温湿度检测、粮食内部湿度检测及分析、通风机械的控制等几项.鉴于粮食存储的特点,粮食内部温度的检测都被人们放在了重点。我们常常依据系统采用的温度传感器来对粮情测控系统进行分类,通常粮情测控系统主要选用选用的温度传感器是热敏电阻和数字式温度传感器,也有选用其它温度传感器,例如PN结型温度传感器。 1.3 国内粮情测控系统的发展趋势随着我们技术的成熟和更多新技术的不断发展,预计将来我国的粮情测控系统将在以下的几个方面得到进一步的发展:第一,在同一粮情测控系统中热敏电阻和数字温度传感器的混合使用。我们知道,数字温度传感器和热敏电阻它们各具特点,而现存的粮情测控系统中只能选择数字温度传感器或热敏电阻二者之一作为温度检测元件。为了更好地发挥这二者各自的优势,我们可以肯定的说在同一粮情测控系统中混合选用这两种传感器是未来市场发展的需求之一。其次,系统功能将得到更进一步的发展。现在的粮情测控系统的功能基本局限在温湿度的检测和通风的控制,而水分检测和虫害检测均未得到解决,预计未来的粮情测控系统将会把更多种类的粮情检测综合数据采集上来,与粮情专家分析软件密切配合,共同保障粮食的储藏安全。1.4 论文的结构安排本论文具体内容包括以下几个方面:第一章介绍毕业设计课题研究的目的和意义;国内粮情测控系统发展状况、主要存在的问题及解决办法和国内粮情测控系统的发展趋势。第二章介绍本毕业设计的方案的选择与论证。第三章介绍了整个粮情测控系统整个硬件电路的设计:包括粮情测控系统的温度采集模块、 报警模块, TFT LCD液晶显示模块,外围接口电路等,并介绍了电路中应用到的芯片原理。第四章主要介绍本系统的软件设计框图及流程图,并附带运行结果。第五章 结束语2 本毕业设计的方案的选择与论证。 2.1 常用温度的主要测量方法: 我们这个系统要测温度,我们就首先讨论一下常见的测量温度的方法。如表2-1为常用温度的测量方法: 表2-1 常用测温方法对比测温方法温度传感器测温范围(C)精度(%)接触式热电偶-20018000.21.0热电阻-503000.10.5非接触式红外测温-5033001其它示温材料-3520001 那么下面我们就论证一下各个测量方法对本系统的温度测量的可行性。 2.2 红外测温方法:在自然界中,当物体的温度高于绝对零度时,由于它内部热运动的存在,就会不断地向四周辐射电磁波,其中就包含了波段位于0. 75100m 的红外线.红外测温仪就是利用这一原理制作而成的,原理:通过红外探测器(热敏探测器和光电探测器)将红外辐射能量测出并转变成电信号,再根据辐射基本定律转换为温度。接触式:使测温元件与被测对象有良好的热接触,通过传导和对流达到热平衡来进行温度的测量 红外测温方法的优点:( 1 ) 红外测温是非接触测量。因此它可以用于温度过高或过低、高电压的区域以及高速运转的机械温度的测量, 而测量者不必靠近这些危险的环境。 ( 2 ) 红外测温反应速度快。因为它不像通常温度计那样,要等待温度计内测温物质与被测物体达到相同的温度, 而只要接收到被测物体的红外线即可。反应时间一般很短,可以忽略不计。( 3 ) 红外测温精确度高。红外测温是不接触测量温度,这样测量过程不会改变被测物体的温度,所以测量结果真实可靠。(4)红外测温灵敏度高。根据,物体辐射能量跟温度4 次方成正比, 所以只要温度有微小的变化, 辐射能量就会有明显的变化。(5)红外测温范围大。红外测温的原理决定了其测温范围大于通常的温度计。现在实用的红外测温仪一般分为高、中、低三类,测温范围分别为:700以上、100700、100以下。红外测温法的主要缺点: ( 1 )易受环境因素影响(环境温度,空气中的灰尘等)。( 2 )对于光亮或者抛光的金属表面的测温读数影响较大。( 3 )只限于测量物体外部温度,不方便测量物体内部和存在障碍物时的温度。但由于受被测对象的发射率影响,几乎不可能测到被测对象的真实温度,测量的是表面温度。鉴于红外测温以上的特点,它常用于人体温度的测量,而不适用于本课题的粮仓温度的测量。2.3 热敏电阻测温方法: 热敏电阻器是敏感元件的一类,按照温度系数不同分为正温度系数热敏电阻器(PTC)和负温度系数热敏电阻器(NTC)。热敏电阻器的典型特点是对温度敏感,不同的温度下表现出不同的电阻值。 热敏电阻的主要特点是:灵敏度比较好,10-6的温度变化都被能检测出,因为它的电阻温度系数要比金属的大几十倍以上,;体积小,所以对那些空隙比较小的东西,也可以用热敏电阻进行测量;相对于其他的温度计它的正常的工作温度范围宽,有低温器件、常温器件和高温器件三种,可以测不同的温度,例如-27355适用于低温器件,-55315适用于常温器件,温度高于315(目前最高可达到2000)适用高温器件。热敏电阻的主要缺点:阻值与温度的关系非线性严重;元件的一致性差,互换性差;元件易老化,稳定性较差;除特殊高温热敏电阻外,绝大多数热敏电阻仅适合0150范围,使用时必须注意。2.4 数字温度传感器方法:数字温度传感器的种类繁多,但在粮情测控系统中应用最广泛的是DS18X20系列温度传感器、它的温度检测范围为-55一+125.检测精度为土0.5 C。DS18X20采用9个位表示测温点的温度值,每个DS18X20内部都设置有一个单一的序列号。因此可以使多个DS18X20共存于同一根数据传愉线上。DS18X20内部分为4个部分: 1、64位序列号。2、保存临时数据的8字节片内RAM。3、保存永久数据的2字节EEPROM。 4、温度传感器。基于 DS18B20 的温度测量系统是一种分布式的温度测量系统 , 它可以远程对温度实现测量和监控,广泛应用于电力工业、煤矿、森林、火灾、高层建筑等场合,按 照DS18B20 的通信协议,由主机向 DS18B20 发送命令,读取 DS18B20 转换的温度,从而实现对环境的温度的测量,当温度超过一定的值时,报警器开始报警。采用智能温度传感器 DS18B20 , 它直接输出数字量 ,精度高 ,电路简单 , 只需要模拟 DS18B20 的读写时序,根据 DS18B20 的协议读取转换的温度。粮情测控系统采用DS18X20温度传感器的测温电缆只需3根导线即可连接多个DS18X20温度传感器,它与热敏电阻测温电缆大不相同。采用DS18X20温度传感器不仅可以使测温电缆的制造更加简单、制作成本下降,而且还能提高测温电缆的抗拉强度。所以采用DS18X20温度传感器的粮情测控系统非常适合于高大粮仓的应用环境,同时还可以解决高大粮仓在不需重新安装测温电缆的情况下更换测温电缆内部的温度传感器以及改变温度传感器相对位置。鉴于以上特点,我们发现热敏电阻与数字传感器分别有各自的优缺点,但数字传感器是将来的发展趋势,所以本设计就选择数字传感器来作为我们的温度传感器。 此方案硬件电路非常简单 , 但程序设计复杂一些 , 但是在课外对 DS18B20 、 字符型液晶显示有所了解,而且曾经在网上看到过此类程序程序设计,并且我已经使用过开发工具 KEIL 用 C 语言对系统进行了程序设计 , 用单片机开发板对系统进行了测试 ,达到了预期的结果。由此可见,该方案完成具有可行性,体现了技术的先进性,经济上也没有任何问题。 2.5 单点点测量与多点测量:由于每个DS18X20内部都设置有一个单一的序列号。因此可以使多个DS18X20共存于同一根数据传愉线上,这也就使多点测量成为可能,另外,DS18B20只需要一个I/O端口就可以与单片机进行数据传输,所以我们也可以利用一个单片机的多个I/O端口分别连接一个DS18B20来实现多点测量,多点测量相对于单点测量可以充分利用资源,大大节省成本。所以本设计就采用多点测量。3 本测温系统的方案硬件设计的实现。3.1 总体的硬件设计框图: 温度采集模块由4个DS18B20进行温度采集,并通过单片机的I/O接口把数据传至单片机,由单片机进行数据处理,为了要想使温度采集系统采集到的温度有了更为直观的显示,就需要设计显示模块,本次选用的是LCD1602;当温度过高时,我们要进行散热,从而达到想要的温度。DS18B20温度传感器数据采集报警模块1602液晶显示电路 单 片 机 图3-1 温度测量系统总体方案图 3.2 单片机最小系统的设计:单片机加上适当的外围器件和应用程序,构成的应用系统称为最小系统,最小应用系统的设计是单片机应用系统的设计基础。它包括单片机的选择、时钟系统计、复位电路设计、简单I/O口扩展、掉电保护等,对于CHMOS单片机,还包括低功耗运行设计。电容容量范围为30PF+/-10PF,石英晶体频率的范围为1.2-12MHz,常用6MHz或者12MHz 图3-2 单片机最小系统 3.3 温度采集模块:本设计的温度采集模块由4个DS18b20组成。DS18B20只有3个引脚,所以它和单片机的连接非常简洁,如下图就是它在本系统的连接图: 图3-3 系统温度采集模块连接图3.3.1 温度传感器DS18B20的介绍: 图3-4 DS18B20的管脚排列DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO92小体积封装形式;温度测量范围为55125,可编程为912位A/D转换精度,测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用端口较少,可节省大量的引线和逻辑电路。DS18B20内部结构主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图4所示,DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端。DS18B20详细引脚功能描述如表1所示。表3-1DS18B20详细引脚功能描述名称引脚功能描述1GND地信号2DQ数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。3VDD可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。由于DS18B20采用的是1Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。DS18B20的应用包括温度控制、工业系统、消费品、温度计或任何热感测系统。负压特性:电源极性反接时,温度计不会发热而烧毁,但不能正常工作。DS18B20产品的特点:(1) 只要求一个端口即可实现通信。(2) 在DS18B20中的每个器件上都有独一无二的序列号。(3) 实际应用中不需要外部任何元器件即可实现测温。(4) 测量温度范围在55到125之间。(5) 数字温度计的分辨率用户可以从9位到12位选择。(6) 内部有温度上、下限告警设置。(7) 温度数字量装换时间200ms。(8) 用户可定义的非易失性温度报警设置。(9) 报警搜索病例识别并标志超过程序限定温度(报警条件)的器件。3.4 显示模块: 要想使温度采集系统采集到的温度有了更为直观的显示,就需要设计显示模块,本次选用的是LCD1602,它具有微功耗、体积小、显示内容丰富、超薄轻巧的特点,常用在袖珍式仪表和低功耗应用系统中。它在本测控系统的连接如图: 图3-5 系统显示模块连接图3.4.1 LCD1602介绍: 液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以它不能显示图形。LCD1602引脚如图3-6所示图3-6 LCD1602引脚图从上面我们可以看出LCD1602共有14个引脚,它的引脚图的功能如表3-2所示表3-2引脚功能图引脚号符号状态功能1VSS电源地2VDD+5V逻辑电源3V0液晶驱动电源4RS输入寄存器选择1数据2指令6R/W输入读写操作选择1读0写7E输入使能信号8DB0三态数据总线9DB1三态数据总线10DB2三态数据总线11DB3三态数据总线12DB4三态数据总线13DB5三态数据总线14DB6三态数据总线15DB7三态数据总线3.4.2 LCD1602显示模指令集:1602液晶模块内部的控制器共有11条控制指令,如表3-3所示:表3-3 1602控制指令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容3.5报警模块: 当温度过高时,我们就需要通过报警模块通知工作人员对粮仓进行通风散热,本报警模块,通过四个发光二极管来完成报警功能, 当四个温度采集点采集到的温度不在温度设定的上下限,相应的发光二极管就会亮起来,从而通知相应的工作人员对相应的采集点进行通风散热。图3-7 系统报警模块连接图3.6 复位电路:单片机的复位电路通常有按钮复位和自动复位两种方式,本电路系统采用的就是按钮复位电路,如图3-8所示:单片机的RST引脚是复位信号的输入端,图3-8 AT89S52的上电系统复位电路 复位后,单片机内部包括程序计数器和特殊功能寄存器在内的各寄存器的内容将被初始化,但复位并不影响片内RAM和片外RAM中的内容。特殊功能寄存器的复位状态见表3-3。表3-3 复位特殊功能寄存器的初始状态SFR名称初始状态SFR名字初始状态ACC00HTMOD00HB00HTCON00HPSW00HTH000HSP07HTL000HDPL00HTH100HDPH00HTL100HP0-P3FFHSBUF不确定IPXXX00000BSCON00HIE0XX00000BPCON0XXXXXXB3.7 时钟电路:每个单片机都需要时钟电路,时钟电路的设计是用于产生时钟信号,它是单片机内部各种微操作的时间的一个基准,在此基础上,控制器按章指令的功能产生一系列在时间上有一定次序的信号,控制相关的逻辑电路工作。如下图所示:图3-8 外接石英晶振电路驱动器件 XTAL1和XTAL2分别为片内反向放大器的输入端口和输出端口。电容容量范围为30PF+/-10PF,石英晶体频率的范围为1.2-12MHz,常用6MHz或者12MHz。4 粮仓测温系统的软件设计4.1 软件设计总体规划系统接通电源后,单片机进入main()函数,最后进行while(1)循环,等待上位机发送的命令,如果串口接收到数据则响应串口中断,进入相应的中断函数中执行串口响应子函数。 程序框图如下:接通电源 主函数While(1)大循环是否有串口接收中断串口响应子函数YN图4-1软件总体流程图程序如下:void main(void) unsigned int t,q; while(1) t=ReadTemperature(); if(t&0x8000) t=t; / 取反加1 t +=1; o=0xb0; else o=0; q=(t%16)*0.0625; temp=t/16+q; display(); if(m=1) if(setValue_low=temp) beep1=1; /在温度允许范围,不报警 else beep1=0; else if(m=2) if(setValue_low=temp) beep2=1; /在温度允许范围,不报警 else beep2=0; else if(m=3) if(setValue_low=temp) beep3=1; /在温度允许范围,不报警 else beep3=0;else if(setValue_low=temp) beep4=1; /在温度允许范围,不报警 else beep4=0; DelayMs(255); DelayMs(255); DelayMs(255); DelayMs(255); DelayMs(255); DelayMs(255); m-; if(m=0)m=4; 4.2 温度采集子程序当程序检测到正确的读命令以后,则开始响应读温度操作,具体过程如下:首先初始化DS18B20,在写入数据跳过ROM,启动温度转换,读取温度数据,单片机处理数据,流程图如图4-2:读取温度操作启动报警模块DS18B20初始化是否超过规定温度?是否跳过ROM传数据至单片机,得到温度温度转换图4-2 读温度子程序流程图程序如下:unsigned int ReadTemperature(void)unsigned char a=0;unsigned int b=0;unsigned int t=0; Init_DS18B204(); WriteOneChar4(0xCC); / 跳过读序号列号的操作 WriteOneChar4(0x44); / 启动温度转换 delay(200); Init_DS18B204(); WriteOneChar4(0xCC); /跳过读序号列号的操作 WriteOneChar4(0xBE); /读取温度寄存器等(共可读9个寄存器)前两个是温度 a=ReadOneChar4(); /低位 b=ReadOneChar4(); /高位 b=8; t=a+b; return(t);4.3温度显示程序:当采集的温度数据传送至单片机时,我们就需要调用显示子程序,来实时显示测到的温度。温度显示子程序的LCD 显示程序框图如下:写数据入口是否写16返回是否写16次写数据行加1取显示首地址写行列地址写LCD指令延时20MS初始化LCD否是读数据并显示否是 图4-3 LCD程序显示框图程序如下:void InitLcd() DelayMs(15); WriteCommand(0x38); /display mode WriteCommand(0x38); /display mode WriteCommand(0x38); /display mode WriteCommand(0x06); /显示光标移动位置 WriteCommand(0x0c); /显示开及光标设置 WriteCommand(0x01); /显示清屏void display(void)InitLcd(); /初始化LCDDelayMs(15); /延时保证信号稳定sprintf(Test1, current temp ! ); /打印输出第一行信息ShowString(0,Test1);sprintf(TimeNum,temp: %c%.1f C,o,temp);/打印输出第二行信息ShowString(1,TimeNum);结 论本毕业设计通过问题分析、方案提出、系统设计和软件测试等工作,综合运用所学的知识经过近三个多月的设计和开发,基于DS18B20的粮仓测温系统硬件设计已经开发完毕。本文具体论述了基于DS18B20的粮仓测温系统硬件设计的主要功能及体系结构,重点讨论了市场需求、理论实现、体系分析、各模块系统流程、各功能模块的关联和设计等技术。在调试电路的过程中,虽然过程走了不少弯路,但是那是值得的,因为我觉得那是一笔财富,一份经验。但时间紧迫,幸亏有老师和同学的帮助指导,指明方向。让我快速完成。 但是,由于本人的水平有限,本系统也有很多不足之处。如接口的设计在实验时没什么问题,但在现场接线时相当的麻烦,不够人性化等,还有就是在实验时缺少现场模拟测试环节,致使在现场出现一些意想不到的情况,虽然最终都得以解决,但在这过程中相当的麻烦,这些功能在今后的工作和学习中有待进步改进和完善。致 谢毕业设计是对我们知识运用能力的一次全面的考核,也是对我们进行科学研究基本功的训练,培养我们综合运用所学知识独立地分析问题和解决问题的能力,为以后撰写专业学术论文和工作打下良好的基础。本次设计能够顺利完成,首先我要感谢我的母校河南工业大学,是她为我们提供了学习知识的土壤,使我们在这里茁壮成长;其次我要感谢信息学院的老师们,他们不仅教会我们专业方面的知识,而且教会我们做人做事的道理;尤其要感谢在本次设计中给与我大力支持和帮助的王胜轩老师,给我们提供了一个很好的平台,使我的大学生活充实,且学到了实用的本领,使我能够充满热情的投入到毕业设计中去;还要感谢我的同学们,他们热心的帮助,使我感到了来自兄弟姐妹的情谊。参考文献1 李群芳,肖看 . 单片机原理、接口及应用-嵌入式技术基础 北京:清华大学出版社,2 王福瑞 . 单片微机测控系统设计大全M北京:北京航空航天大学出版社,20043 谢维成单片机原理与应用D 北京:清华大学,20034 童诗白,华成英.模拟电子技术基础M. 北京:高等教育出版社,20065 邹锐.模拟电路故障诊断原理和方法M 武汉::华中理工大学出版社,20086 李鸿 嵌入式系统设计M 深圳:科技电子出版社,2008:98-11307 王宇行. ARM程序分析与设计M. 北京:北京航空航天大学出版社,20088 周润景,张丽娜,刘映群.PROTEUS入门实用教程M 北京:机械工业出版社,20079 姜沫岐 . Protel 2004原理图与PCB设计实例M 北京:机械工业出版社,200610 吕念玲.模拟电路单元及系统实验M 北京:机械工业出版社,200711 王希勤.模拟电路故障诊断M 北京:人民邮电出版社,200712 张伟 . Protel 99SE实用教程M 北京:人民邮电出版社,2008.13 Richard Barry Using the freeRTOS Real Time KernelM Feb 15, 201014 Joseph Yiu The Definitive Guide to the ARM Cortex-M3 M 10/10/200715 Jason Andrews Co-Verification of Hardware and Software for ARM SoCM 18 August 200416 Grant Martin Henry Chang Winning the SoC Revolution, Experiences in Real DesignM Feb 20, 200917 William Hohl ARM Assembly LanguageGrant MartinM 15 August 2008附录1:系统总体连接图附录2:主要程序主函数程序模块:void main(void) unsigned int t,q; while(1) t=ReadTemperature(); if(t&0x8000) t=t; / 取反加1 t +=1; o=0xb0; else o=0; q=(t%16)*0.0625; temp=t/16+q; display(); if(m=1) if(setValue_low=temp) beep1=1; /在温度允许范围,不报警 else beep1=0; else if(m=2) if(setValue_low=temp) beep2=1; /在温度允许范围,不报警 else beep2=0; else if(m=3) if(setValue_low=temp) beep3=1; /在温度允许范围,不报警 else beep3=0;else if(setValue_low=temp) beep4=1; /在温度允许范围,不报警 else beep4=0; DelayMs(255); DelayMs(255); DelayMs(255); DelayMs(255); DelayMs(255); DelayMs(255); m-; if(m=0)m=4; 温度显示模块程序:void InitLcd() DelayMs(15); WriteCommand(0x38); /display mode WriteCommand(0x38); /display mode WriteCommand(0x38); /display mode WriteCommand(0x06); /显示光标移动位置 WriteCommand(0x0c); /显示开及光标设置 WriteCommand(0x01); /显示清屏void display(void)InitLcd(); /初始化LCDDelayMs(15); /延时保证信号稳定sprintf(Test1, current temp ! ); /打印输出第一行信息ShowString(0,Test1);sprintf(TimeNum,temp: %c%.1f C,o,temp);/打印输出第二行信息ShowString(1,TimeNum);温度采集模块程序:void Init_DS18B201(void) unsigned char x=0; DQ1 = 1; /DQ复位 delay(8); /稍做延时 DQ1 = 0; /单片机将DQ拉低 delay(80); /精确延时 大于 480us DQ1 = 1; /拉高总线 delay(10); x=DQ1; /稍做延时后 如果x=0则初始化成功 x=1则初始化失败 delay(5);unsigned char ReadOneChar1(void)un

温馨提示

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

评论

0/150

提交评论