毕业设计论文正文、参考文献等.doc_第1页
毕业设计论文正文、参考文献等.doc_第2页
毕业设计论文正文、参考文献等.doc_第3页
毕业设计论文正文、参考文献等.doc_第4页
毕业设计论文正文、参考文献等.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

2003 级本科毕业设计论文 第 36 页 共 35页1 绪论1.1 课题的研究目的和意义水温控制在工农业生产和人们群众日常生活中有着广泛的应用价值,在安全生产、提高效率、提高产品质量、实现控制智能化等方面有着广泛的应用领域和极高的市场价值。工业上各式炉温控制,以及发动机冷却控制都在水温控制的广义范围之内。生活中,随着科技的发展和人民群众生活水平的提高,传统式热水器已经不能满足日益增长的大众需求,于是具有自动加热和恒温保持功能的智能化热水器应运而生,弥补了传统的简单盛水金属壶和单一加热功能热水器的不足之处,满足了各种条件下水温自动加热、断电和恒温保持的需求,从而极大的方便了人民群众的生活。近年来,单片机以其功能强、体积小、使用方便、性能价格比高等优点,在仪器仪表、工业控制、家用电器、医用设备、计算机网络和通信、国防航空航天等领域都有着深入而广泛的应用。通过单片机进行温度控制与以往简单电路控制相比具有功能强、可靠性高、稳定性好、实现智能化以及更人性化的人机接口等优点。随着单片机的不断发展以及微电子技术的不断进步,更多的数字设备将被应用到这个领域,以其抗干扰、功耗低、便于微处理器控制的特点,逐渐成为水温控制系统中的主流。本课题将传感器技术和单片机技术相结合,力图以单片机为核心解决水温控制中实现多种功能的要求。1.2 温度采集传感器的分类与发展1.2.1 温度采集方法分类随着科学技术的日益发展,温度采集技术也随之不断进步。目前,温度采集方法种类繁多,大致有以下几种:a) 利用物体热胀冷缩原理制成的温度计利用此原理制成的温度计有三类1) 玻璃温度计,它是利用玻璃感温包内的测温物质(水银、酒精、甲苯、煤油等)受热膨胀、遇冷收缩的原理进行温度测量的;2) 双金属温度计,它是采用膨胀系数不同的两种金属牢固粘合在一起制成的双金属片作为感温元件,当温度变化时,一端固定的双金属片,由于两种金属膨胀系数不同而产生弯曲,自由端的位移通过传动机构带动指针指示出相应温度;3)压力式温度计,它是由感温物质(氮气、水银、二甲苯、甲苯、甘油和低沸点液体如氯甲烷、氯乙烷等)随温度变化,压力发生相应变化,用弹簧管压力表测出它的压力值,经换算得出被测物质的温度值。b) 利用热电效应技术制成的温度检测元件利用此技术制成的温度检测元件主要是热电偶。热电偶发展较早,比较成熟,至今仍为应用最广泛的检测元件。热电偶具有结构简单、制作方便、测量范围宽、精度高、热惯性小等特点。常用的热电偶有以下几种: 1) 镍铬-镍硅,型号为WRN,分度号为K,测温范围0-900,短期可测1200。 2) 镍铬-康铜,型号为WRK,分度号为F,测温范围0-600,短期可测800。 3) 铂锗-铂,型号为WRP,分度号为S,在 1300以下的温度可长期使用,短期可测1600。 4) 铂铑-铂锗,型号为WRR,分度号为B,测温范围300-1600,短期可测1800。其他还有非常用的热电偶。c) 利用热阻效应技术制成的温度计用此技术制成的温度计大致可分成以下几种:1) 电阻测温元件,它是利用感温元件(导体)的电阻随温度变化的性质,将电阻的变化值用显示仪表反映出来,从而达到测温的目的。目前常用的有铂热电阻(分度号为Pt100, Pt10两种)和铜热电阻(分度号有Cu50, Cu100 两种)。2) 导体测温元件,它与热电阻的温阻特性刚好相反,即有很大副温度系数,也就是说温度升高时,其阻值降低。他们的关系为式中 -温度T(K)时的电阻值(); -在温度时(K)的电阻值(); e- 自然对数的底,等于2.781; B- 常数,其值与半导体材料的成分和制作方法有关。3) 陶瓷热敏元件,它的实质是利用半导体电阻的正温特性,用半导体陶瓷材料制作而成的热敏元件,常称为PCT或NCT热敏元件。PCT热敏元件分为突变型及缓变型二类。突变型PCT,元件的温阻特性是当温度达到顶点时,它的阻值突然变大,有限流功能,多数用于保护电器。缓变型PCT,元件的温阻特性基本上随温度升高阻值慢慢增大,起温度补偿作用。NCT元件特性与PCT元件的突变特性刚好相反,即随温度升高,它的阻值减小。1.2.2 温度采集传感器的发展温度传感器的发展大致经历了三个阶段:a) 传统的分立式温度传感器b) 模拟集成温度传感器c) 数字集成温度传感器传统分立式温度传感器具有成本低,精度高等优点,但只能在一定温度范围内保持较好的线性特征,受体积的限制较多,而且易受外界噪声干扰,应用时必须考虑去噪和温度修正等问题。模拟集成式温度传感器具有精度高、体积小、使用灵活等优点,即继承了分立式传感器测量精准的特点,又克服了其体积较大和易受干扰的问题,具有良好的应用前景。数字式集成温度传感器则在简化电路、降低系统成本、简化去噪环节等方面具有更好的优势,尤其在数字电路应用日益发展的今天,能以代表温度信息的数字量作为直接输出量,极大地方便了系统对信号的采集和处理,有利于信息的交换处理和快速传输。1.3 水温控制发展趋势水温控制正朝着体积更小、成本更低、功能更强、功耗更低、适应环境更复杂的方向发展。系统的集成度越来越高,多种功能一并集成在同一芯片中,使得系统电路的组成更为简洁,功能的实现更为方便,同时在多种环境尤其是特殊的恶劣环境中实现稳定可靠的工作。2 系统的整体分析2.1 设计要求 制作一个水温自动控制系统,控制对象为900毫升净水,容器为电热水壶。水温可以在一定范围内由人工设定,并能在环境温度降低时自动调整,以保持水温基本不变。a) 温度设定范围为4090摄氏度,最小区分度为1摄氏度。b) 温度降低时,温度控制的静态误差为1度。c) 用十进制数码显示水的实际温度。2.2 系统结构分析可应用于系统的传感器和单片机种类繁多,测温有也有多种方法。系统的总体设计方案应在满足系统整体性能指标的前提下,充分考虑系统使用的环境,所选的结构要尽量简单实用、易于实现,器件的选用要着眼于合适的参数、稳定的性能、较低的功耗、低廉的成本以及较好的互换性能。系统采用近几年来成熟的各种温度传感技术、单片机控制技术、数据处理控制技术和功能化模块来构造基本的系统功能。系统的功能往往决定了系统采用的结构,本系统中前向通道为温度数据的采集和处理,而后单片机经过一定算法输出控制信号,去控制后向通道中控制器件的工作状态,从而形成闭环工作系统。根据高可靠性、实用性强、操作方便的设计原则,合理设计了水温控制系统的总体结构。水温控制系统是以AT89C51单片机为控制核心,辅以温度采集电路、驱动电路和执行机构对水温进行控制的系统。控制系统的组成模块如图图2.1 控制系统组成图(未标显示系统)前向通道由测温电路组成,测温电路又由传感器、电压转换、放大、A/D转换电路等组成。如下图图2。2 测温电路结构框图温度设定电路是为了满足人机交互功能,实现人工设定温度报警值,也可测试LED7段数码管的正常与否。同时还可根据需要扩展多中功能。控制电路部分由光耦隔离、放大、和继电器组成。实现控制信号的功率放大和控制作用。结构框图如下:图2。3 控制信号处理输出结构图光耦实现光电隔离,输出信号放大后驱动继电器开通或终断,来实现水温控制。2.3 器件的选型2.2.1 单片机芯片的选择目前,市场上比较流行的单片机种类主要有Intel公司、Atmel公司和Philip公司的8051系列单片机,Motorola公司的M6800系列单片机,Intel公司的MCS96系列单片机以及Microchip公司的PIC系列单片机。其中以增强型MCS-51为内核的8XC5X系列新一代8位嵌入式单片机为主。AT89C51是美国Atmel公司生产的低电压、低功耗、高性能CMOS技术制造的8位单片机,完全兼容MCS-51系统指令,内有4K字节可反复擦写的只读程序存储器(FLASH),可以承受1000次读/写擦除循环,适用于本系统的控制与编程,故选用AT89C51作为主控芯片。AT89C51引脚图:图2.4 AT89C51的PDIP封装引脚图2.2.2 温度采集传感器的选择随着温度传感器智能化、集成化技术的进步,芯片式集成温度传感器得到了长足的发展。传统的模拟温度传感器,如热电偶、热敏电阻和RTDS对温度的监控,在一些温度范围内线性不好,需要进行冷端补偿或引线补偿;热惯性大,响应时间慢。随着温度传感器智能化、集成化技术的进步,集成式温度传感器得到了长足的发展。集成模拟温度传感器与之相比,具有灵敏度高、线性度好、响应速度快等优点,而且它还将驱动电路、信号处理电路以及必要的逻辑控制电路集成在单片IC上,有实际尺寸小、使用方便等优点。世界上许多公司推出了新型的集成温度传感器系列。常见的模拟温度传感器有LM3911、LM335、LM45、AD22103电压输出型、AD590电流输出型。在如此众多的产品中选择出合适的器件,应该把握以下几点:外围电路应该尽量简单;测温的精度、分辨率要合适,以便减少不必要的电路和软件开发成本;占用 MCU 的 I/O引脚数情况如何,因为 MCU 的系统资源非常宝贵,输入通道有限,多点温度测量时,如果测量的点数超过了输入通道时,就要添加多路复用器,这将增加成本和开发时间,应尽量节约。其中,AD590是美国Analog Devices公司生产的单片集成二端式集成温度一电流传感器,具有体积小、重量轻、线性度好、响应速度快、性能稳定等一系列优点,而且适宜远距离测量和传输。AD590构成的测温电路,精度可达0.5,成本低,有很大的实用价值。当在电路中串接采样电阻R时,R两端的电压可作为输出电压。AD590输出电流信号传输距离可达到1km以上。作为一种高阻电流源,最高可达20M,所以它不必考虑选择开关或CMOS多路转换器所引入的附加电阻造成的误差。适用于多点温度测量和远距离温度测量的控制。正因为AD590具有以上特点,可以极好的满足系统对于温度采集的需求,所以本系统采用AD590作为温度采集的芯片。AD590封装图:图2.5 AD590封装图2.2.3 A/D转换芯片选择A/D转换是控制系统重要的环节,它负责将传感器输出的模拟量转换为控制器可以处理的数字量。合理选择A/D转换芯片对于确保控制系统的控制精度有着重要意义,如今市场上有多种A/D转换芯片可供选择,在实际的选型中应考虑以下方面的因素。首先是A/D转换的位数,我们常用的有8-16位,其中13位以上为高分辨率A/D,9-12位为中分辨率A/D,8位及以下为低分辨率A/D,其实10位以下的A/D产生的误差就比较大了,因此选择10到12位就能满足多数场合的应用。其次就要考虑转换速度,也就是每秒的转换次数。最后要考虑A/D转换的量程和线性度,以便于在控制器中做相应的处理。目前生产AD/DA的主要厂家有ADI、TI、PHILIP、MOTOROLA等,A/D转换芯片TLC2543是美国德州仪器公司(TI)生产的具有11个输入口的12字节串行A/D转换器,使用开关电容逐次逼近技术完成A/D转换。具有转换快、稳定性好、价格低廉、与微处理器接口简单等优点。在工作温度范围内10s转换时间,采样率为66 kb/s,有转换结束(EOC)输出,具有单、双极性输出;并且采用SPI总线技术以节省与单片机的连接的IO口。基于以上优点,决定采用TLC2543作为系统的AD数据转换芯片,以满足系统对转换精度等要求。TLC2543的引脚图:图2.6 TLC2543引脚图2.2.4 外接RAM芯片的选择RAM(静态存储器)是一种只要在供电条件下便能够存储数据的存储器件,而且是大多数高性能系统的一个关键部分。现在大多数系统都需要存储大量数据,还要同时处理一些实时数据。单靠单片机内部自带的及其有限的数据存储空间远远不能满足系统要求。在具体选用时,通常应考虑存取速度、芯片的价格、存贮容量和结构这几方面的因素。24C64是Atmel公司采用CMOS技术生产的低功耗、高可靠性的具有64K存储容量的电可擦除存储器。它支持按字节写和按页(32字节)写操作,可以通过写保护引脚进行硬件数据保护,可承受1,000,000擦写循环,数据可保持100年。并且采用IC总线与单片机进行数据的传输,节省了大量接口。选用24C64不仅满足了系统的数据存储需求,还节省了单片机的IO口,有助于系统扩展更多的功能。24C64引脚图如下:图2。7 24C64的SOIC和PDIP引脚2.2.5 显示和键盘驱动芯片的选择本系统中显示采用LED数码管显示十进制温度值,选用BitCode公司生产的具有串行接口,可同时驱动8位共阴数码管(或64只独立LED)和最多达64键盘矩阵的智能显示驱动芯片HD7279。与CPU间采用串行接口方式,仅占用4根口线,内部含有译码器,可直接接收BCD码或16进制码,同时具有两种译码方式,可以实现LED数码管位寻址和段寻址、消隐和闪烁属性等多种控制指令,有循环左移和循环右移等测试指令,编程灵活;具有自动消除抖动并识别按键键值的功能,内部含有驱动器,无需外围元件便可直接驱动LED。选用HD7279通过添加若干电阻即可实现多种功能的显示和键盘电路,对于简化电路,提高系统稳定度有着积极的作用。HD7279引脚图如下:图2.8 HD7279引脚图2.2.6 串行通信芯片选型串行通信是为了把温度数据上传给PC做进一步处理,例如打印温度表、远距离数据传输等等。串行端口的本质功能是作为CPU和串行设备间的编码转换器。当数据从CPU经过串行端口发送出去时,字节数据转换为串行的位。在接收数据时,串行的位被转换为字节数据。一个完整的RS-232接口采用标准的25芯插头座(或者9芯插头座),25芯和9芯的主要信号线相同。本系统中采用9芯插头座,只需使用第2、3、5脚即可完成串行通信要求。其中,2脚为发送端口,3脚为接收端口,5脚为信号地。电平转换芯片MAX232是由美国德州仪器公司(TI)推出的一款兼容RS232标准的芯片。该器件包含2驱动器、2接收器和一个电压发生器电路提供TIA/EIA-232-F电平。它可以将TTL电平转换成RS-232电平。内部有电压倍增电路和电压转换电路,只需单一+5V电源供电,可实现2路TTL/CMOS电平+5V到RS-232C电平10V的转换和2路RS-232C电平10V到TTL/CMOS电平+5V的转换。通过选用MAX232,可以实现单片机与上位机的通信,或者和其它数字设备进行数据的传输和转化。MAX232引脚图如下图:图2.9 MAX232引脚图2.4 设计中的需要注意的问题根据以上所述的系统总体设计构想,设计中需特别注意的问题如下:第一,系统需要实现多种功能,单片机的IO口有限,选择更多的外围芯片连接时多用串行接口类型的,并且尽量使用外围电路少,组成电路简洁的芯片。第二,抗干扰设计必须恰当,对于传感器部分,设计的电阻中多位可调型,以便在电压分压处理上有更好的调节能力。第三,尽量提高系统整体可靠性,在电路具体实现上要多注意这点,加入去噪处理。3 系统硬件结构与分析硬件电路上以单片机AT89C51为核心,配以其它外围芯片及其外围电路组成。主要由AD590测温电路、A/D转换电路、显示和键盘电路、外接RAM电路、串行通信电路、控制信号输出电路、报警电路组成。结构框图如下:图3.1 系统硬件电路结构图3.1 AT89C51最小系统单片机最小系统即保证单片机正常工作的最小模式,由复位电路和时钟电路组成。单片机的复位电路有多种实现形式,常见的有微分式、积分式、比较型以及看门狗型,若单论性能,当然以看门狗型复位电路最为可靠功能最强,但由于增加了额外的看门狗芯片,使得系统成本提高,而且要占用单片机不多的IO口。对于本系统而言,由于结构较为简单,编程不是很复杂,从而简单的微分复位电路即可满足需要,所以本系统采用微分型复位电路。如下图所示:图3.2 单片机复位电路电路中,接通电源后,实现复位操作。图中电容C1和电阻R4对电源十5V来说构成微分电路。上电后,保持RST一段高电平时间,由于单片机内的等效电阻的作用,达到上电复位的操作功能。在使用微分型复位电路并且使用稳压电源时,应考虑在电容输入端加入适当的电感以减少负载突变而引起的干扰复位脉冲的产生。在电路板空间有限的情况下决定选用此复位电路。单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。外部振荡方式是把外部已有的时钟信号引入单片机内。这种方式适宜用来使单片机的时钟与外部信号同步。内部振荡方式所得的时钟信号比较稳定,实用电路中使用较多。所以本系统采用单片机内部振荡方式时钟电路,如下图:图3.3 单片机时钟电路电路中,选用12MHz的晶振,电容C2和C3起稳定振荡频率、快速起振的作用。单片机AT89C51最小系统如下图:图3.4 AT89C51最小系统电路图此部分电路保证了单片机在工作在晶振频率下(12MHz),即单片机机器周期为1s,并且能够在工作异常时,手工进行复位操作,满足了系统要求。3.2 AD590测温电路AD590测温电路由AD590、电压转换电路、放大电路组成。如下图:图3.5 AD590测温电路AD590是输出电流式温度传感器,流过器件的电流(uA)等于器件所处环境的热力学温度(开尔文)度数即Ir/T=1uA/K式中:Ir-流过器件(AD590)的电流,单位为uA(微安); T-热力学温度,单位为K(开尔文)。需要注意的是,它输出的比例电流是与温度标度开尔文相对应的,因此计算设计时要修正为摄氏度,例如在室温25时,其输出电流Iout=(273+25)=298A。AD590温度与电流的关系如表所示摄氏温度/ AD590电流/A经10K电压/V0273.2 2.73210283.2 2.83220293.2 2.93225298.2 2.98230303.2 3.03240313.2 3.13250323.2 3.23260 333.2 3.332100 373.2 3.732表3.1 温度与AD590输出电流电路中采用串接采样电阻R1,从R1两端可以得到输出电压信号,R1取值不能太大,以保证AD590 两端电压大于3V,在这里R1取值10K。AD590输出的与温度成比例的电流I经接地电阻R1分压,输出相应电压信号。AD590输出电流I=(273+T)A(T为摄氏温度),因此从R1端输出的电压为(273+T)A10K=(2.73+T/100)V。为了将电压测量出来,同时又使流过接地电阻R1的电流I不发生分流,使用具有高阻态的电压跟随器使其输出电压V2等于接地电阻的分压(273+T)A10K=(2.73+T/100)V。图3.5中下半部分电路作用是生成基准电压,齐纳二极管的作用是滤掉电源的杂波,保持电压稳定;接着在分压电路中通过调节R8可调电阻器得到所需分压值。即图中V1,令V1为2.73V,即为运算放大器反向端输入的基准电压。V1和V2作为差模信号分别输入到运算放大器的反向和正向输入端,进行差模放大。最终输出系统的模拟温度电压信号,记为VIN,其值为VIN=()(V2-V1)即: VIN=()(2.73+T/100-2.73)=故当温度值为0时,输出电压为0V;当温度为100时,输出为5V。满足系统要求,可以被下一级的A/D转换芯片处理。3.3 A/D转换电路本系统采用TLC2543进行A/D转换,电路图如下:图3.6 TLC2543与单片机连接电路图电路中,从温度测量电路中输出的模拟温度电压信号VIN输入到TLC2543的第一个A/D转换口中,A/D转换值由DOUT端口以SPI总线技术串行输入到单片机的IO口P26中。TLC2543基准电压上限定为5V,由于条件所限,上限基准电压输入端口REF+与Vcc相连,下限基准电压输入端口REF-接地,系统在此会产生一定的误差。同步时钟口CLK连接到单片机的IO口P24,而控制命令输入口DIN连接到了单片机的IO口P25中,A/D转换结束标志位EOC与单片机的IO口P23连在一起。这样,TLC2543就可以通过模拟SPI总线与单片机进行数据传输。由于它采用SPI串行总线技术与单片机进行数据传输,因此在这里有必要介绍一下SPI总线以及在单片机中的实现。a) SPI总线简介及组成SPI(Serial Peripheral Interface-串行外设接口)总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。外围设置FlashRAM、网络控制器、LCD显示驱动器、A/D转换器和MCU等。SPI总线系统可直接与各个厂家生产的多种标准外围器件直接接口,该接口一般使用4条线:串行时钟线(SCK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOST和低电平有效的从机选择线SS(有的SPI接口芯片带有中断信号线INT或INT,有的SPI接口芯片没有主机输出/从机输入数据线MOSI)。由于SPI系统总线一共只需34位数据线和控制即可实现与具有SPI总线接口功能的各种I/O器件进行接口,而扩展并行总线则需要8根数据线、816位地址线、23位控制线,因此,采用SPI总线接口可以简化电路设计,节省很多常规电路中的接口器件和I/O口线,提高设计的可靠性。由此可见,在MCS-51系列等不具有SPI接口的单片机组成的智能仪器和工业测控系统中,当传输速度要求不是太高时,使用SPI总线可以增加应用系统接口器件的种类,提高应用系统的性能。SPI总线接口系统的典型结构如图所示图3.7 SPI总线的组成当一个主控机通过SPI与几种不同的串行I/O芯片相连时,必须使用每片的允许控制端,这可通过MCU的I/O端口输出线来实现。但应特别注意这些串行I/O芯片的输入输出特性:首先是输入芯片的串行数据输出是否有三态控制端。平时未选中芯片时,输出端应处于高阻态。若没有三态控制端,则应外加三态门。否则MCU的MISO端只能连接1个输入芯片。其次是输出芯片的串行数据输入是否有允许控制端。因此只有在此芯片允许时,SCK脉冲才把串行数据移入该芯片;在禁止时,SCK对芯片无影响。若没有允许控制端,则应在外围用门电路对SCK进行控制,然后再加到芯片的时钟输入端;当然,也可以只在SPI总线上连接1个芯片,而不再连接其它输入或输出芯片。 b) 在MCS-51系列单片机中的实现方法 对于不带SPI串行总线接口的MCS-51系列单片机来说,可以使用软件来模拟SPI的操作,包括串行时钟、数据输入和数据输出。对于不同的串行接口外围芯片,它们的时钟时序是不同的。对于在SCK的上升沿输入(接收)数据和在下降沿输出(发送)数据的器件,如图:图3.8 SPI总线接口原理图一般应将其串行时钟输出口P1.1的初始状态设置为1,而在允许接口后再置P1.1为0。这样,MCU在输出1位SCK时钟的同时,将使接口芯片串行左移,从而输出1位数据至MCS-51单片机的P1.3口(模拟MCU的MISO线),此后再置P1.1为1,使MCS-51系列单片机从P1.0(模拟MCU的MOSI线)输出1位数据(先为高位)至串行接口芯片。至此,模拟1位数据输入输出便宣告完成。此后再置P1.1为0,模拟下1位数据的输入输出,依此循环8次,即可完成1次通过SPI总线传输8位数据的操作。对于在SCK的下降沿输入数据和上升沿输出数据的器件,则应取串行时钟输出的初始状态为0,即在接口芯片允许时,先置P1.1为1,以便外围接口芯片输出1位数据(MCU接收1位数据),之后再置时钟为0,使外围接口芯片接收1位数据(MCU发送1位数据),从而完成1位数据的传送。3.4 外接RAM电路RAM24C64与单片机89C51连接图如下:图3.9 24C64与单片机连接图因为系统中只有一个RAM24C64,故它的地址片选段A0、A1、A2均接地处理。RAM24C64是采用IC总线与单片机进行串行数据传送的。它只占用单片机的两个IO口即可完成存储功能,与以往占用单片机8条IO通道的并口存储芯片相比,优势显而易见。而且外围电路极其简单,只需两个上拉电阻。RAM24C64的同步时钟SCL和数据传送SDA分别接到单片机的IO口P14和P15上,模拟IC总线实现数据传送。在这里有必要介绍一下IC总线技术和在单片机上的实现。a) IC总线规范简介IC总线通过2根线串行数据(SDA)和串行时钟(SCL)线连接到总线上的任何一个器件,每个器件都应有唯一的地址,而且都可以作为一个发送器或接收器。此外,器件在执行数据传输时也可以被看作是主机或从机。发送器:本次传送中发送数据(不包括地址和命令)到总线的器件。接收器:本次传送中从总线接收数据(不包括地址和命令)的器件。主机:初始化发送、产生时钟信号和终止发送的器件,它可以是发送器或接收器。主机通常是微控制器。从机:被主机寻址的器件,它可以是发送器或接收器。IC总线是一个多主机的总线,即可以连接多于一个能控制总线的器件到总线。当两个以上能控制总线的器件同时发动传输时,只能有一个器件真正的控制总线而成为主机,并使报文不被破坏,这个过程叫做仲裁。与此同时,能使多个能控制总线的器件产生时钟信号的同步。SDA和SCL都是双向线路,连接到总线的器件的输出级必须是漏极开路或集电极开路,都通过一个电流源或上拉电阻连接到正的电源电压,这样才能够实现“线与”功能。当总线空闲时,这两条线都是高电平。在标准模式下,数据的传输速率为0-100Kb/s。b) IC总线位传输IC总线每传输一个数据位必须产生一个时钟脉冲。SDA线上数据必须在时钟线SCL高电平时保持稳定,数据线的电平状态只有在时钟信号是低电平时才能改变。高低电平宽度不小于4.7s。不过,在起始条件和终止条件中,不受此约束。当SCL线是高电平时,SDA线从高电平转到低电平即意味着启动总线进行数据传输;总线终止传输数据则与此相反。c) IC总线数据传输发送到SDA线上的每个字节必须是8位,每次传输可以发送的字节数量不受限制。每个字节后必须跟一个应答位,首先传输的是数据的最高位(MSB)。相应的应答时钟脉冲由从机产生。在应答的时钟脉冲期间,发送器释放SDA线(高)。在应答的时钟脉冲期间,接收器必须将SDA线拉低,使它在这个时钟脉冲的高电平期间保持稳定的低电平。若从机接收器不能接收更多的数据字节,将不产生这个应答位;主机接收器在接收完最后一个字节后不产生应答,通知从机发送器数据结束。d) IC总线传输协议主机产生起始条件后,发送的第一个字节为寻址字节,该字节的头7个(高7位)为从机地址,最低位(LSB)决定了报文的方向,“0”表示主机写信息到从机,“1”表示主机读从机中的信息。当发送了一个地址后,系统中的每个器件都将头7位于它自己的地址比较,如果一样,器件就会应答主机的寻址,至于是从机接收器还是从机发送器都由“R/”为决定。主机产生起始条件后,发送一个寻址字节,收到应答后就开始数据传输,数据传输一般由主机产生的停止位终止。3.5 显示和键盘矩阵电路系统通过LED数码管实时显示所测温度,并通过键盘预先设定温度加热值和温度报警值来实现智能控制。用HD7279作为驱动芯片,通过单片机向HD7279写控制字及从HD7279处接受数据来实现对LED数码管和键盘的控制和响应。具体电路如下图:图3.10 HD7279驱动键盘矩阵和LED数码管DIG0-DIG7分别为8个LED管的位驱动输出端。SA-SG分别为LED数码管的A段-G段的输出端。DP为小数点的驱动输出端。DIG0-DIG7和SA-SG同时还分别是64键盘的列线和行线端口,完成对键盘的监视、译码和键码的识别。在88阵列中每个键的键码是用16进制表示的,可用读键盘数据指令读出,其范围是00H-3FH。 HD7279与微处理器仅需4条接口线,其中为片选信号。当MCU访问HD7279时,应将片选端置为低电平。DATA为串行数据/输出端,当向HD7279发送数据时,DATA为输入端;当HD7279A输出键盘代码时,DATA为输出端。CLK为数据串行传送的同步时钟输入端,时钟的上升沿表示数据有效。KEY为按键信号输出端,在无键按下时为高电平;而有键按下时此引脚变为低电平并且一直保持到键释放为止。 RC引脚用于连接HD7279的外接振荡元件,其典型值为R=1.5k,C=15pF。为复位端。该端由低电平变成高电平并保持25ms即复位结束。通常,该端接+5V即可。 CLK0是振荡输出端,VDD-正电源(5V),VSS-接地。HD7279具有串行接口,可以同时驱动8位共阴极数码管和连接64键的键盘矩阵,单片即可以完成数码显示和键盘接口的全部功能,而且该芯片自带RC振荡电路,无需外接时钟。同时该芯片内部含有译码器,可直接接受BCD码或16进制码,并具有2种译码方式。此外,它还具有多种控制指令,如消隐、闪烁、左移、右移、段寻址等。HD7279具有片选信号可以方便地实现多于8位的显示或多于64键的键盘接口。HD7279采用串行方式与单片机通讯,串行数据从DATA引脚送入芯片,并由CLK端同步,当片选信号变为低电平后,DATA引脚上的数据在CLK引脚的上升沿被写入HD7279的缓冲寄存器。HD7279应连接共阴式数码管。在温度显示过程中采用循环扫描的工作方式,如果采用普通的数码管,亮度可能不够,采用高亮度或超高亮度的型号,可以解决这个问题。数码管的尺寸亦不易选得过大,一般字符高度不宜.超过1英寸,如使使用大型数码管,应采用适当的驱动电路。3.6 输出信号电路单片机将温度采集电路和A/D转换电路输出的数字温度信号与RAM24C64中存储的温度预先设定值相比较,按照一定算法,得出结果以两位二进制数形式作为控制信号从单片机IO口P14、P15中传送出来。经过光耦和放大电路,最终控制继电器的开通或断开一达到控制加热装置的工作与否。电路图如下:图3.11 控制信号输出电路图图中,光耦的作用是将单片机系统与继电器环路隔离开,避免在继电器开断过程中的干扰信号影响单片机的运行;通过一个三极管发大电路将控制信号的功率增大,使之有能力开启或关断继电器。当P14、P15中输出00时,电阻R19和R18分压,使得光耦中发光二极管导通,进而光耦导通,下一级电路出产生电流使继电器闭合,加热装置开始加热;当P14、P15中输出01时,发光二极管不导通,光耦断开,下一级电路中没有电流,继电器断开,加热装置停止加热;当P14、P15中输出10时,发光二极管导通,光耦导通,放大电路中产生电流,继电器闭合,加热装置又开始加热;同理,当P14、P15中输出11时,由于R19的分压,使得发光二极管不能导通,发大电路中没有电流产生,继电器断开,加热装置停止加热。3.7 串行通信电路串行通信中电平转换芯片MAX232与单片机之间的连接如图:图3.12 MAX232与单片机的连接3.8 报警电路报警电路采用蜂鸣器以不同的频率发出不同的声音,以代表不同的信息。报警电路如图:图3.13 报警电路当单片机的IO口P17输出低电平时三极管Q1导通,蜂鸣器发出鸣声;当单片机的IO口P17输出高电平时三极管Q1不导通,蜂鸣器没有鸣声。通过在单片机的IO口P17输出不同占空比的方波时,三极管导通或截至,进而蜂鸣器便发出不同频率的声音,实现过温报警、恒温控制、开始加热等信号表示。3.9 系统整体电路图系统整体的电路图如图; 图3.14 系统整体电路图为了使系统更加稳定,加入各个芯片的去耦电容(图中右下角),以及引入电压源的去耦电容。4 系统软件结构与分析4.1 主程序设计系统开始工作后,单片机即与A/D转换芯片进行连接,开启A/D转换,并读取转换值;而后经过校正处理后判断是否超温,以决定是否发出报警信号,并将所得的实测温度值经显示电路用LED数码管以十进制形式显示出来;最后将实测温度与RAM中所存温度限值比较,经过算法分析后输出控制信号。采用中断方式处理按键程序,当有按键按下时,引起INT0中断,系统程序转向中断处理程序,功能上实现按键输入温度限值。系统流程图如下图:图4.1 主程序流程图初始化主要是开中断,设置堆栈入口地址等,而后单片机向A/D转换芯片TLC2543发送数据,启动A/D转换,并接收转换数字量。而后与RAM中存储的温度预设值和温度报警值作比较,若超过温度报警值,则显示当前温度值并发送报警信号通过蜂鸣器鸣声报警。若当前温度值正常,则只是显示当前温度值,无报警信号。而后发出控制信号控制继电器开断,进行工作。采用延时程序是为了保证每隔一定时间系统便开始采样温度信号。处理数据时,若温度为报警温度范围,则在单片机的IO口输出继电器断开信号。若温度正常,则判断实际温度与预设值的差值,若差值在5度以外,则输出持续通电信号;若在2到5度之间,则输出占空比为2:1(即2/3时间通电)的方波;当在1度时,输出占空比为1:1的方波;当测得温度为设定值时断开继电器。4.2 子程序设计4.2.1 A/D程序设计图4.2 TLC2543 A/D转换流程图4.2.2 单片机读写RAM图4.3 单片机读和写RAM 24C64流程图RAM 24C64采用IC总线与单片机进行串行数据传送,开启IC总线主要是在SCL(总线同步时钟)高电平期间,将SDA(数据线)由高电平拉为低电平,时钟电平脉冲宽度不能小于4.7s。启动IC总线程序:Delay_10_uS();/延时程序,10sI2C_SDA =1; /置数据线为1Delay_10_uS();I2C_SCK =1; /置时钟线为高电平1Delay_10_uS();I2C_SDA = 0; /在时钟线SCL保持高电平期间将数据线SDA拉为低 / 电平Delay_10_uS();I2C_SCK = 0; /时钟线拉低,时钟脉冲宽度大于4.7sDelay_10_uS();return 1; /返回标志位4.2.3 HD7279显示程序HD7279的指令结构有三种类型:1、不带数据的纯指令,指令的宽度为8BIT,即微处理器上需要发送8个CLK脉冲。2、带数据的指令,宽度为16BITCLK脉冲。3、读取键盘数据指令,宽度为16BIT,前8个为微处理器发送到HD7279的指令,后8个BIT为HD7279返回的键盘代码,执行此指令时,HD7279的DATA端在第9个CLK脉冲的上升沿变为输出状态,并于第16个脉冲的下降沿恢复为输入状态,等待接受下一个指令。采用中断方式对键盘进行监视,当有键按下时读取按键代码并将其显示在LED显示器上。首先定义HD7279的各个引脚。再将单字节数据写入到HD7279,高位在前。发送的数据可能是指令或显示数据。从HD7279读取8位按键代码,高位在前,读取8位按键代码在累加器A中。图4.4 HD7279显示子程序流程图图4.5 中断按键处理程序流程图初始化包括HD7279复位、开启消隐等。写入命令控制字主要是符合HD7279指令方式,主要是决定选中哪一个数码管进行显示。在写入所要显示的数据。采用SPI总线发送字节函数部分程序: for(i=0;i8;i+) if(Data_Out&0x80) /判断发送字节是否为1Set_Bit(Hd7279_Data);/调用些1函数,置1elseClear_Bit(Hd7279_Data);/ 置0Set_Bit(Hd7279_Clk);/开启时钟,置1Short_Delay();/调用延时Clear_Bit(Hd7279_Clk);/时钟线置0Short_Delay(); Data_Out=Data_Out1;/数据字节左移以便接收下一位 5 系统调试与验证系统调试是课题内容中很关键的一部分,也是检验温度采集及单片机处理数据模块性能的重要途径。虽然系统中各个模块的性能指标都满足设计的要求,但是最后整个系统能否满足事先设定的性能指标,关键是看系统调试的结果。由于本课题包括硬件和软件两部分,因此调试时应硬件和软件调试相结合完成系统总体调试。5.1 调试平台硬件调试平台采用系统的电路板,通过使用万用表、信号发生器、示波器等仪器仪表进行硬件调试。软件调试平台采用MedWin仿真编译平台,MedWin是万利有限公司Insight系列仿真开发系统的高性能集成开发环境。即编辑、编译/汇编、在线及模拟调试为一体,VC风格的用户界面,内嵌自主版权的宏汇编器和连接器,并完全支持Franklin和KeilC扩展OMF格式文件,支持所有变量类型及表达式,配合Insight系列仿真器,是开发51系列单片机的理想开发工具。5.2 AD590和放大电路调试对此部分电路进行调试,主要有a) 调节传感器AD590电路中可变电阻,使得基准电压 尽可能精确在2.73V,并保持稳定。b) 增加水温,验证AD590分压电阻输出电压值和理论值是否一致。c) 测量放大器LM324输出放大电压结果,是否符合要求。首先,用小螺丝刀缓慢调节可变电阻R8,同时用完用表测量基准电压处(即R9管脚)。测得电压值为2.73V时停止,并固定。然后,将AD590放入热水中并加热,用万用表测量AD590分压电阻处电压值,得到数据如下:热水水温值/分压输出值/V20 2.9330 3.0340 3.1350 3.2360 3.33703.4380 3.53表5.1 AD590测温与分压输出同时,用万用表测量运算放大器LM324输出引脚电压,查看输出放大电压值。采用差模放大,AD590分压电阻处电压经电压跟随器,输入到运放正相端;基准电压2.73V输入到运放反相端,则运算放大器LM324差模输入电压与输出电压关系测量数据如下:LM324差模输入值/VLM324输出电压值/V0.231.000.331.500.432.000.532.500.633.000.733.500.834.00表5.2 LM324输入输出电压5.3 A/D转换芯片TLC2543调试TLC2543是12字节串行A/D转换器,基准电压上限Vref+=5V,下限Vref-=0V。因此,其转换精度为: V满足系统精度要求。用万用表测得运算放大器LM324输出引脚电压,即TLC2543电路输入电压值,同时运行程序,观察芯片输出数字量。LM324输出值/VTLC2543输出数字量1.000011001100111.500100110011002.000110011001102.501000000000003.001001100110013.501011001100114.00110011001100表5.3 LM324输入输出电压经验证满足精度和准确度要求。5.4 显示部分调试显示部分主要是对HD7279进行软件调试。发送显示数据命令等。HD7279的控制指令由6条纯指令、7条带数据指令和1条读键盘指令组成。纯指令由一个字节组成。有固定的格式和内容。如复位指令为A4,测试指令BF,左移指令A1,右移指令A0,循环左移A3,循环右移A2等。首先进行数码管测试,主要包括:全亮、循环左移或右移,消隐等功能。其次进行指定数字显示,例如按下0号键显示0,以方式1译码显示。数据格式为: 第 一 字 节第 二 字 节 D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0 11001a2a1a0DPXXXd3d2d1d0表5.4 方式0译码

温馨提示

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

评论

0/150

提交评论