电炉温度设计报告论文.docx

上传人:sccc 文档编号:4891756 上传时间:2023-05-21 格式:DOCX 页数:24 大小:1.08MB
返回 下载 相关 举报
电炉温度设计报告论文.docx_第1页
第1页 / 共24页
电炉温度设计报告论文.docx_第2页
第2页 / 共24页
电炉温度设计报告论文.docx_第3页
第3页 / 共24页
电炉温度设计报告论文.docx_第4页
第4页 / 共24页
电炉温度设计报告论文.docx_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《电炉温度设计报告论文.docx》由会员分享,可在线阅读,更多相关《电炉温度设计报告论文.docx(24页珍藏版)》请在三一办公上搜索。

1、G电炉温度控制器设计专业班级 电子信息科学与技术1班 学生学院 自动化学院 队长姓名 陈泽亮 队员姓名 陈新盛 陈水生 指导教师 教师评分 2014年5月14日星期三摘要电阻炉是利用电流使炉内的电热元件或者电热介质发热从而达到对物料或者工件加热的一种电炉,其温度是一个具有时变性、非线性、纯滞后和大惯性的被控量,随着工业的发展,各行各业对于温度控制的要求越来越高,传统的模拟开关控制已经达不到要求。低精度、低稳定性、自动化水平低的产品也将逐渐被淘汰。温度是最基本的物理量之一。近年来,随着科学技术的飞速发展,工业生产对产品的性能提出了更高的要求,而热处理是提高产品性能的一个关键环节,所以研究电阻炉的

2、温度测量与控制具有很大的现实意义和使用价值。本文设计了一种基于51单片机的电阻炉智能温度控制器。该控制器硬件电路采用51单片机、K 型热电偶模数转换器MAX6675 以及固态继电器等主要元器件,软件编程采用C 语言,编译工具是Keil uVision4 ARM系统软件编译器,能够实现01023.75的测量显示以及控制调节。在本设计中,采用K 型热电偶作为感温元件,检测电阻炉的温度并输出毫伏级的模拟电压信号,将该信号送给K 型热电偶模数转换器MAX6675 进行冷端温度补偿、放大、线性化、数字化处理,得到电阻炉温度的数字化形式,送入51单片机中进行分析处理, 在控制执行电路中采用0906HK型号

3、的固态继电器SSR,以过零触发的方式控制电阻炉主回路的导通或者断开,实现对电阻炉温度的控制调节。由于本设计采用高集成高性能的数字型测温调理元件MAX6675,其内部集成的针对K型热电偶测量信号的放大电路、冷端温度补偿电路、线性化电路和数字化电路,使得控制系统的测温电路设计简单而且测量准确、性能稳定、抗干扰能力强,并且控制执行电路的执行元件采用固态继电器能够无触点、无火花的接通和断开加热电路,开关速度快,提高了控制的性能和精度。关键词:电阻炉;51单片机;温度控制器;SSR 固态继电器;K型热电偶引 言电阻炉是利用电流使炉内电热元件或者加热介质升温发热,从而对炉腔内的工件或者物料加热的一种电炉,

4、它被广泛的应用于工业生产的各个领域和高校的教学实验中。例如,在机械工业生产中电阻炉用于锻压前金属加热、金属热处理加热,在化工工业生产中电阻炉用于化学物料的加热,钢铁冶金和食品加工行业也需要各种各样的加热电炉进行加热处理,在高校实验室中有专门的实验室电阻炉以满足试验的需求。电阻炉具有结构简单、加热质量好、无烟无尘、无噪声干扰的特点,因而电阻炉在现代的工业生产领域中具有举足轻重的作用。与电阻炉的应用和发展紧紧相连的实电阻炉温度的控制,电阻炉温度控制决定着电阻炉所起的作用,电阻炉的使用需要配以与其相适应的温度控制器,只有满足要求的电阻炉温度控制器才能使电阻炉实现合理加热的目的。温度是国际单位制中最重

5、要的七个基本物理量之一,是生产过程和科学试验确定物质状态的一个普遍而重要的物理参数,温度参数的测量与控制在国防、军事、科学实验和工农业生产中都具有举足轻重的作用。温度参数的测控技术与产品质量、生产效率、生产安全、节约能源等重大经济技术指标密切相连。因此,各个领域对温度测量控制的精度、可靠性、稳定性等性能提出了更高的要求,能不能将温度控制在所需要的范围内关系到整个项目的成功与失败。然而随着工业的发展以及各行各业对于温度控制越来越高的要求,传统的人工控制和模拟开关控制已经达不到要求,低精度、低稳定性、自动化水平低的产品也将逐渐被淘汰。基于以上情况,本文以8位的51单片机为控制核心,研制一种电阻炉温

6、度控制器。该设计在热电偶温度测量调理电路中采用高集成的数字化芯片STC89C52,能将K 型热电偶测量输出的微弱电压信号做冷端补偿、放大、线性化及数字化处理,直接输出可以供单片机处理的数字信号;在控制执行电路中采用固态继电器作为执行元件,可以快速的实现无触点无火花的接通或断开加热电路;在软件设计中,通过过零触发的方式控制固态继电器的通断,进而控制电阻炉回路在一个确定周期内通过的电压波形的周波数,实现PWM调功,达到调节电阻炉温度的目的。一、 系统方案设计及可行性分析1、从电阻炉温度控制器的发展历程来看,电阻炉温度控制技术大致可分以下几种: 第一种定值开关控温法,所谓定值开关控温法就是通过硬件电

7、路或者软件计算判断当前温度值与设定目标温度值之间的关系,进而对电阻炉加热源(或者冷却装置)采取接通或者断开控制。如果当前温度值比预期设定温度值高,那么断开电阻炉加热电源,或者开启制冷装置;如果当前温度值比预期设定温度值低,那么开启电阻炉加热电源并同时断开制冷装置。这是一种比较简单的开关控温方法,在没有计算机设备的情况下,采用简单的模拟电路就可以实现。目前,在我国一些工厂中仍然在使用采用这种控制方法研制的电阻炉温度控制器。由于这种控制方法是当电阻炉温度上升至预期设定值时关断电源,当电阻炉温度下降至预期设定点时开通电源,因此对温度变化过程的滞后性无能为力,导致电阻炉温度波动范围较大,控制精度较低,

8、完全不适用于高精度复杂的电阻炉温度控制系统。第二种PID 线性控温法,这是一种基于经典控制理论中调节器的控制原理的控温方法。PID 控制原理是最较早发展起来的一种控制技术之一,该控制技术主要与设定值与测量值的偏差有关,将偏差的比例(P)、积分(I)、微分(D)以线形组合的方式构成控制量,实现对被控对象的控制。在常规PID 的实际应用中,操作人员往往根据现场设备的状况以及调试经验进行人工设定P、I、D 三个参数,通过调试或者实验的方式改变P、I、D 三个参数以改变控制性能。因为PID 控制算法具有简单、鲁棒性好、可靠性高等优点,相比于定值开关控温法比较优越,在早期工业生产的温度过程控制中的应用比

9、较广泛,特别是对于可以确立精确数学模型的确定性控制系统,PID 控制就显得更加优越。由于在PID 调节器模型中考虑了系统的误差、误差变化及误差积累三个因素,因此,其控制性能大大地优越于定值开关控温法。在实际的应用中,可以采用模拟电路或者计算机软件的方法来实现PID 调节的功能,前者称之为模拟型PID 调节器,后者称之为数字型PID 调节器。其中数字型PID 调节器的参数在现场就可以进行在线整定,因此具有很大的灵活性,可以获得良好的控制效果。采用这种方式研制的温度控制器,其控制效果的好坏主要依赖于三个 P、I、D 参数(即比例系数、积分系数、微分系数),只要P、I、D 三个参数选取的合适,对于一

10、个确定的被控对象来说,其控制效果也会比较令人满意。但是,它的不足之处也正在于此,当被控对象的特性一旦发生改变,三个控制参数也必须相应地随着改变,否则其控制效果就难以得到保证。第三种智能温度控制法,虽然PID 线性控温法简单可靠、鲁棒性也很好,但是仍然具有一定的缺点,为了克服这些缺点,提高PID 线性控温法的性能,关于PID 参数的整定,人们相继提出了一系列自动调整的方法,例如自学习PID 参数法和自整定PID参数法等,并通过将PID 线性控制与智能控制相结合的方法,实现了温度的智能控制。智能控温法以神经元网络理论、模糊数学理论为理论基础,有时结合专家系统的理论知识实现智能化的温度控制。其中模糊

11、控制、神经网络控制以及专家系统等智能控制理论的应用较多。2、本设计以实验室的管式电阻炉为控制对象,要实现对该电阻炉温度的控制,智能温度控制器应该具备以下几项基本的功能:1. 温度测量。2. 温度实时显示。3. 预定温度设置。4. 温度控制执行。5. 异常报警。此外,要求具有较高的灵敏度、较高的精确度、较高的稳定性来满足对温度控制的要求。基于以上需要实现的功能和要求,本文设计的智能型的电阻炉智能温度控制器采用慧净公司生产的51单片机作为中央控制单元;以MAX6675 K 型热电偶转换芯片为温度测量调理电路的核心,组成前端检测调理电路;采用改进型的PID 算法实现电阻炉温度控制,控制执行电路采用固

12、态继电器。(由于知识有限,PID算法使用的很少)其硬件系统结构如图所示:硬件系统结构设计框图可知温度控制器主要包括四个部分:主控模块、人机接口、温度测量模块以及执行模块。温度控制器在正常工作的时候,首先由温度测量模块的热电偶传感器检测被控对象电阻炉的当前温度,将热电偶温度传感器输出的毫伏级模拟电压信号在信号调理电路中作放大、冷端温度补偿、线性化及数字化处理,然后将其送给主控模块的51 单片机与预先给定的温度值进行比较;单片机根据预定的控制算法对数据分析处理,并通过显示屏显示当前温度和设定值,确定系统是否异常,如果系统没有异常出现,将经过算法处理的信号,作为输出控制量控制PWM 波形的输出,控制

13、执行器的动作,达到接通或者断开电阻炉主电路的目的,实现对电阻炉温度的控制;同时可选择通过通信接口与上位机通信,将需要的数据传给上位机供其使用,或者将上位机设定的参数下载到温度控制器。二、 电路设计1、硬件选择:51单片机STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash

14、,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。参数:1. 增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼

15、容传统8051。2.工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V单片机)。3.工作频率范围:040MHz,相当于普通8051的080MHz,实际工作频率可达48MHz。4.用户应用程序空间为8K字节。5.片上集成512字节RAM。6.通用I/O口(32个),复位后为:P0/P1/P2/P3是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片。8.具有EEP

16、ROM功能。9.共3个16位定时器/计数器。即定时器T0、T1、T2。10.外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒。11.通用异步串行口(UART),还可用定时器软件实现多个UART。12.工作温度范围:-40+85(工业级)/075(商业级)。13.PDIP封装。6位共阴数码管模块结构及引脚图:键盘输入示意图: 51单片机最小系统(引脚)图:电源电路:报警器模块示意图:K 型热电偶在工业中有广泛的应用,它具有构造简单、制造方便、价格便宜、体小便携、测量精度高及测量范围宽的优点。所以综合考虑热电偶的测温性能、测温精度、测温范围和价格成

17、本,本设计的智能电阻炉温度控制器选用K 型热电偶作为测量温度的感温元件。为了提高精度和稳定性,在此选用集成化数字转换芯片MAX6675 对热电偶信号进行处理。MAX6675 是美国MAXIM 公司生产的串行K 型热电偶信号转换芯片,内部具有信号调节放大器、12 位的模拟/数字化热电偶转换器、冷端补偿电路和激光校正电路,因此可以对K 型热电偶输出信号进行数字化、冷端补偿和线性化处理。其温度分辨能力能够达到0.25,冷端补偿温度范围在-20+80之间,工作电压为3.05.5V。K 型热电偶的作用是检测热冷两端之间的温度差,K 型热电偶热端的温度可以在0+1023.75之间改变,冷端的温度就是电路板

18、上MAX6675 周围的环境温度,也就是MAX6675 的检测能力范围-20+80。热电偶的冷端温度变化时MAX6675 仍然可以精确的检测出热电偶的热端温度,这就是MAX6675 内部冷端补偿和矫正的作用,MAX6675 内部内置冷端补偿二极管,通过温度检测二极管将MAX6675 周围温度转化成温度补偿电压,MAX6675 将热电偶检测的温度电压和补偿二极管检测的环境电压同时送入其内部的ADC 进行转换,作为热电偶实际测量的热端温度。所以,只有当热电偶的冷端温度与MAX6675 内部温度检测二极管周围的温度相同时,该芯片才可以实现最佳的测量效果。MAX6675 首先将接收到的热电偶输出的模拟

19、电压,送给其内部的一级低噪声放大器A1,然后送给二级滤波电压跟随器A2,再与补偿电压一起被接到ADC 的输入端,将温度电压转化成与其对应的数字温度值。这样,放大器A1 的作用是保证输入检测端的高精度,同时,可以将热电偶的连接导线和干扰源隔开,实现高精度的检测热电偶的测量温度。其内部电路结构如下:MAX6675 与单片机的引脚连接如图所示。GND 为接地端;T-为K 型热电偶负极;T+为K 型热电偶正极;VCC 为电源端;NC 悬空不用;SO 为串行数据输出端;CS 为片选信号;SCK 为串行时钟输入。MAX6675 与51 单片机通过3 线串口(SO=P1.0引脚,SCK=P1.1引脚,CS=

20、P1.2引脚)通信,方便连接。热电偶的模拟信号由T-和T+端口输入,T-端接地,VCC 端接3.3V 电压,并通过0.1uF 的电容接地以提高电压的稳定性和抗干扰性,MAX6675 的转换数据由单片机的PD13 读取,片选信号由单片机的 引脚提供,串行时钟由单片机的PD13 引脚提供。MAX6675 通过3 线串口实现与单片机的通讯时,当MAX6675 的CS 引脚由高电平变为低电平时,MAX6675 将停止任何信号的转换,并将在时钟信号SCK 的作用下通过SO 引脚向外输出转换的数据,相反当CS 引由低电平变为高电平时,MAX6675 将开始新的数据转换。在CS 引脚由高电平变为低电平时,第

21、一个字节的D15 将出现在SO引脚上,一个完整的数据读取需要16 个时钟周期,数据的读取通常在SCK 的先下降沿完成。其数据输出时序如图所示:固态继电器SSR 是一种全部由固态电子元器件组成的新型的无触点电子开关,使用几毫安的微弱信号可以控制大功率电路的导通或者关断。它的内部是由如光敏电阻、发光二极管、开关三极管或者双向可控硅等具有开关特性的半导体元件构成,可以实现无触点、无火花、无噪音、无污染的快速断开或者接通电路的目的,因为没有机械动作,所以无机械磨损,寿命长,并且不产生电磁干扰,因此,又被称作无触点开关。相对于传统机电式继电器和电磁继电器,固态继电器体积小、功耗低、开关速度快并且可靠性很

22、高、价格低廉,使用时安装简便,可以适应恶劣的环境条件。由于以上优点,固态继电器SSR 在控制系统中有着广泛的应用,所以本设计的电阻炉智能温度控制器,其执行元件选用固态继电器SSR。按照固态继电器的应用场合,SSR 可以分为两种类型,一种是直流型固态继电器,另一种是交流型固态继电器,它们分别在直流和交流电路上做负载的开关,不能混用。本设计中使用的固态继电器是交流型固态继电器。按照固态继电器的应用场合,SSR 可以分为两种类型,一种是直流型固态继电器,另一种是交流型固态继电器38,它们分别在直流和交流电路上做负载的开关,不能混用。本设计中使用的固态继电器是交流型固态继电器,所以,下面以交流固态继电

23、器为例介绍固态继电器SSR 的工作原理,其原理结构如图所示:固态继电器SSR 具有四个输入输出端1、2、3、4,是一个四端元件,主要由耦合电路、过零检测电路和保护电路三部分组成。固态继电器SSR 正常工作的时候,只要给1、2 两个端子加上一定的控制信号,就可以实现对3、4 两个端子之间电路的接通和断开,即实现开关的功能。在驱动继电器方面,我们使用了一个PNP型三极管8550,发射极接5V电源,集电极接地,基极连接单片机输出端。电路图如下图所示:2、软件系统设计目前,自动控制系统软件的设计,常使用的语言有汇编语言、C 或者C+。其中,汇编语言是面向机器的程序设计语言,在汇编语言中,用助记符代替操

24、作码,用地址符号或者标号代替地址码,这样用符号代替机器语言的二进制代码,就把机器语言变成了汇编语言,所以,汇编语言也称作符号语言,是一种低级编程语言。由于汇编语言一般与某一种CPU 提供的机器指令相对应,人们可以用它直接控制硬件系统进行工作,可以直接访问单片机系统内部各种资源,汇编语言程序具有实时性强、执行速度快、代码效率高等优点,但是汇编语言的通用性和移植性都比较差,也就是具有比较强的针对性,并且用汇编语言编写程序,对程序员个人的能力要求较高,编程比高级语言困难很多。然而C 程序设计语言或者C+程序设计语言是一种在国内外被广泛使用的计算机编程语言,它适合作为系统编程语言,既可以用来编写系统程

25、序,也可以用来编写应用程序,C 语言具有强大的功能、灵活的表达方式、高效的目标程序代码、超强的可移植性,不但具有高级语言的优点,而且具有低级语言的许多特点,因此特别适合编写大型控制系统软件。C 语言问世以后,以前使用汇编语言编写的许多程序,现在都可以用高级的C 语言编写了,并且学习和使用C 语言要比学习和使用汇编语言容易很多。C+程序设计语言是为编写大型程序而研制的,它比C 程序设计语言复杂的多,学习C+也比学习C 语言困难很多,所以对于不是那么复杂的系统程序而选用C 语言编写程序是很好的选择。C 语言作为一种高级程序设计语言得到了广泛的应用,采用C 语言编写的软件程序不针对特定的硬件系统,可

26、以根据不同的单片机做移植,基于C 语言的以上诸多特点及优点,本设计的软件程序设计,采用C 程序设计语言。2.1 软件开发环境及工具编程软件使用源自德国Keil 公司的RealView MDK,这一款编程软件被全球超过十万的嵌入式工程师或者学者验证和使用,是ARM 公司最新推出的针对各种嵌入式处理器的软件开发工具。它集成了业界最领先的技术,融合了中国多数软件工程师所需要的特点和功能,uVision4 集成开发环境支持ARM7、ARM9 和最新的Cortex-M3 内核处理器,自动配置启动代码,集成Flash 少些模块,强大的性能分析功能。其集成开发环境如图所示:2.2 uVision4 集成开发

27、环境主要的性能:1) 源代码编辑器的功能非常强大。2) 设备数据库可以根据开发工具进行配置。3) 工程管理器可以用于创建和维护工程。4) 编译工具集汇编、编译、连接过程于一体。5) 用于设置开发工具配置的对话框。6) 真正集成高速CPU 及片上外设模拟器的源码级调试器。7) 高级GDI 接口,可用于目标硬件的软件调试和ULINK2 仿真器的连接。8) 用于下载应用程序到Flash ROM 中的Flash 编程器。9) 完善的开发工具手册、设备数据手册和用户向导。使用说明0:任意输入一个三位数作为开始保温时间倒计时(秒);按OK(34键)键,此时黄色LED亮2S表示输入成功,下同;1:任意输入一

28、个三位数,作为保温下限;按OK(34键)键;2:待黄色LED灯熄灭后,任意输入一个三位数作为保温上限;3:任意输入三位数作为保温持续时间(分);4:K型热电偶开始工作,同时显示温度,如果温度小于保温下限,通电加热,加热至保温上限,停止加热;5:如果设定的保温上限温度高于报警温度(内设定报警温度为90度),即启动报警功能。蜂鸣器一直报警直至温度低于报警温度度方止。6:如果要重新设定保温区间,按按复位键后从第一部开始; 提示(测温范围0t999.75 测温精度 0.25)三、 测试方案与测试结果程序:#include #include#define uchar unsigned char #def

29、ine uint unsigned intsbit beep=P23;sbit SO=P10; sbit IO=P16;sbit SCK=P11; sbit CS=P12; sbit dula=P26; /段选信号的锁存器控制sbit wela=P27; /位选信号的锁存器控制sbit led=P15;uchar a=16,b=16,c=16,d=16,e=16,f=16;uchar weia,temp,key,ok;uchar s1,s2,s3,s4,s5,s6;unsigned long shu;int shujubw();int huoqu();unsigned char code ta

30、ble=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00;unsigned char code wei=0xfe,0xfd,0xfb,0xf7,0xef,0xdf; /数码管各位的码表unsigned char code duan=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x7,0x7f,0x6f; /0-9的码表unsigned char code duandian=0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87

31、,0xFF,0xEF;unsigned int MAX6675_rd_word(); /热电偶数据读取,返回温度void xianshi(float shuju1,float shuju2); /温度显示void xianshishuju(int shujua);void delay(unsigned int i);int shujubw()/保温时间(分钟);int aashuju=0;while(aashuju=0)aashuju=huoqu(); return(aashuju);void xianshishuju(int shujua)/显示数据; int i,bai,shi,ge; b

32、ai=shujua/100; shi=(shujua%100)/10; ge=shujua%10; for(i=0;i125;i+) P0=wei0; wela=1;wela=0; P0=duanbai; dula=1;dula=0;delay(3);P0=wei1; wela=1;wela=0; P0=duanshi; dula=1;dula=0;delay(3);P0=wei2; wela=1;wela=0; P0=duange; dula=1;dula=0;delay(3); P0=0x00; /什么都不显示;dula=1;dula=0;delay(1); void keyscan()/

33、从键盘获取数据; P3=0xfe; temp=P3; temp=temp&0xf0; if(temp!=0xf0) delay(10); if(temp!=0xf0) temp=P3; switch(temp) case 0xee: key=0; weia+; break; case 0xde: key=1; weia+; break; case 0xbe: key=2; weia+; break; case 0x7e: key=3; weia+; break; while(temp!=0xf0) temp=P3; temp=temp&0xf0; beep=0; beep=1; P3=0xfd

34、; temp=P3; temp=temp&0xf0; if(temp!=0xf0) delay(10); if(temp!=0xf0) temp=P3; switch(temp) case 0xed: key=4; weia+; break; case 0xdd: key=5; weia+; break; case 0xbd: key=6; weia+; break; case 0x7d: key=7; weia+; break; while(temp!=0xf0) temp=P3; temp=temp&0xf0; beep=0; beep=1; P3=0xfb; temp=P3; temp=

35、temp&0xf0; if(temp!=0xf0) delay(10); if(temp!=0xf0) temp=P3; switch(temp) case 0xeb: key=8; weia+; break; case 0xdb: key=9; weia+; break; case 0x7b: ok=1; /key=11; /wei+; break; while(temp!=0xf0) temp=P3; temp=temp&0xf0; beep=0; beep=1; int huoqu()/从键盘返回数据;float shuju=0;keyscan();if(wei!=0) switch(w

36、eia)case 1: a=key;s1=a; break;case 2: b=key;s2=b; break;case 3: c=key;s3=c; break;case 4: d=key;s4=d; break;case 5: e=key;s5=e; break;case 6: f=key;s6=f; break; if(ok) ok=0;switch(weia)case 1: shu=s1; break;case 2: shu=s2+s1*10; break;case 3: shu=s3+s2*10+s1*100; break;case 4: shu=s4+s3*10+s2*100+s1

37、*1000; break;case 5: shu=s5+s4*10+s3*100+s2*1000+s1*10000; break;case 6: shu=s6+s5*10+s4*100+s3*1000+s2*10000+s1*100000; break;weia=0; shuju=shu;s1=0;s2=0;s3=0;s4=0;s5=0;s6=0; return (shuju);unsigned int MAX6675_rd_word() /K型热电偶输入信号,返回数据; unsigned int i,wd; CS=1; SCK=0; _nop_(); _nop_(); CS=0;for(i=

38、0;i16;i+) wd=wd3); xiaoshu=xiaoshu*100/4; temp=(unsigned int)(wd&0x7fe0)5); if(pdwd999.75)pdwd=999.75; bai=temp/100; shi=(temp%100)/10; ge=temp%10; xiaoshu1=xiaoshu/10; xiaoshu2=xiaoshu%10; pdwd=bai*100+shi*10+ge+xiaoshu1*0.1+xiaoshu2*0.01; for(i=0;i=90)beep=0; if(pdwd90)beep=1; if(pdwd=shuju2)IO=1;

39、P0=wei0; wela=1;wela=0; P0=duanbai; dula=1;dula=0;delay(2); P0=wei1; wela=1;wela=0; P0=duanshi; dula=1;dula=0;delay(2);P0=wei2; wela=1;wela=0; P0=duandiange; dula=1;dula=0;delay(2);P0=wei3; wela=1;wela=0; P0=duanxiaoshu1; dula=1;dula=0;delay(2);P0=wei4; wela=1;wela=0; P0=duanxiaoshu2; dula=1;dula=0;delay(2); P0=0x00; /什么都不显示dula=1;dula=0;delay(1); void main() /*主函数*/ delay(1000); float shuju0=0,sh

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号