电阻炉温度控制系统的设计_第1页
电阻炉温度控制系统的设计_第2页
电阻炉温度控制系统的设计_第3页
电阻炉温度控制系统的设计_第4页
电阻炉温度控制系统的设计_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、电炉温度控制系统设计摘要热处理是提高金属材料及其制品质量的重要技术手段。近年来随工业的发展,对金属材料的性能提出了更多更高的要求,因而热处理技术也向着优质、高效、节能、无公害方向发展。电阻炉是热处理生产中应用最广泛的加热设备,加热时恒温过程的测量与控制成为了关键技术,促使人们更加积极地研制热加工工业过程的温度控制器。此设计针对处理电阻炉炉温控制系统,设计了温度检测和恒温控制系统,实现了基本控制、数据采样、实时显示温度控制器运行状态。控制器采用 51 单片机作为处理器,该温度控制器具有自动检测、数据实时采集处理及控制结果显示等功能,控制的稳定性和精度上均能达到要求。满足了本次设计的技术要求。关键

2、词:电阻炉,温度测量与控制,单片机目录一、绪论- 1 -1.1选题背景- 1 -1.2电阻炉国内发展动态- 1 -1.3设计主要内容- 2 -二、温度测量系统的设计要求- 3 -2.1 设计任务- 3 -2.2 系统的技术参数- 3 -2.3 操作功能设计- 4 -三、系统硬件设计- 5 -3.1 CPU选型- 5 -3.2 温度检测电路设计- 5 -3.2.1 温度传感器的选择- 5 -3.2.1.1热电偶的测温原理- 6 -3.2.1.2 热电偶的温度补偿- 7 -3.2.2 炉温数据采集电路的设计- 7 -3.2.2.1 MAX6675芯片- 7 -3.2.2.2 MAX6675的测温原

3、理- 7 -3.2.2.3 MAX6675 与单片机的连接- 8 -3.3 输入/输出接口设计- 9 -3.4 保温定时电路设计- 10 -3.4.1 DS1302 与单片机的连接- 11 -3.5 温度控制电路设计- 11 -系统硬件电路图- 13 -四、系统软件设计- 14 -4.1 软件总体设计- 14 -4.2 主程序设计- 14 -4.3 温度检测及处理程序设计- 15 -4.4 按键检测程序设计- 17 -4.5 显示程序设计- 19 -4.6 输出程序设计- 20 -4.7中值滤波- 21 -五、结论- 22 -参考文献- 23 -一、绪论1.1 选题背景在现代化的工业生产中,电

4、流、电压、温度、流速、流量、压力和开关量都是常用的主要被控参数。例如:在机械制造、电力工程、化工生产、造纸行业、冶金工业和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。其中温度控制在生产过程中占有相当大的比例,即使日常生活中的电热水器、空调、微波炉、电烤箱等家用电器也同样需要温度监控。可见温度控制电路广泛应用于社会生活的各领域,所以对温度进行控制是非常有必要和有意义的。准确地测量和有效地控制温度是优质、高产、低耗和安全生产的重要条件。1.2 电阻炉国内发展动态电阻炉是热处理生产中应用最广泛的加热设备,它在机械、冶金等行业的生产中占有十分重要的地位,

5、温度控制质量的好坏将直接影响着热处理产品的产量和质量,对于提高生产率和节约能源也有举足轻重的意义。我国对电阻炉的控制进行了广泛的研究始于上世纪 80 年代,随着微型计算机控制技术的发展,电阻炉计算机控制逐步进入实用化阶段。目前,国内电阻炉控制系统的研究现状如下:(1) 采用先进的控制设备随着单片机、可编程控制器与工业控制机等先进控制系统的发展,逐步取代了以前大规模的继电器、模拟式控制仪表。单片机也因其极高的性价比而受到人们的重视和关注,获得广泛地应用和迅速地发展。单片机具有体积小、重量轻、控制功能强、价格低与开发方便等优点。单片机应用的意义不仅在于它的广阔范围及所带来的经济效益,更重要的意义在

6、于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。以前采用硬件电路实现的大部分控制功能,现在可以用单片机通过软件的方法来实现。以前自动控制中的 PID 调节,现在可以用单片机实现具有智能化的数字计算控制、模糊控制和自适应控制。这种以软件取代硬件并能提高系统性能的控制技术称为微控技术。(2)采用新的控制方法对传统的负反馈、单一 PID 控制系统做了多种补充,从而使控制性能更佳。同时,越来越多的控制系统采用新的控制方法如:模糊控制、神经网络控制、才遗传算法控制、最优控制、自整定 PID 参数控制器、自适应控制和自校正控制器等。1.3 设计主要内容设计分析了炉温的特性和单片机炉温控制系

7、统的工作原理,完成了以 AT89S5l单片机为控制器,控制系统包括温度数据采集电路、功率控制输出电路、键盘与显示接口电路和声光报警等电路的硬件电路设计,实现了温度数据采集、处理、显示、状态切换、定时保温、系统的故障自诊断和超限声光报警等功能。二、温度测量系统的设计要求电阻炉温度控制系统应具备温度测量、显示、过限报警等功能,并要求具有良好的稳定性、高控制精度,以满足热处理对温度的需求。系统设计时,首先确定系统的设计目标,确定温度控制器的规格与技术指标,这对于明确设计的目的性和控制功能的逻辑性有重要的意义。然后设计系统的相关的操作规范及运行参数,为硬件设计和软件设计确定具体的目标。2.1 设计任务

8、针对原有电阻炉温度控制系统的功能缺陷及现有控制要求,确定本次设计的目标如下:(1) 系统的测温范围在 01000,控温精度2,显示精度 0.1;(2) 控制面板能便捷输入控制参数,如 P、I、D 及保温时间;(3) 用 7 段高亮数码管显示设定炉温(5 位数码管)、炉温实时温度(5 位数码管)、保温时间(3 位数码管)等系统信息;(4) 用三个发光二极管以不同的颜色和发光状态来指示显系统的工作状态。2.2 系统的技术参数整个系统最终达到的技术指标是由系统中的各个环节共同作用后完成的。比如要提高温度检测的精度,只采用高精度的A/D转换器是不够的,还需要好的抗干扰措施、精确度高的传感器及软件线性化

9、处理等。一般情况下,技术指标达到某个限度后,再想提高是不容易办到的,为此可能付出更多的经费与时间。设备规格是硬件投资的主要依据。如电源的规格、传感器类型、控制器类型等。根据需要确定所设计的温度控制系统的主要技术参数如表2-1所示:表2-1系统主要技术参数2.3 操作功能设计为了便于操作,所设计的温度控制器的面板总计五个按键、三个工作状态指示灯、一个蜂鸣器和十三个高亮 7段 LED 数码管,用于完成参数的设置和信息的显示。其中,五个按键分别为设置、加一、减一、左移、右移,用于设置温度以及保温时间。三个工作状态指示灯分别指示暂停状态、工作状态、超限报警。十三个高亮7段LED数码管中有五位显示设定温

10、度、五位显示实际温度、三位显示保温时间。三、系统硬件设计电阻炉控制系统应具备温度测量、显示、参数输入等功能,并要求具有可靠性高、通用性强、控制精度佳等特点,以满足控制需求。基于上述性能要求,系统的硬件结构如图 3-1 所示,系统包括单片机、温度检测与处理电路、键盘与显示接口电路、声光报警电路以及计时电路等。图3-1温度控制系统硬件结构图3.1 CPU选型温度控制系统选用 ATMEL89 系列单片机中的 AT89S51 作为微处理器。AT89S51 是一个低功耗,高性能 CMOS 型 8 位单片机,片内含 4k Bytes ISP(In-systemprogrammable)Flash 存储器,

11、器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元,功能强大的微型计算机的 AT89S51 可为许多嵌入式控制应用系统提供高性价比的解决方案。3.2 温度检测电路设计温度检测电路是电阻炉温度控制系统的重要部分,其性能好坏直接决定了整个系统的性能,它承担着检测电阻炉温度并将温度数据传送到单片机的任务。3.2.1 温度传感器的选择热电偶在工程上使用最为广泛的温度传感器之一,它具有构造简单、精度高、热响应时间快、测温范围大(-200+2000均可连续测温)以及性能可靠使

12、用寿命长的优点,在温度测量中占有很重要的地位。热电偶的种类很多,热电偶有 K 型(镍铬-镍硅)WRN 系列,N 型(镍铬硅-镍硅镁)WRM 系列,E 型(镍铬-铜镍)WRE 系列,J 型(铁-铜镍)WRF 系列,T 型(铜-铜镍)WRC 系列,S 型(铂铑 10-铂)WRP 系列,R 型(铂铑 13-铂)WRQ 系列,B 型(铂铑 30-铂铑 6)WRR 系列等。考虑设计成本与实际的温度范围(01000),在本设计中选用分度号为 K 的镍铬-镍硅热电偶 WRN-120,表 3-1 所列的是常用热电偶的材料规格和线径使用温度的关系:表3-1 常用热电偶材料规格和线径使用温度3.2.1.1热电偶的

13、测温原理将两种不同材料的导体或半导体(称为热电偶丝材或热电极)两端焊接起来,构成一个闭合回路,当两导体之间存在温差时,便产生电动势,在回路中就会形成一个大小的电流,这种现象称为热电效应,而这种电动势称为热电势。热电偶就是利用这种原理进行温度测量的,其中,直接用作测量介质温度的一端叫做工作端(也称为测量端),另一端叫做冷端(也称为补偿端);冷端与显示仪表或配套仪表连接,显示仪表会指出热电偶所产生的热电势,如图 3-2所示。图3-2 热电偶温度计系统原理图不同种类的两根金属导线 A、B 连接起来并保持接点的温度为 t0。若设由电压计引出的导线与金属线 A、B 连接点的温度为 t,则显现出来的热电势

14、 EAB(t,t0)为:3.2.1.2 热电偶的温度补偿热电偶都有对应的分度表,即在参考端温度为 0时,热电势和测量温度的对应表。热电偶的分度表是以冷端温度 0为基准进行分度的,热电偶的实际工作环境,冷端温度往往不为 0,不能直接使用分度表,因此必须对热电偶的冷端温度进行温度补偿。常用的冷端温度补偿方法有:冷端 0恒温法(将冷端放在冰水混合物的恒温容器中等)、冷端温度修正法、电桥补偿法和冷端温度自动补偿法等。在本设计中采用集成芯片 MAX 6675完成冷端温度的自动补偿,可在很大程度上简化系统的设计。3.2.2 炉温数据采集电路的设计型热电偶是工业生产中最常用的温度传感器,具有结构简单、制造容

15、易、使用方便、测温范围宽等特点,本次设计就是选用 K 型热电偶作为系统的温度传感器。目前,在以型热电偶为测温元件的工业测温系统中,热电偶输出的热电势信号必须经过中间转换环节,才能输入基于单片机系统。中间转换环节包括信号放大、冷端补偿、线性化及数字化等几个部分,实际应用中,由于中间环节较多,调试较为困难,系统的抗干扰性能往往也不理想。MAXIM 公司推出的 MAX 6675,它是一个集成了热电偶放大器、冷端补偿、A/D 转换器及 SPI 串口的热电偶放大器与数字转换器,可以直接与单片机接口,大大简化系统的设计,保证了温度测量的快速性与准确性。故在本设计中,为简化系统电路设计采用芯片 MAX 66

16、75作为热电偶电势与温度的转换。3.2.2.1 MAX6675芯片MAX 6675是具有冷端补偿和 A/D 转换功能的单片集成型热电偶变换器,测温范围 01024,温度范围满足本台电炉的温度需要,其主要功能特点如下:(1) 直接将热电偶信号转换为数字信号;(2) 具有冷端补偿功能;(3) 简单的 SPI 串行接口与单片机通讯;(4) 12 位 A/D 转换器、0.25分辨率;(5) 热电偶断线检测;(6)工作温度范围-20+85。3.2.2.2 MAX6675的测温原理MAX 6675是一个复杂的单片热电偶数字转换器,其内部结构主要包括:低噪声电压放大器 A1、电压跟随器 A2、冷端温度补偿二

17、极管、基准电压源、12 位 AD转换器、SPI 串行接口、模拟开关及数字控制器。其工作原理如下:K 型热电偶产生的热电势,经过低噪声电压放大器 A1 和电压跟随器 A2 放大、缓冲后,得到热电势信号 U1,再经过 S4 送至 ADC。对于 K型热电偶,电压变化率为(41V/),电压可由如下公式来近似热电偶的特性。上式中,U1 为热电偶输出电压(mV),T 是测量点温度,T0 是周围温度。在将温度电压值转换为相应的温度值之前,对热电偶的冷端温度进行偿,冷端温度即是 MAX6675 周围温度与 0实际参考值之间的差值。通过冷端温度补偿二极管,产生补偿电压 U2 经 S4 输入 ADC 转换器。在数

18、字控制器的控制下,ADC 首先将 U1、U2 转换成数字量,即获得输出电压 U0 的数据,该数据就代表测量点的实际温度值 T,这就是 MAX6675 进行冷端温度补偿和测量温度的原理。3.2.2.3 MAX6675 与单片机的连接K型热电偶图3-3 MAX6675与单片机的连接MAX6675有五个引脚,脚 (T-)接热电偶负极,脚 (T+)接热电偶正极,脚 (SCK)串行时钟输入端,脚 (CS)片选端,使能启动串行数据通讯,脚 (SO)串行数据输出端。3.3 输入/输出接口设计键盘和显示电路实现了人机交互功能,通过键盘电路可以设置系统运行状态和系统参数(P、I、D 和保温时间),显示电路可以显

19、示系统的运行状态、控制时间、设定温度、实际温度等。该温度控制系统采用 7 段高亮 LED 数码管(红色)显示系统的设置参数、保温时间及实际温度值等。总计 13 数码管和 3个发光二极管(指示控制系统的工作状态)。数码管的驱动动采用 MAX7219,MAX7219 是美国 MAXIM 公司生产的串行输入输出共阴极显示驱动器。该芯片可直接驱动最多 8 位 7 段数字 LED 显示器,或 64 个 LED 和条形图显示器。它与微处理器的接口非常简单,仅用 3 个引脚与微处理器相应端连接即可实现最高 10MHz 串行口。MAX7219 的位选方式独具特色,它允许用户选择多种译码方式译码选位,而且,每个

20、显示位都能个别寻址和刷新,而不需要重写其他的显示位,这使得软件编程十分简单且灵活。另外,它具有数字和模拟亮度控制以及与 MOTOROLA SPI,QSPI 及 MATIONAL MICROWIRE 串行口相兼容等特点。该芯片采用 24 脚 DIP 和 SO 封装,工作电压4.05.5V,最大功耗 1.1W。本温度控制系统采用两片 MAX7219 级联的方式驱动控制 13 个 7 段数码管,其中 DIN 引脚接 P2.7,LOAD 引脚接 P2.6,CLCOK 引脚接 P2.5,显示控制电路如图 3-4 所示。设定目标温度保温时间显示实际温度图3-4 显示与接口电路设计系统的工作状态由三个发光二

21、极管以不同的颜色与状态显示,如有报警信号蜂鸣器启动,三个发光二极管与蜂鸣器用 P2.0P2.3 控制,具体电路连接如图3-5所示:图3-5 工作状态指示灯及报警电路设计对于参数的输入通过按键实现,所设计的控制面板总计有 5 个按键,按键数量少,按键采用独立按键的连接方式,其电路如图 3-6 所示。图3-6 按键输入电路3.4 保温定时电路设计电炉在某些时候需要某个温度值保持一定的时间,系统必须有定时的功能单元。单片机有很多途径实现定时与计时的功能,如软件延时、采用内部定时器定时。其中软件定时要占用 CPU 资源,特别当定时时间比较长的时候,其定时的精度也无法保证;采用定时器定时,虽然能够实现精

22、确定时,但长久定时也不能有效保证定时精度。为了提高定时精度、降低系统程序设计的复杂度,在本次设计采用专用时钟芯片 DS1302 来完成系统计时功能。DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗、带 RAM 的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为 2.5V5.5V。采用三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或 RAM 数据。DS1302 内部有一个 318 的用于临时性存放数据的 RAM 寄存器。DS1302 是 DS1202 的升级产品,与 DS1202 兼容,但增加了主电源/后背电源

23、双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。3.4.1 DS1302 与单片机的连接如图3-7所示:图3-7 DS1302与单片机的连接3.5温度控制电路设计温控系统的精度不仅受制于输入检测量的精度,同时也受制于输出控制量的精度,要提高整个系统的精度,必须使两者匹配。工艺要求加热时在升温阶段快速,采用较大的恒定功率,但随着温度偏差减少,逐渐减少定周期内的导通周波。降低加热功率,防止热惯性的作用而产生较大的温度超调。控制器能够及时控制加热器件在电源半波内的输入有效值。可控硅调功控制温度具有不冲击电网,对用电设备不产生干扰等优点,是一种应用广泛的控温方式。所谓调功控温就是在给定周期内控

24、制可控硅的导通时间,从而改变加热功率,来实现温度调节。设采样(控制)周期为 T,在 T 周期内工频交流电的半周波数为 N,如全导通时额定加热功率为 PH,则实际的平均加热功率P 与T 周期内实际导通的半周波数 n 成正比,即目前,采用可控硅进行功率调节的触发方式有两种:过零触发和移相触发。移相触发方式调功实际上是控制可控硅的导通角,达到调节功率的目的,此方式易造成电磁干扰且电路复杂。采用移相触发的可控硅交流调功装置,往往在可控硅导通的瞬间使电网电压出现畸变,当控制角为90 时,产生的三次谐波电流为基波电流的 50,五次谐波也可达到基波的 1/6。这些谐波分量引起电网电压波形畸变,功率因数下降,

25、给其它用电设备和通讯系统的工作带来不良影响。为此,人们研究了各种避免电压瞬间大幅度下降和抑制高次谐波的方法,过零触发方式很好地解决了此类问题,它可把可控硅导通的起始点限制在电源电压过零点,从而大大降低了谐波分量,然而,传统的可控硅过零触发调功器由同步脉冲产生电路、检零电路、隔离电路组成,结构复杂,降低了可靠性,而且采用分立元件,器件的离散性和温漂严重影响调功器控制精度及使用寿命。MOTOROLA 公司生产的 MOC3021-3081 器件可以很好地解决这些问题。该器件用于触发晶闸管,具有价格低廉、触发电路简单可靠的特点。本系统采用MOC3061 作为可控硅的驱动器,控制可控硅的导通与关断,改变

26、平均电压的大小值,形成最佳加热方式,从而控制温度的超调。MOC3061 系列光电双向可控硅驱动器是一种光电耦合器件,它可用直流低电压、小电流来控制交流高电压、大电流。用该器件触发晶闸管,具有结构简单、成本低、触发可靠等优点。采用 MOC3061 触发晶闸管,强、弱的电之间在电气上完全隔离,且可以直接可靠地触发 50A 或更大的功率的晶闸管。经软件分析所得的控制脉冲送至 MOC3061,直接形成驱动信号,控制可控硅的导通与关断,改变平均电压的大小值,形成最佳加热方式,从而控制温度的超调,控制电路如图 3-8所示:图3-8 输出电路设计电路中 C3、R15 为阻容吸收电路,MOC3061 在输出关

27、断下,有 500uA 的漏电流,串入 R16这个限流电阻,可以控制触发电流,消除漏电流对双向可控硅的影响,防止双向晶闸管的误触发。R13 为限流电阻,R14 为门极电阻,提高控制级的抗干扰性,电路中 Q2集电极发出正弦过零出发脉冲。系统硬件电路图图3-9 系统硬件电路图控制系统采用热电偶作为温度传感器,热电偶把温度转换为毫伏级的电压信号,这个信号必须进行放大处理、冷端补偿、非线性化处理和数字处理后才能送到单片机中,这个过程环节多,容易受到干扰,为简化设计,在设计中采用集成芯片 MAX6675 来完成整个过程的温度数据处理。单片机对温度数据进行数据处理后,首先进行超限报警处理,如果超限就调用超限

28、处理子程序,若未超限就对温度数据进行数字滤波后进行 PID 算法控制,得到输出控制量。具体控制过程是:当温度偏差大于 50时,让双向晶闸管全导通或全关闭实现快速缩小温差,减小调节时间,当温度偏差小于 50时调用 PID 控制算法,由算法得到双向晶闸管导通率实现对双向晶闸管正弦半波的个数控制以达到调温的目的。系统中的时钟电路的功能是根据热处理工艺要求设置保温时间,温度控制系统所有的参数通过 13位高亮 7 段数码管显示,状态信息通过 3个发光二极管指示。四、系统软件设计硬件电路确定之后,系统的主要功能将依赖于软件来实现。对同一个硬件电路,配以不同的软件,它所实现的功能也就不同,而且有些硬件电路的

29、功能可用软件来替代。因此,系统的设计很大程度上是软件设计。4.1 软件总体设计整个温度控制系统不仅要处理按键、显示外,而且要实时处理对温度的采集信息并处理。整个系统包括主模块、初始化模块、温度检测模块、键盘处理模块、显示控制模块、计时控制模块、中断服务模块、控制算法模块、输出通断率控制模块等几个部分,其软件总体结构图如图 4-1 所示。图4-1软件总体结构4.2 主程序设计上电或复位后系统,首先进行系统自检,诊断正常后各功能模块进行初始化,包括初始化各寄存器、标志位、端口、PID 等;接着进行数据采集,经过数字滤波、标度变换后,计算温度偏差及偏差变化率的大小,再由控制算法模块得到输出控制量。系

30、统开放定时器及外部中断,一旦发生中断或其他外部响应,首先判断是哪个响应源,然后调用相应的功能模块完成执行程序。监控程序流程如图 4-2:图 4-2 主程序流程图4.3 温度检测及处理程序设计温度检测采用 K 型热电偶转换器 MAX 6675完成,由 MAX 6675构成的温度检测电路具有控制程序易于编写,读数精确度高等优点。 MAX 6675的转换结果与温度的数量关系满足:实际温度值=1023.75热电偶转换后的数字量4095MAX 6675芯片实现了对热电偶输出的电压信号的放大、冷端补偿和线性化的自动处理,所以其转换程序比较简单,程序流程如图 4-3 所示。图 4-3 温度检测控制程序流程图

31、下面是 MAX 6675温度转换的控制子程序 :SbitSCK =P37;sbitSO =P35;sbitCS =P36;/*MAX6675 温度转换程序*/unsignedintRe_Convert (void)unsigned char i;unsigned int P_Temp2 =0;SCK =0;CS =0;for(i=0;i16;i+)SCK =1;if(SO=1)P_Temp2 =P_Temp2 | 0x01;Delay_50us(1);SCK =0;Delay_50us(1);P_Temp2 3;return(P_Temp2);调用后要进行温度数据的格式转换,具体按如下方式进行

32、:。P_Temp =Re_Convert();P_Temp1 =0.25*P_Temp;控制程序对 P_Temp1 进行超限判断,如果不超限,连续采样 3 次温度数据分别送到数组 middle_value ,为数字滤波程序做准备。4.4 按键检测程序设计操作者要进行参数(P、I、D 和保温时间等)的设定或状态切换,必需通过按键(键盘)来实现,按键(键盘)是人机联系的重要通道。根据操作规划,输入按键总计有 5 个,其中增减按键各一个,左右移位按键各一个,功能设置/状态切换按键一个。键盘处理程序的主要任务是进行有无按键按下的判断并获取键值,根据键值转入相应的按键控制程序,实现对应的控制操作。图 4

33、-4 按键检测程序流程图按键扫描及键值判断处理程序如下:unsigned char Key_Left_Move=4;unsigned char Key_Right_Move=3;unsigned char Key_Inc_1=2;unsigned char Key_Dec_1=1;unsigned char Key_Set=0;unsigned char key_value;/*名称: Read_Key()*说明:*功能: 判断是否有键按下,去抖动,判断键值*调用: delay1ms()*输入:*返回值:key_value*/unsigned char Read_Key(void) /读键值u

34、nsigned key;P1=0x1f;key=P1;while(key&0x1f)!=0x1f) /当有键按下时Delay1ms(10); /软件延时 10ms 去抖动P1=0x1f;while(key&0x1f)!=0x1f)if(key=0x1e) key_value=Key_Left_Move;else if(key=0x1d) key_value=Key_Right_Move;else if(key=0x1c) key_value=Key_Inc_1;else if(key=0x17) key_value=Key_Dec_1;else if(key=0x0f) key_value=K

35、ey_Set;else key_value=0xff; /非有效按键返回 0xffwhile(key&0x1f)!=0x1f); /等待按键释放key_value=0xff; /无键按下返回 0xff4.5 显示程序设计控制面板要显示的内容比较多总计有 13 个 7 段数码管,为了简化系统的硬件设计,采用两片 MAX7219 级联方式来驱动控制所有的数码管,MAX7219 须进行初始化设置后才能正常工作,下面是 MAX7219 相关的常量与函数:sbit LOAD =P26; /MAX7219 片选sbit DIN =P27; /MAX7219 串行数据sbit CLK =P25; /MAX7

36、219 串行时钟#define DECODE_MODE 0x09 /译码控制寄存器#define INTENSITY 0x0A /亮度控制寄存器#define SCAN_LIMIT 0x0B /扫描界限寄存器#define SHUT_DOWN 0x0C /关断模式寄存器#define DISPLAY_TEST 0x0F /测试控制寄存器void Write7219(unsigned char address,unsigned char dat);void Initial(void);void Write7219(unsigned char address,unsigned char dat)u

37、nsigned char i;LOAD=0; /拉低片选线,选中器件for (i=0;i8;i+) /移位循环 8 次CLK=0; /清零时钟总线DIN=(bit)(address&0x80); /每次取高字节address=1; /左移一位CLK=1; /时钟上升沿,发送地址for (i=0;i8;i+)CLK=0;DIN=(bit)(dat&0x80);dat5,则排序过程比较复杂,可以采用“冒泡”算法等通用的排序方法。因中值滤波能较好克服因偶然因素引起的波动干扰,对温度、液位等变化缓慢的被测参数有良好的滤波效果,所以本系统采用中值滤波,连续进行三次采样后,取中间值作为本次有效采样值,数字滤波代码如下:中值滤波的 C 程序函数如下:float m

温馨提示

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

评论

0/150

提交评论