毕业设计-基于单片机的粮仓温度控制系统设计_第1页
毕业设计-基于单片机的粮仓温度控制系统设计_第2页
毕业设计-基于单片机的粮仓温度控制系统设计_第3页
毕业设计-基于单片机的粮仓温度控制系统设计_第4页
毕业设计-基于单片机的粮仓温度控制系统设计_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计论文基于AT89C51单片机的粮仓温度控制系统系别自动化工程系专业测控技术与仪器班级姓名指导教师2009年5月5日基于单片机的粮仓温度控制系统摘要随着单片机技术的飞速发展,单片机在各个领域得到了广泛的应用。粮食是人类生存的必需品,温度是保存好粮食的先决条件,储存大量的粮食对稳定国民经济的发展起到至关重要的作用。粮库一般较大,测量点会很多。粮仓温度测量方法以及相应的智能控制一直是粮食保存的一个重要问题。该系统是以AT89C51单片机和DS18B20数值温度传感器为核心组成的粮仓温度控制系统。该系统利用AT89C51单片机采集了各个温度点的温度,实现温度显示、报警等功能。它以AT89C51单片机为主控制芯片,采用数字温度传感器DS18B20实现多路温度的检测,利用LCD1602液晶显示器形象直观的显示测出的温度值。本文在确定法设计方案基础上,着重论述了系统的软硬件设计,并且描述了系统电路设计、硬件设计框图及所使用各种芯片功能和特性。通过PROTEUS软件和KEILC仿真出了该系统。关键词单片机DS18B20液晶显示键盘报警TEMPERATURECONTROLSYSTEMOFTHEGRANARYBASEDONSINGLECHIPAUTHORMUXIQINGTUTORFANLINAABSTRACTALONGWITHTHESINGLECHIPMICROCOMPUTERTECHNOLOGYRAPIDDEVELOPMENT,THEMICROCONTROLLEROBTAINEDTHEWIDESPREADAPPLICATIONINEACHDOMAINTHEGRAINISTHEHUMANSURVIVALESSENTIALITEM,THETEMPERATUREISTHEPRECONDITIONOFPRESERVINGTHEGRAINWELL,STORINGUPTHEMASSIVEGRAINPLAYSACRUCIALROLEINTHEDEVELOPMENTOFTHESTABLENATIONALECONOMYPROVISIONROOMISGENERALLYBIG,SOTHEREWILLBEALOTOFMEASUREMENTPOINTSGRAINTEMPERATUREMEASUREMENTMETHODANDTHECORRESPONDINGINTELLIGENTCONTROLOFFOODPRESERVATIONHASBEENANIMPORTANTISSUETHESYSTEMISBASEDONAT89C51SINGLECHIPANDNUMERICALTEMPERATURESENSORDS18B20,WHICHCOMPOSITETHECORETEMPERATURECONTROLSYSTEMTHISSYSTEMHASGATHEREDEACHTEMPERATUREUSINGAT89C51MONOLITHICINTEGRATEDCIRCUIT,WHICHREALIZESFUNCTIONSTEMPERATUREDISPLAYANDALARMFUNCTIONSANDSOONITTAKESAT89C51MONOLITHICINTEGRATEDCIRCUITASMAINCONTROLCHIP,WHICHUSESDIGITTEMPERATURESENSORDS18B20TOREALIZETHEMULTICHANNELTEMPERATUREDETECTIONSTEMPERATUREVALUEWHICHDETERMINESISDISPLAYEDUSINGTHELCD1602LIQUIDCRYSTALINDIRECTVIEWINGDEMONSTRATIONTHISARTICLEFOCUSESONSYSTEMSSOFTWAREANDHARDWAREDESIGNEMPHATICALLYONTHEFOUNDATIONOFDETERMININGTHEDESIGNOFTHEPROGRAMITDESCRIBESTHESYSTEMCIRCUITDESIGN,THEHARDWAREDESIGNDIAGRAMASWELLASTHEFUNCTIONANDTHECHARACTERISTICOFTHECHIPWHICHISUSEDINTHESYSTEMTHISSYSTEMISSIMULATEDTHROUGHTHEPROTEUSANDKEILCSOFTWAREKEYWORDSSINGLECHIPMICROCOMPUTERDS18B20LIQUIDCRYSTALDISPLAYKEYBOARDWARNING目录一绪论111背景112设计的目的和意义113相关领域国内外技术和发展趋势2二系统方案设计421方案设计432方案论证5三温度传感器631温度传感器的选型6311传感器的选择原则6312温度传感器的选择632温度上、下限值的设定原理7四系统硬件设计841系统工作原理综述842DS1820与单片机接口电路9421单片机89C51为本系统的核心10422中央处理器AT89C51简介1343DS18B20简介及测温电路设计16431DS18B20的性能特点17432DS18B20的外形和内部结构17433高速暂存存储器21434DS18B20单总线1一WIRE的基本原理2244液晶显示电路29441LCD1602主要技术参数29442LCD1602的引脚说明30443控制指令说明3045按键电路3146报警电路33五软件功能及框图3451主程序3452读出温度子程序3453温度转换命令子程序3454计算温度子程序3455显示数据刷新程序子程序3456按键处理子程序34六单片机的抗干扰问题4061干扰因素4062硬件抗干扰措施40621合理选择元器件40622电源干扰的抑制40623电场、磁场干扰的抑制40624接地技术40625通道技术41626布线抗干扰设计4263软件抗干扰措施43631数字滤波器43632软件冗余43633设置软件陷阱43634重要指令冗余43635“看门狗”技术43结论45参考资料46致谢47附录1仿真原理图48附录2程序代码49附录3英文文献67一绪论11背景“国以民为本,民以食为天”,“兵马未动,粮草先行”,这些都充分说明粮食对国家的重要性。从理论上讲国家掌握的粮食越多越好,但从现代经济学的角度看,国家只要能控制住一定数量的可以灵活支配、质量良好的粮食,既可达到“备战备荒”、宏观调控的目的,又可节省资金用于发展经济。一般来说粮食存放在粮仓中,大型的粮仓可存放数以万计的粮食。而且这些粮食存放的时间有长有短。为了保证存放在粮仓中的粮食不致腐烂变质,就必须使粮仓内的温度保持在一定的范围以内。为了达到以上的要求,必不可少的就是既稳定又精确的粮情智能测控管理系统。粮情智能测控系统是通过计算机检测粮食储备库中粮食的基本温度情况,并结合其他粮情信息(如入仓时间、品种、仓型、天气状况等)进行综合分析。利用微机技术对粮仓进行监控,用户可方便地构造自己需要的数据采集系统,在任何时候把粮仓现场的信息实时地传到控制室,管理人员不需要深入现场,就可查看历史数据,优化现场作业,提高生产效率,增强了国家粮食储备安全水平,以获得实时粮仓管理,实现自动化、智能化。本文只阐述粮情温度检测,以下所说粮情仅指温度。但涉及到的一些方法也适合其他粮情检测情况。在综合研究国内粮库管理现状和发展的前提下,吸收了国内多种粮库粮情温度测控系统的成功经验后,我们设计了自己的粮情温度智能测控系统。该系统具有可靠性和高性价比,而且操作维修简便,具有检测、数显、分析等诸多功能。12设计的目的和意义科学储粮是粮食生产的一个重要环节,若管理不当,粮食发霉或生虫会造成极大浪费。粮库管理中最重要的问题是监测粮堆中的温度变化。粮库一般由几十个甚至上百个由水泥或钢板构成的圆型仓组成,仓高20一30M。现在,我国在粮仓建设上己实现规范化,但是监测手段一直未能实现同步现代化。我国许多储备粮库每年都因测控设备的不完善而导致部分粮食霉变,许多大型储备粮库的测控设备仍需高价进口,因此国家准备在未来的几年内对全国所有的粮库进行翻新和改造工作,要求规范粮库管理,实现粮库管理现代化。影响储粮安全的最主要因素是粮堆内的温度,这就要求能有一种有效的、低成本的仪表来实现监测控制功能,使得管理人员能够方便有效地进行监控操作。如果用单片机作为前沿机对现场进行数据采集,通过对采集的数据进行分析(温度设定,实时温度显示,报警电路)然后通过单片机串行口控制电机启停进行温度控制。利用单片机技术对粮仓进行检控,用户可以方便地够造自己所需要的数据采集系统,在任何时候把粮仓现场的信息实时地传到控制室,管理人员不进入现场就可以按照所需的温度要求对粮仓内的温度情况进行控制,提高了生产效率,增强了粮仓内存储安全,获得了粮仓的实时管理,实现自动化,智能化。微机测量是微机设计的第一步,是微机测量技术的现场部分,即测量粮仓中的温度,并使用单片机对测量的数据进行处理并对粮仓内的温度进行控制。13相关领域国内外技术和发展趋势粮情检测技术是科学保粮的关键技术之一。随着电子技术、计算机应用技术的进步和发展,计算机的应用范围日益扩大,计算机被应用于粮情监控系统。初期,以铜电阻,热敏电阻作为传感器件,通过检测电阻的变化来反映粮食温度的变化,为粮食保管提供参考依据。但此工作靠人工测量,效率低,准确性差。在粮食部门各级领导的关怀和粮食行业科技主管部门的大力支持下,在粮食行业内、外广大科技工作者近30年的共同努力下,粮情检测技术不断完善、提高、并日趋成熟,逐步形成了样式繁多的粮情检测系统,为安全、科学储粮起到了积极作用。目前国内己有数十家企业生产粮情监控系统产品,品种繁多,系统结构各异,但其基本功能无外乎粮仓内外温湿度检测、粮食内部温度检测及分析、通风机械的控制等几项,鉴于粮食储藏的特殊性,系统功能的重点放在了储粮内部温度的检测和分析上。粮情监控系统可以根据采用的温度传感器的不同进行如下分类(1)热敏电阻以温度变化导致阻值的变化为工作原理的热敏电阻,因其具有成本低、体积小、简单、可靠、响应速度快、容易使用等特点,成为国内粮情检测系统中采用最多的温度传感器。热敏电阻的电阻温度系数较高,室温通常也较高,因此其自身发热较小,信号调节较为简单。但热敏电阻也存在缺点,如是互换性差、温度与输出阻值之间呈非线性关系。(2)数字式温度传感器数字式温度传感器的种类也不少,但用于粮情测控系统的温度传感器主要是DALLAS的DS18X20系列温度传感器,其温度检测范围为55125,检测精度为05。DS18X20采用1WIRETM接口,封装形式有PR35和SSOP16两种,粮情测控系统中采用的是PR35封装。DS18X20采用9个位表示测温点的温度值,每个DS18X20内部都设置有一个单一的序列号,因此可以使多个DS18X20共存于同一根数据传输线上。DS18X20内部分为4个部分1、64位序列号;2、保存临时数据的8字节片内RAM;3、保存永久数据的2字节EEPROM;4、温度传感器。采用数字式温度传感器粮情测控系统的结构与采用热敏电阻粮情测控系统的结构大致相同,只是用测控单元替代了智能分机、扩充接线器替代了温度分线器。测控单元与智能分机的区别在于没有用于将温度信号数字化的A/D转换电路,取而代之的是1WIRETM总线与上层通信总线之间的通信转换电路,如果系统选用了数字式湿度传感器则测控单元将完全由数字电路组成,而智能分机是由数字电路和模拟电路两部分构成的,这将使测控单元的电路设计更为容易。采用DS18X20温度传感器的粮情测控系统的测温电缆与热敏电阻测温电缆大不相同,该测温电缆最多只需3根导线即可连接多个DS18X20温度传感器。最为简洁的结构是利用DS18X20可以通过数据线供电的特点,在测温电缆中只放置两根平行的细钢丝绳即可连接多个DS18X20温度传感器,这样不仅使测温电缆的制造简便、成本下降,而且提高了测温电缆的抗拉强度、便于温度传感器的更换。正是这些特点使得采用DS18X20温度传感器的粮情测控系统更适用于高大粮仓(诸如浅圆仓、立筒仓)的应用环境,可以解决高大粮仓在不需重新安装测温电缆的情况下更换测温电缆内部的温度传感器以及改变温度传感器相对位置。由于这种温度传感器的价格比热敏电阻高出许多,所以DS18X20温度传感器粮情测控系统在房式仓中应用时不如热敏电阻粮情测控系统更具有性能价格比的优势。(3)光纤传感器光纤温度传感器是近几年发展的新技术,也是工业中用的最多的光纤传感器之一。目前研究的光纤温度传感器主要有辐射式温度传感器、半导体吸收式温度传感器、光纤热色传感器等。光纤温度传感器的精度更高,但成本较贵。二系统方案设计21方案设计方案一该案由单片机、模拟温度传感器AD590、运算放大器、AD转换器、LCD显示电路、集成功率放大器、报警器组成。该方案采用模拟温度传感器AD590作为测温元件,传感器测量的温度变化转换成电流的变化,再通过电路转换成电压的变化,使用运算放大器交给信号进行适当的放大,最后通过模数转换器将模拟模拟信号转换成数据信号,传给单片机,单片机将温度值进行处理之后用LCD显示,当温度值超过设定值时开始报警。如图21所示模拟温度传感器运算放大器AD转换键盘单片机LCD显示模块集成功放报警器图21方案一温度测量系统方案框图方案二该方案使用了AT89C51单片机作为控制核心,以智能温度传感器DS1820为温度测量元件,采用多个温度传感器对多点温度进行检测,通过键盘模块对温度上、下限设置,超过其温度值就报警。显示电路采用LCD1602模块,使用单片机直接驱动蜂鸣器构成报警电路。如图12所示温度传感器温度传感器温度传感器温度传感器键盘单片机LCD液晶显示电路报警电路图22方案二温度测量系统方案框图32方案论证方案一采用模拟温度传感器,转换结果需要经过运算放大器传给处理器。它控制虽然简单,但电路复杂,不容易实现对多点温度测量和监控。由于采用了多个分立元件和模数转换器,不容易出现误差,测量结果不是很准确,因此本方案并不可取。方案二采用智能温度传感器DS1820,它直接输入数字量,精度高,电路简单,只需要模拟DS1820的读写时序,根据DS1820的协议读取转换的温度。此方案硬件电路简单,但程序设计复杂一些,但是在课题外对DS1820、字符型液晶显示有所了解,而且曾经在网上看过此类程序设计,并且我们已经使用开发工具KEIL用汇编语言对系统进行了程序设计,用仿真软件PROTEUS对系统进行了仿真,达到了预期的效果。由此可见,此方案的可行性,体现了技术的先进性,经济上也没有任何问题。综上所述,本课题应当采用方案二对系统进行设计。三温度传感器31温度传感器的选型311传感器的选择原则要进行一个具体的测量工作,首先要考虑用何种原理的传感器,这需要分析多方面的因素之后才能确定。因为,即使是测量同一物理量,也有多种原理的传感器可以选用,哪一种原理的传感器更为适合,则需要根据被测量的特点和传感器的使用条件考虑以下具体问题量程的大小被测位置对传感器体积的要求测量方式是接触式的还是非接触式的信号的引出方法传感器的来源,国产还是进口,价格是否能承受。在考虑上述问题之后就能确定选用何种类型的传感器,然后再考虑传感器的具体性能指标。传感器的具体指标有灵敏度,频率响应特性,线性范围,稳定性,精度等。这些参数并不是要求越高越好,因为要求越高不仅会带来成本的提高,也会带来信号处理的难度,噪音等问题。在满足检测系统要求的前提下我们一般选择价格便宜和简单的传感器。312温度传感器的选择美国DALLAS半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线“接口的温度传感器,而新的“一线器件”DS18B20体积更小、适用电压更宽、更经济。单线数字温度传感器,可以直接将被测温度转化成串行数字信号,以供单片机处理,克服了传统的模拟式温度传感器不仅需要设计信号调理电路,还要经过复杂的校准和标定过程,测量精度难以保证的缺点,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如环境控制、设备或过程控制、测温类消费电子产品等。另外,DS18B20“一线总线“数字化温度传感器同DS1820一样,DS18B20也支持“一线总线“接口采用单根信号线,既可以传输时钟,又能传输数据,而且数据传输是双向的。与其他数字温度传感器相比具有线路简单硬件开销少,成本低、便于扩展等优点。DS18B20的测量温度范围为55C125C,在1085C范围内,精度为05C。DS1822的精度较差为2C。现场温度直接以一线总线“的数字方式传输,与前一代产品不同,新的产品支持3V55V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。DS18B20可以程序设定912位的分辨率,精度为05C。分辨率设定及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的性能价格比也非常出色DS1822与DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为2C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。继“一线总线“的早期产品后,DS18B20开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。32温度上、下限值的设定原理利用制冷机产生的冷量对自然空气进行冷却降温、除湿,再通过风机及粮仓内的通风管道使冷却后的空气穿过粮堆,使粮食温度降到15C以下进行低温储藏的一项科学、先进的粮食储藏技术。运用该技术可使粮食的低温储藏不受气候条件的影响,即使在炎热的夏季或雨季都可实现。目前在发达国家特别是西欧国家已获得了广泛的应用,对于保证粮食品质,安全储藏粮食起着重要的作用。利用机械制冷方法将粮温降到515C进行低温储藏是一种科学、先进的储粮方式,具有以下特点(1)与常温储藏相比,低温储藏使粮食的呼吸活动大大减弱,可延缓粮食的陈化,保持粮食的新鲜度并降低储粮自然减量损失。粮食在10C时储藏,由于呼吸产生的干物质损失要比在20C和30C时储藏少4倍和15倍。(2)当粮温达到13C时,害虫的繁殖和活动就基本停止,粮温降至10C时完全停止。因此低温储藏可以避免粮食遭受虫害而造成的损失。在一些西欧国家,低温储粮已不需要进行化学药剂熏蒸杀虫,从而改善了粮库工人的工作环境,避免残留药剂对人们身体健康的危害。(3)因为霉菌等微生物喜温,所以低温储粮使霉菌的活动基本停止,可有效地防止粮食发生霉变。(4)对粮食进行机械制冷降温,使得粮食在高于安全水分时储藏成为可能,因此可以提高储粮和加工单位的效益。对于稻谷,最适合的碾磨水分是15左右,但常温下稻谷储藏的安全水分是13514,加工前需进行人工增湿,使稻谷易于产生爆腰,碾磨的整米率下降。若采用人工冷却降温方法,稻谷可在15水分下安全储藏见表31,从而提高稻谷碾磨的整米率,同时减少储粮水分减量损失。在西班牙的一个碾米厂,采用机械制冷低温储藏稻谷后提高整米率20。对于10000吨的粮食储量,在15的水分下储藏,可减少储粮单位水分减量损失116173吨。表31粮温为10C时粮食水分与安全储藏期的关系粮食水分粮食安全储藏期月120155812155175610175185461852001420023005223025002505四系统硬件设计41系统工作原理综述基于单片机的单总线多点温度监测系统以AT89C51为中心期间,以KEIL为系统程序开发平台,以汇编语言进行程序设计,以PROTEUS作为仿真软件设计而成的。系统主要由温度传感器、液晶显示电路、键盘、报警电路组成,电路图如附录XXXX一所示。DS1820是智能温度传感器,它的输入、输出采用数字量,通过单总线,接收主机发送的命令,根据DS1820内部的协议进行相应的处理,将转换的温度数值以串口形式发给主机,主机按照通讯协议用一个IO口模拟DS1820时序,发送命令(初始化命令、ROM命令、功能命令)给DS1820,并读取温度值,在内部进行相应的数据处理,用字符型液晶显示模块显示各点的温度值。在系统启动之时,可以通过按键设置各点温度的上限值和下限值,当某点温度超过设置值时,报警器开始报警,从而实现了对各点温度实时监控。每个DS1820有自己的序列号,因此本系统可以在一根总线上接了4个DS1820,通过CRC校验,对各个DS1820的ROM进行寻址,地址符合的DS1820才作出响应,接收足迹命令,向主机发送转换的温度。采用这种DS1820寻址技术,使系统硬件电路更加简单。DS1820虽然有测温简单的特点,单在实际应用中应注意一下几点1较小的硬件开销需要相对复杂的软件进行补偿,由于DS1820与微处理器间采用串行数据传送,因此,在对DS1820进行读写编程时,必须严格的保证读写时序,否则将无法读取测温结果。在使用PL/M、C等高级语言进行系统程序设计时,对DS1820操作部分最好采用汇编语言实现。2在DS1820的有关资料中均未提及单总线上所挂DS1820数量问题,容易使人误认为可以挂任意多个DS1820,在实际应用中并非如此。当单总线上所挂DS1820超过8个时,就需要解决微处理器的总线驱动问题,这一点在进行多点测温系统设计时要加以注意。3连接DS1820的总线电缆是有长度限制的。试验中,当采用普通信号电缆传输长度超过50M时,读取的测温数据将发生错误。当将总线电缆改为双绞线带屏蔽电缆时,正常通讯距离可达150M,当采用每米绞合次数更多的双绞线带屏蔽电缆时,正常通讯距离进一步加长。这种情况主要是由总线分布电容使信号波形产生畸变造成的。因此,在用DS1820进行长距离测温系统设计时要充分考虑总线分布电容和阻抗匹配问题。4在DS1820测温程序设计中,向DS1820发出温度转换命令后,程序总要等待DS1820的返回信号,一旦某个DS1820接触不好或断线,当程序读该DS1820时,将没有返回信号,程序进入死循环。这一点在进行DS1820硬件连接和软件设计时也要给予一定的重视。42DS1820与单片机接口电路DS1820可以采用两种方式供电,一种是采用电源供电方式,此时DS1820的1管脚接地,2脚作为信号线接单片机的I/O口,电源与数字输入管脚间需接一个47K的电阻,3管脚接电源,如图41所示。另一种是寄生电源方式,如图42所示。单片机端口接单片机总线,为保证在有效的DS1820时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。当DS18B20处于些存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10S。采用寄生电源供电方式时VDD和GND端均接地。由于单线制只有一根线,因此发送端接口必须是三态的。单片机VCCDQGNDVCC47K图41DS18B20采用电源供电方式的电路图单片机VCCVCCDS18B20DS18B20DS18B2047K图42DS18B20采用寄生电源的电路图421单片机89C51为本系统的核心单片机是把微机主要部分都集成在一个芯片上的单芯片微型计算机。由于它的结构与指令功能都是按照工业控制要求设计的,故又叫单片控制器SINGLECHIPMICROCONTROLLER。通常,一个微计算机由微型计算机与外部设备组成,而微型计算机则包括微处理器CPU,存储器存放指令或数据的ROM,RAM等,输出/输入口I/O口及其它功能部件如定时/计数器,中断系统等。它们通过地址总线AB,数据总线DB和控制总线CB连接起来。通过输入/输出口线与外部设备及外围芯片相连。CPU中配置有指令系统。计算机系统中配有驻机监控程序,系统操作软件及用户应用软件。由于单片机是把微型计算机主要集成在一块芯片上,故可以把单片机看成一个不带外部设备的微计算机。相当于一个没有显示器,没有键盘,不带监控程序的单板机。其结构如图43所示时钟复位CPUROMRAM定时计数器中断系统I/O口外部设备图43微型计算机结构图单片该系统所用单片机为MCS51系列单片机,其管脚分类及引脚功能分类如图44所示控制口线/PESN片外取指控制、ALE(地址锁存控制)、/EA(片外存储器选择、RESET复位控制。电源及时钟VCC,VSS;XTAL1、XTAL2图44MCS51系列单片机引脚图其应用特性I/O口线不能都用作用户I/O口线。除8051/8751真正可完全为用户使用的1/O口线只有P1口,以及部分作为第一功能使用时的P3口。I/O口的驱动能力,PO口可驱动8个TTL门电路,P1,P2,P3则只能驱动4个TTL门。P3口是双重功能口,其双重功能由管脚图可见。三总线结构单片机和管脚除了电源复位,时钟接入,用户1/O口外,其余管脚都是为了实现系统扩展而设置的。这些管脚构成了三总线形式,即1地址总线AB。地址总线宽度为16位,因此其外部存储器直接寻址范围为64K字节。16位地址总线由PO口经地址锁存器提供低8位地址AOA7P2口直接提供高8位地址A8A15。2数据总线DB。数据总线宽度为8位,由PO口提供。3控制总线CB。由P3口的第二功能状态和4根独立控制线RESET,/EA,ALE,/PSEN组成。AT89C51是ATMEL公司的8位FLASH单片机系列,这个系列单片机的最大特点是在片内含有FLASH存储器,因此,在应用中有广泛的前景和用途,特别是在便携式,省电及特殊信息保存的仪器和系统中显得更为有用。89系列单片机若干优点1内部含FLASH存储器,在系统的开发过程中可以十分容易进行程序修改,大大缩短了系统的开发周期,同时,在系统工作过程中能有效保存一些数据信息,即使外界电源损坏也不会影响到信息的保存2与80C51插座兼容,用相同引脚的89系列单片机可直接取代80C51的单片机。3静态时钟方式,89系列单片机采用静态的时钟方式所以可以节省电能,这对于降低便携式产品的功耗十分有用。4错误编程亦无废品产生,一般的OTP产品,一旦编程编误即成废品,而89系列的单片机内部采用了FLASHMEMORY,所以错误编程之后仍可重新编程,直到正确为止,故不存在废品。5可进行反复系统试验,用89系列单片机设计的系统,可以反复进行系统试验,每次试验可以编入不同的程序,这样保证用户的系统设计达到最优,而且,随用户的需要和发展,还可以修改,使系统不断能追随用户的最新要求。89C51在89系列单片机中属标准型单片机,它和MCS51系列单片机兼容。内部有4K可重复编程的FLASHMEMORY,可进行1000次擦写操作,全静态工作为033MHZ,有三级程序存储器加密锁定,有内部含128256字节的RAM,32条可编程的110端口,有2个16位定时器/计数器,有通用串行接口,有低电压空闲及电源下降方式。中断有6级。422中央处理器AT89C51简介(1)AT89C51具有以下几个特点AT89C51与MCS51系列单片机在指令系统和引脚上完全兼容;片内有4K字节在线可重复编程快擦写程序存储器;全静态工作,工作范围OHZ24MHZ;三级程序存储器加密;128X8位内部RAM;32位双向输入输出线;两个16位定时器/计数器;五个中断源,两级中断优先级;一个全双工的异步串行口;间歇和掉电工作方式。(2)AT89C51的串行接口1数据缓冲寄存器SBUF数据缓冲寄存器SBUF中直接寻址的专用寄存器。在物理上它对应两个寄存器,一个发送寄存器和一个接收寄存器CPU写SBUF就是修改发送寄存器读SBUF就是读取接收寄存器。接收器是双缓冲的,以防出现两帧数据重叠。发送时不用双缓冲,因为发送时CPU是主动的,不会产生写重叠的问题。2串行口控制寄存器SCON串行口控制寄存器SCON格式如表41D7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8T1R1表41串行口控制寄存器SCON格式AT89C51是一种低损耗、高性能、CMOS八位微处理器,片内有4K字节的在线可重复编程快擦写程序存储器,能重复写入/擦除100。次,数据保存时间为十年。它与MCS51系列单片机在引脚和指令系统上完全兼容,不仅可以完全代替MCS51系列单片机,而且能使系统具备许多MCS51系列产品没有的功能。AT89C51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低了系统成本。只要程序长度小于4K,四个1/O口全部提供给用户。可用5V电压编程,而且擦写时间仅需10MS,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不必拔下芯片,适合许多嵌入式控制领域。工作电压范围宽27V6V,全静态工作,工作频率宽,在OHZ24HZ内,比8751/87C51等51系列的6MHZ12MHZ更具灵活性,系统能快能慢。AT89C51提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。(3)时钟设置与CPU时序振荡器151系列单片机片内含有一个高增益的反向放大器,通过XTAL1、XTAL2外接反馈元件的晶体便成为自激振荡器,接法如图45,晶体成感性,与C1、C2构成并联震荡电路。振荡器的振荡频率主要取决于晶体;电容的值则是微调作用,通常取30PF左右。单片机30PF30PFC1C2XTAL1XTAL2图45外接晶体接法CPU时序2振荡器输出的震荡脉冲经2分频成为内部时钟信号,用作单片机内部各功能不见按时序协调工作的控制信号。其周期也成为时钟周期(或则状态周期)。6个时钟周期构成一个机器周期。指令周期以机器周期为单位。若采用6MHZ晶振,则单指令周期和双指令周期执行时间分别为2S和4S,ALE引脚输出的脉冲周期为1S。(4)复位方式为确保系统中电路稳定可靠的运行,复位电路是必不可少的一部分。复位电路的第一功能是上电复位。一般微机电路工作需要供电电源为5V士5,即475525V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过475V以及晶休振荡器稳定工作时,复位信号撤除,微机电路开始工作。微机电路在运行中受到干扰后,容易出现CPU程序“跑飞”盲目运行甚至出现死机现象。此时复位信号有效,使微机系统重新恢复正常运行。这种监视CPU运行的电路称为WATCHDOG电路。51系列单片机的复位(RST)引脚只要出现10MS以上的高电平,单片机就会实现复位,复位后程序的入口地址为0000H,单片机工作在寄存器0组,堆栈在片内RAM的08H单元建立,P0P3口输出全为1,中断系统禁止工作。与其它计算机一样,51系列单片机系统常常有上电复位和操作复位两种方法。所谓上电复位,是指计算机上电瞬间,要在RST引脚上出现宽度大于10MS三万正脉冲,使计算机进入复位状态,复位靠外部电路实现,常见的复位电路如图46所示。上电时5V电源经R对C3充电,C3上电压建立的过程就是负脉冲的宽度,经倒相后,RST上出现正脉冲使单片机实现上电复位。按钮按下同样使RST实现高电平,实现了操作复位。图46常见复位电路43DS18B20简介及测温电路设计美国MAXIM公司的子公司DALLAS半导体公司的数字温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器,在内部使用了板ON一BOARD专利技术。全部传感元件及转换电路集成在形如一只三级管的集成电路内。一线总线独特而且经济的特点,使用用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18BZO体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。431DS18B20的性能特点(1)独特的单线接口仅需要一个端口引脚进行通讯;(2)在DS18B20中的每个器件上偶有独一无二的序列号,因此多个DS18B20可以并联在唯一的三线上,实现多点组网功能;(3)实际应用中不需要任何外部器件即可实现(4)可通过数据线供电,电压范围为3055V;(5)零待机功耗(6)数字温度计的分辨率用户可以从9位到12位选择(7)用户可定义的非易失性温度报警设置(8)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件(9)负温度特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作、432DS18B20的外形和内部结构DS18B20内部结构主要由四部分组成64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列如图47所示引脚定义1DQ为数字信号输入/输出端;2GND为电源地;3VDD为外接供电电源输入端(在寄生电源接线方式时接地)。图47DS18B20的管脚排列图DS18B20采用3角PR35封装或8角SOIC封装,其内部结构如图48所示64位ROM和单线接口电流检测存储器和控制器高速缓存存储器8位CRC生成器温度敏感元件低温触发器TL高温触发器TH配置寄存器图48DS18B20内部结构图DS18B20有4个主要的数据部件(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRCX8X5X41)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例用16位符号扩展的二进制补码读数形式提供,以00625/LSB形式表达,其中S为符号位。表42DS18B20温度值格式表BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0LSBYTEBIT15BIT14BIT13BIT12BIT11BIT10BIT9BIT8MSBYTE2223212021222324SSSSS262524这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于00625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于00625即可得到实际温度。例如125的数字输出为07D0H,250625的数字输出为0191H,250625的数字输出为FF6FH,55的数字输出为FC90H。(3)DS18B20温度传感器的存储器DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。表43DS18B20温度数据表TEMPERATUREDIGITALOUTPUTBINARYDIGITALOUTPUTHEX125000001111101000007D0H8500000101010100000550H25062500000001100100010191H10125000000001010001000A2H05000000000000100000008H0000000000000000000000H051111111111111000FFF8H101251111111101011110FF5EH2506251111111001101111FE6EH551111110010010000FC90HTHEPOWERONRESETVALUEOFTHETEMPERATURERESISTERIS85THE(4)配置寄存器该字节各位的意义如表44所示表44配置寄存器结构低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如下表所示(DS18B20出厂时被设置为12位)分辨率设置如表45所示表45温度值分辨率设置表R1R0分辨率温度最大转换时间009位9375MS0110位1875MS1011位375MS1112位750MS由表45可见,DS18B20温度转换时间比较长,而且设定的分辨率越高,所需要的温度转换时间就越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。TMR1R011111433高速暂存存储器高速暂存存储器由9个字节组成,其分配如表46所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表1所示。对应的温度计算当符号位S0时,直接将二进制位转换为十进制;当S1时,先将补码变为原码,再计算十进制值。表43是对应的一部分温度值。第九个字节是冗余检验字节。表46DS18B20暂存寄存器分布根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。表47ROM指令表指令约定代码功能读ROM33H读DS1820ROM中的编码(即64位地址)符合ROM55H发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS1820使之作出响应,为下一步对该DS1820的读写作准备。寄存器内容字节地址温度值低位0温度值高位1高温限值TH2低温限值TL3配置寄存器4保留5保留6保留7CRC检验8搜索ROM0F0H用于确定挂接在同一总线上DS1820的个数和识别64位ROM地址。为操作各器件作好准备。跳过ROM0CCH忽略64位ROM地址,直接向DS1820发温度变换命令。适用于单片工作。告警搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。表48RAM指令表指令约定代码功能温度变换44H启动DS1820进行温度转换,转换时最长为500MS(典型为200MS)。结果存入内部9字节RAM中。读暂存器0BEH内部RAM中9字节的内容写暂存器4EH发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器48H将RAM中第3、4字节的内容复制到EEPROM中。重调EEPROM0B8H将EEPROM中内容恢复到RAM中的第3、4字节。读供电方式0B4H读DS1820的供电模式。寄生供电时DS1820发送“0”,外接电源供电DS1820发送“1”。434DS18B20单总线1一WIRE的基本原理1概述单总线LWIRE均是MAXIM全资子公司DALLAS的一项专有技术。与目前多数标准串行数据通信方式,如SPI/I2C/CROWIRE不同,它采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向,它具有节省I/O口线资源、结构简单、成本低廉、便于总线扩展和维护等诸多优点。1一WIRE单总线适用于单个主机系统,能够控制一个或多个从机设备。当只有一个从机位于总线上时,系统可按照单节点系统操作而当多个从机位于总线上时,则系统按照多节点系统操作。为了较为全面地介绍单总线系统,将系统分为三个部分讨论硬件结构命令序列和信号方式信号类型和时序。DS18B20的测温原理图如图49所示斜率累加器预置低温度系数振荡器减法计数器1计数比较器预置温度寄存器减到0增加高温度系数振荡减法计数器2减到0停止图49DS18B20测温原理图图49中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其晶振频率明显改变,所产生的信号作为减法计数器2的脉冲输入。图中还隐含着计数门,当计数门打开时,DS18B20就低温度系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将55所对应的一个基数分别置入减法计数器1、温度寄存器中,减法计数器1和温度寄存器被预置在55所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置减到时,温度寄存器的值将加1,减法计数器1的预置值将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。图410中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,知道温度寄存器仍达到被测温度值。2命令序列典型的单总线命令序列如下第一步初始化第二步ROM命令跟随需要交换的数据第三步功能命令跟随需要交换的数据。每次访问单总线器件,必须严格遵守这个命令序列,如果出现序列混乱,则单总线器件不会响应主机。但是,这个准则对于搜索ROM命令和报警搜索命令例外,在执行两者中任何一条命令之后,主机不能执行其后的功能命令,必须返回至第一步。1初始化基于单总线上的所有传输过程都是以初始化开始的,初始化过程由主机发出的复位脉冲和从机响应的应答脉冲组成。应答脉冲使主机知道,总线上有从机设备,且准备就绪。2ROM命令在主机检测到应答脉冲后,就可以发出ROM命令。这些命令与各个从机设备的唯一64位ROM代码相关,允许主机在单总线上连接多个从机设备时,指定操作某个从机设备。这些命令还允许主机能够检测到总线上有多少个从机设备以及其设备类型,或者有没有设备处于报警状态。从机设备可能支持5种ROM命令实际情况与具体型号有关,每种命令长度为8位。主机在发出功能命令之前,必须送出合适的ROM命令。ROM命令主要包括搜索0F0H、读ROM33H、匹配ROM55H、跳越ROM0CCH、报警搜索0ECH。3功能命令在主机发出ROM命令,以访问某个指定的单总线器件,接着就可以发出单总线器件支持的某个功能命令。功能命令主要包括转换温度44H、读暂存器0BEH、写暂存器4EH、复制暂存器48H、回读EEPROM0B8H、读供电方式0B4H等。3信号方式所有的单总线器件要求采用严格的通信协议,以保证数据的完整性。该协议定义了几种信号类型复位脉冲、应答脉冲、写O、写1、读0和读1。所有这些信号,除了应答脉冲以外,都由主机发出同步信号。并且发送所有的命令和数据都是字节的低位在前,这一点与多数串行通信格式不同多数为字节的高位在前。4软件程序设计主机控制DSL8820完成温度转换必须经过3个步骤初始化、ROM操作指令、存储器操作指令。单片机系统所用晶振频率为110592MHZ,根据DSL8820的初始化、写和读时序,分别编写3个子程序TXRESET为初始化子程序,WRBYTE为写命令或数据子程序,RDBYTE为读数据子程序,所有的数据读写均由最低位开始。单片机实现温度转换读取温度值程序的流程如图410所示。假设单片机系统所用的晶振频率为12MHZ,根据DSL8820的初始化时序、写时序和读时序,分别编写了三个子程序INT为初始化子程序,WRITE为写命令或数据子程序,READ为读数据子程序,所有的数据读写均由最低位开始。DATEQUP10INTCLREAINTL0SETBDATMOVR2,200INTL1SETB

温馨提示

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

评论

0/150

提交评论