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

下载本文档

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

文档简介

武汉华夏理工学院信息工程课程设计报告书课程名称计算机限制技术课程设计课程设计总评成果学生姓名、学号学生专业班级自动化1142指导教师姓名李文彦课程设计起止日期课程设计基本要求课程设计是工科学生非常重要的实践教学环节,通过课程设计,培育学生综合运用先修课程的理论学问和专业技能,解决工程领域某一方面实际问题的实力。课程设计报告是科学论文写作的基础,不仅可以培育和训练学生的逻辑归纳实力、综合分析实力和文字表达实力,也是规范课程设计教学要求、反映课程设计教学水平的重要依据。为了加强课程设计教学管理,提高课程设计教学质量,特拟定如下基本要求。1.课程设计教学一般可分为设计项目的选题、项目设计方案论证、项目设计结果分析、答辩等4个环节,每个环节都应有肯定的考核要求和考核成果。2.课程设计项目的选题要符合本课程设计教学大纲的要求,该项目应能突出学生实践实力、设计实力和创新实力的培育;该项目有肯定的好用性,且学生通过努力在规定的时间内是可以完成的。课程设计项目名称、目的及技术要求记录于课程设计报告书一、二项中,课程设计项目的选题考核成果占10%左右。3.项目设计方案论证主要包括可行性设计方案论证、从可行性方案中确定最佳方案,实施最佳方案的软件程序、硬件电路原理图和PCB图。项目设计方案论证内容记录于课程设计报告书第三项中,项目设计方案论证主要考核设计方案的正确性、可行性和创新性,考核成果占30%左右。4.项目设计结果分析主要包括项目设计与制作结果的工艺水平,项目测试性能指标的正确性和完整性,项目测试中出现故障或错误缘由的分析和处理方法。项目设计结果分析记录于课程设计报告书第四项中,考核成果占25%左右。5.学生在课程设计过程中应仔细阅读与本课程设计项目相关的文献,培育自己的阅读爱好和习惯,借以启发自己的思维,提高综合分和理解实力。文献阅读摘要记录于课程设计报告书第五项中,考核成果占10%左右。6.答辩是课程设计中非常重要的环节,由课程设计指导老师向答辩学生提出2~3个问题,通过答辩可进一步了解学生对课程设计中理论学问和实际技能驾驭的程度,以及对问题的理解、分析和推断实力。答辩考核成果占25%左右。7.学生应在课程设计周内仔细参与项目设计的各个环节,按时完成课程设计报告书交给课程设计指导老师评阅。课程设计指导老师应仔细指导学生课程设计全过程,仔细评阅学生的每一份课程设计报告,给出课程设计综合评阅看法和每一个环节的评分成果(百分制),最终将百分制评分成果转换为五级分制(优秀、良好、中等、及格、不及格)总评成果。8.课程设计报告书是实践教学水平评估的重要资料,应按课程、班级集成存档交试验室统一管理。课程设计任务书(八)学生姓名:专业班级:自动化1142指导老师:李文彦工作单位:信息工程系题目:电加热炉温度限制系统设计(一)初始条件:1、设计一个单片机电阻炉温度限制系统,限制对象为电阻加热炉功率为8KW,220V沟通电源供电,利用大功率可控硅限制器限制热阻丝两端所加的电压大小,来变更流经热阻丝的电流,从而变更电炉炉内的温度。温度范围50-350℃,限制精度为±1℃,通过LED显示温度,其对象温控数学模型为:其中Td=350秒,Kd=50,τ=10秒。要求完成的主要任务:1、硬件设计:设计系统总体电路,设计输入通道及输出通道,分析的工作原理;2、软件设计:设计系统的总体程序程图,编写PID算法程序,从键盘接受Kp、Ti、Td、T;编写显示程序;3、采纳PID算法,通过数据分析Kp变更时对系统超调量的影响;在MATLAB/SIMULINK上对限制算法进行仿真;4、仿真并调试设计的部分硬件电路和软件程序;5、完成符合要求的课程设计说明书;6、课程设计说明书要求:引言、设计要求、系统结构设计、原理分析、各个模块的设计与仿真、软件设计、调试过程、收获、体会及总结、参考文献、电路图和源程序。说明书运用A4打印纸计算机打印或手写,用Protel等绘图软件绘制电子线路图纸。时间支配:第1~2天下达课程设计任务书和日程支配,依据任务书查找资料;第3-4天完成方案论证比较,设计系统的总体结构;第4~5天具体设计系统的各部分的硬件电路;第6~7天具体总体软件及各部分的程序流程,完成程序的编写第7~8天仿真并调试设计的部分硬件电路和软件程序;第9~10天结果分析整理、撰写课程设计报告,验收和答辩。指导老师签名:年月日一、课程设计项目名称电加热炉温度限制系统设计(一)二、项目设计目的及技术要求1、硬件设计:用51单片机设计系统总体电路,设计输入通道及输出通道,分析的工作原理;2、软件设计:设计系统的总体程序程图,编写积分分别PID算法程序,从键盘接受Kp、Ti、Td、T及β的值;编写显示程序;3、采纳PID算法,通过数据分析Kp变更时对系统超调量的影响;在MATLAB/SIMULINK上对限制算法进行仿真;4、仿真并调试设计的部分硬件电路和软件程序;5、完成符合要求的课程设计说明书;6、课程设计说明书要求:引言、设计要求、系统结构设计、原理分析、各个模块的设计与仿真、软件设计、调试过程、收获、体会及总结、参考文献、电路图和源程序。说明书运用A4打印纸计算机打印或手写,用Protues等绘图软件绘制电子线路图纸。

三、项目设计方案论证3.1.方案论证比较3.1.1.硬件选择微型计算机是指由微处理器加上采纳大规模集成电路制成的程序存储器和数据存储器,以及输入输出设备相连接的I/O接口电路,微型计算机简称MC。假如将微处理器、存储器和输入/输出接口电路集成在一块集成电路芯版上,称为单片微型计算机,简称单片机。本次设计选用的是AT89C51,是MCS-51单片机系列的一种。其结构体系完整、指令系统功能完善、内部寄存器规范、性能优越、技术成熟、具有高牢靠性和高性价比。它供应以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器刚好钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统接着工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它全部部件工作直到下一个硬件复位。3.1.2.算法选择由于计算机限制是一种采样限制,它只能依据采样时刻的偏差值来计算限制量。因此,在计算机限制系统中,必需首先对式(3-1)进行离散化处理,用数字形式的差分方程代替连续系统的微分方程,此时积分项和微分项可用求和及增量式表达。对温度的限制算法,采纳技术成熟的PID算法,对于时间常数比较大的系统来说,其近似于连续变更,因此用数字PID完全可以得到比较好的限制效果。简洁的比例调整器能够反应很快,但不能完全消退静差,限制不精确,为了消退比例调整器中残存的静差,在比例调整器的基础上加入积分调整器,积分器的输出值大小取决于对误差的累积结果,在误差不变的状况下,积分器还在输出直到误差为零,因此加入积分调整器相当于能自动调整限制常量,消退静差,使系统趋于稳定。积分器虽然能消退静差,但使系统响应速度变慢。进一步改进调整器的方法是通过检测信号的变更率来预报误差,并对误差的变更作出响应,于是在PI调整器的基础上再加上微分调整器,组成比例、积分、微分(PID)调整器,微分调整器的加入将有助于减小超调,克服振荡,使系统趋于稳定,同时加快了系统的稳定速度,缩短调整时间,从而改善了系统的动态性能,其限制规律为: (3-2)单片机是一种采样限制,它只能依据采样时刻的误差值计算限制变量,不能干脆计算公式中的积分项和微分项,采纳数值计算法靠近后,PID的调整规律可以通过数值公式(3-3)计算,假如采样取得足够小,这种靠近可相当精确,被控过程与连续过程非常接近。我们变换上式(3-3)得:(3-4)把△ei=ei-ei-1,△2ei=△ei-△ei-1带人上式(3-4)得:(3-5)式中ei=W—Yi,W为设定值,Yi为第i次实际输出值,Kp为比例系数,积分系数I=T/Ti,微分系数D=Td/T,T为采样周期,以(3-5)式来编程比较便利。用PID限制算法实现温度限制是这样一个反馈过程:比较实际温度和设定炉温得到偏差,通过对偏差的处理获得限制信号,再去调整电加热炉的加热功率,从而实现对炉温的限制,由于电阻炉一般都是下一阶段对象和带纯滞后的一阶对象,所以式中Kp、Kd和Ki的选择取决于电阻炉的响应特性和实际阅历。本程序先将用户设定温度和锅炉实际温度T比较,计算出偏差ei,然后分两种状况进行计算限制变量:1.ei大于等于设定的偏差e时,由于积分限制器使系统响应速度变慢,不采纳积分限制器调整,干脆运用PD调整,获得比较快的动态响应,计算Pd和Pp,最终得到限制量获得比较快的动态响应。2.ei小于设定的设定的偏差e时,正常的分别计算Pi、Pd和Pp,然后依据算法公式计算出限制变量。3.2总体方案设计与原理分析由于温度限制系统的限制对象具有惯性大,连续性的特点。因而可以归于具有纯滞后的一阶大惯性环节。一般来说,热过程大多具有较大的滞后,它对任何信号的响应都会推迟一段时间,使输出与输入之间产生相移。对于这样一些存在大的滞后特性的过渡过程限制,一般来说可以采纳以下几种限制方案:.输出开关量限制对于惯性较大的过程可以简洁地采纳输出开关量限制的方法。这种方法通过比较给定值与被控参数的偏差来限制输出的状态:开关或者通断,因此限制过程非常简洁,也简洁实现。但由于输出限制量只有两种状态,使被控参数在两个方向上变更的速率均为最大,因此简洁引起反馈回路产生振荡,对自动限制系统会产生非常不利的影响,甚至会因为输出开关的频繁动作而不能满意系统对限制精度的要求。因此,这种限制方案一般在大惯性系统对限制精度和动态特性要求不高的状况下采纳。3.2.2.比例限制(P限制)比例限制的特点是限制器的输出与偏差成比例,输出量的大小与偏差之间有对应关系。当负荷变更时,抗干扰实力强,过渡时间短,但过程始终存在余差。因此它适用于限制通道滞后较小、负荷变更不大、允许被控量在肯定范围内变更的系统。运用时还应留意经过一段时间后需将累积误差消退。.比例积分限制(PI限制)由于比例积分限制的特点是限制器的输出与偏差的积分成比例,积分的作用使得过渡过程结束时无余差,但系统的稳定性降低。虽然加大比例度可以使稳定性提高,但又使过渡时间加长。因此,PI限制适用于滞后较小、负荷变更不大、被控量不允许有余差的限制系统,它是工程上运用最多、应用最广的一种限制方法。.比例积分加微分限制(PID限制)比例积分加微分限制的特点是微分的作用使限制器的输出与偏差变更的速度成正比例,它对克服对象的容量滞后有显著的效果。在比例基础上加上微分作用,使稳定性提高,再加上积分作用,可以消退余差。因此,PID限制适用于负荷变更大、容量滞后较大、限制品质要求又很高的限制系统。结合本例题设计任务与要求,由于温度系统的传递函数事先难以精确获得,因而很难推断哪一种限制方法能够满意系统对限制品质的要求。但从以上对限制方法的分析来看,PID限制方法最适合本例采纳。另一方面,由于可以采纳单片机实现限制过程,无论采纳上述哪一种限制方法都不会增加系统硬件成本,而只需对软件作相应变更即可实现不同的限制方案。因此本系统可以采纳PID的限制方式,以最大限度地满意系统对诸如限制精度、调整时间和超调量等限制品质的要求。3.3硬件电路设计与分析3.3.1.系统概况本系统是采纳以AT89C51单片机为核心的温度限制系统,通过温度传感器采样实时温度,并通过变送器将温度最终转换为电压信号通过A/D转换器0808将其转换为数字信号,送入单片机与给定值进行比较,通过运用PID算法得出限制结果,送显示并进行限制。总体设计方案见如图4-1所示。测量变送看门狗看门狗测量变送看门狗看门狗报警提示通信接口LED显示键盘微型限制机AT89C51温度检测PT100驱动执行机构8路D/A转换器DAC0832测量变送8路A/D转换器ADC0809加热电阻温度图3-1系统设计方案图3.3.2.功能模块1、单片机限制模块A/T89C51是整个系统的限制核心,将采集来的数据与设定值进行比较,利用PID算法得出结果并送输出。整个限制系统的程序就下载到单片机中去。A/T89C51仿真图如图3-2所示。 图3-2单片机仿真2、数据转换与采集模块A/D0808AD0808是CMOS的8位模/数转换器,采纳逐次靠近原理进行A/D转换,芯片内有模拟多路转换开关和A/D转换两大部分,可对8路0~5V的输入模拟电压信号分时进行转换。模拟多路开关由8路模拟开关和3位地址锁存译码器组成,可选通8路模拟输入中的任何一路,地址锁存信号ALE将3位地址信号ADDA、ADDB、ADDC进行锁存,然后由译码电路选通其中的一路,被选中的通道进行A/D转换。A/D转换部分包括比较器、逐次靠近寄存器(SAR)、256R电阻网络、树状电子开关、限制与时序电路等。另外ADC0809输出具有TTL三态锁存缓冲器,可干脆连到CPU数据总线上。实时温度经过传感器的检测并通过变送器将其转换成模拟的电压信号,而A/D0808则用来采集电压信号并将其转换为数字信号存储在单片机中,以便后续对数据的处理。其硬件仿真图如图3-3所示。 图3-3A/D0808仿真图3、按键选择模块系统采纳了两个按键用来进行温度的设定,一个进行温度加,一个进行温度减。每按下一次,温度就相应的加一或减一。依据设计要求,温度的设定范围为50-150度,其仿真如图3-4所示。图3-4按键示意图4、显示模块显示模块采纳两个7段共阴极数码管,一个用来显示实时温度,一个用来显示设定温度。并用74LS04来驱动数码管。其仿真图如图3-5所示。图3-5显示示意图5、报警模块当实时温度高于或低于设定温度5度以上时,系统就会报警,报警指示灯红灯亮。如图3-6所示。图3-6报警示意图6、输出模块经过数据的运算,单片机通过P3.4口的凹凸电平来限制加热系统的通断,通过导通时间的长短来限制加热的强度,以达到精确限制的效果。当温度在设定温度的正负5度之内时,系统进行PID运算限制;当高于设定温度5度时,停止加热;当低于设定温度5度时,全功率加热。由于仿真软件自身条件的缘由,运用绿色的LED灯代替,当绿灯亮时,表示正在加热,不亮时,停止加热。仿真图如3-7所示。图3-7加热示意图3.3.3.系统的整体设计系统的整体设计图如图3-8所示。图3-8系统设计方案图其中:1.单片机采纳的是MCS-51系列的89C51,其集成了中心处理器CPU、随机存储器RAM、程序存储器ROM或EPROM、定时器/计数器、中断限制器及串型和并行I/O接口等部件。单片机主要应用于工业限制领域,用来实现对信号的检测、数据的采集以及对应用对象的限制。它具有体积小、重量轻、价格低、牢靠性高、耗电少和敏捷机动等很多优点。单片机是微型计算机的一个重要分支,特殊适合用于智能限制系统。2.实时的温度测量由于条件的限制干脆用模拟电压来代替传感器及变送器,用0808来采样和转换温度。3.3.4.元器件清单系统所需的元器件清单如表4-1所示。表3-1系统配置清单表序号部件名称所属类数量1AT89C51MicroprocessorICs12A/D0808DataConverters137SEG-MPX4-CCOptoelectronics24BUTTONSwitches&Relays35LED-GREENOptoelectronics16LED-REDOptoelectronics1774LS373TTL74LSseries18RESPACK-8Resistors1974LS04TTL74LSseries810NOTSimulatorPrimitives111NORSimulatorPrimitives212POT-HGResistors113电容Capacitors214CLOCKSimulatorPrimitives215CRYSTALMiscellaneous116电阻Resistors117INPUT终端418GROUND终端719VSOURCESimulatorPrimitives13.3.5.小结系统硬件是设计的基础,在设计软件程序之前,要对系统的结构有个深化的了解,本章具体介绍了整个系统的硬件结构和各模块的选型,介绍了系统的概况,使读者对总体的设计有个大致了解。3.4软件设计软件概况PROTUES是一种基于标准仿真殷勤SOICE3F5的混合电路仿真工具,既可以仿真模拟电路,又可以仿真数字电路以及数字、模拟混合电路,其最大特色在于能够仿真基于限制器的系统。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的老师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上闻名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译。其程序界面如图3-9所示。图3-9Protues7工作界面PROTUES软件的功能特点介绍如下:1.原理布图2.PCB自动或人工布线3.SPICE电路仿真革命性的特点:1.互动的电路仿真。用户甚至可以实时采纳诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。2.仿真处理器及其外围电路。可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以干脆在基于原理图的虚拟原型上编程,再协作显示及输出,能看到运行后输入输出的效果。协作系统配置的虚拟逻辑分析仪、示波器等,Protues建立了完备的电子设计开发环境。同时它还具有4大功能模块:智能原理图设计(ISIS),完善的电路仿真功能(Prospice),独特的单片机协同仿真功能(VSM),好用的PCB设计平台。Protues供应了丰富的资源:1.Protues可供应的仿真元器件资源:仿真数字和模拟、沟通和直流等数千种元器件,有30多个元件库。2.Protues可供应的仿真仪表资源:示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。3.除了现实存在的仪器外,Protues还供应了一个图形显示功能,可以将线路上变更的信号,以图形的方式实时地显示出来,其作用与示波器相像,但功能更多。这些虚拟仪器仪表具有志向的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能削减了仪器对测量结果的影响。4.Protues可供应的调试手段Protues供应了比较丰富的测试信用于电路的测试。这些测试信号包括模拟信号和数字信号。3.4.2.软件流程图温度限制系统的软件流程图,系统起先工作时会检测炉温,一般状况下此时炉温比给定值低,于是电炉起先全速加热。于此同时,系统会依据预定的采样周期进行采样,当检测炉温在上限温度和下限温度之间,那么起先进行PID限制,并接着依据预定的采样周期进行采样,直至温度稳定为给定值。项目设计结果分析4.1调试记录及结果分析4.1.1.仿真程序及图形在打开Matlab中的Simulink之后,起先绘制系统仿真图形,如图4.1所示,该图中对积分和微分先进行处理,使得的到当为等幅震荡时的kc值,然后通过Z-N法则的其次法,加入为微分和积分之后,采纳PID限制。变更Kp的值,既可以的得到不同的结果,从而可以分析出Kp的变更对系统超调量造成的影响。图4.1系统仿真图 仿真结果及分析由图可以得到Kc=1.13,Tc=40,TI=0,TD=0,时出现的等幅震荡曲线图Kp=0.678Ki=0.05Kd=5当Kp=0.7时,曲线图如下所示:当Kp=0.8时曲线如上图所示当Kp=1时,曲线如上图所示当Kp=1.1时如上图所示从上述结果图中可以看出,但当Kp增大到肯定程度时,将会导致系统的超调量增加,稳定性变差,并且使得系统产生震荡。从上面曲线图中可以明显看出当Kp为1时,系统起先出现震荡,在Kp大于1时,出现猛烈震荡,系统稳定性变差。4.2.结论 本试验通过PID算法调整,设计并比较实际温度与设定温度,最终达到实际温度与设定温度的误差稳定在肯定范围。在这次课设的试验过程中我遇到了诸多问题,算的上是困难重重,也让我在试验过程中了解了自己的不足之处,让我了解了自己对以前所学过的学问理解得不够深刻,驾驭得不够坚固。通过这次试验,我不仅巩固了以前所学过的学问,而且学到了很多在书本上所没有学到过的学问。 这次课程设计使我了解了微型计算机限制技术课程设计的真正用意是培育我们的自学实力,养成编写程序的好习惯,懂得了理论与实际相结合是很重要的,只有理论学问是远远不够的,只有把所学的理论学问与实践相结合起来,从理论中得出结论,才能真正为实际所用,从而提高自己的实际动手实力和独立思索的实力。五、参考文摘[1]于海生.微型计算机限制技术[M].清华高校出版社,2007计算机限制系统概述、线性离散系统的数学描述和分析方法、计算机限制系统的多种限制算法、过程输入输出通道、网络限制技术、限制软件设计、限制系统的计算机仿真以及计算机限制系统的设计与工程实现等内容。本书留意了先进性、系统性和好用性。①增加了内模限制、模型预料限制等先进限制内容;②加强了网络限制的内容;③每章附有大量的实例,并增加大量MATLAB仿真等实践内容,以利于学生实践实力、创新实力的培育和熬炼。[2]于海生.单片微机原理与接口技术.冶金工业出版社,2003主要内容包括嵌入式开发技术。单片机的内部指令、指令系统、内部功能部件的工作原理、应用编程及外部扩展技术。介绍mcs-51系列及增加型单片机的硬件编程结构、软件设计、中断系统、存储器配置,以及mcs-96系列单片机硬件、软件、pts、epa和人--机联系设备,新产品80c196kc的应用结构。[3]郑荣焕.Proteus电子电路设计及仿真.电子工业出版社,2014ProtuesVSM组合了混合模式SPICE电路仿真、处理 器模型、动态元器件库、虚拟仪器、处理器软仿真器、第三方编译器和调试器等组件,第一次使得在物理原型构建出来之前,在计算器上完成从原理图设计、电子测试仿真、处理器代码调试联系电路实时仿真设计、功能验证、出版成品成为可能。运用Pouteus能够帮助电子电路开发人员涉及更多学问,缩短开发周期,降低开发成本。[4]邹伯敏.自动限制理论.机械工业出版社,2007超前、滞后、和滞后-超前3种对系统的校正方法,这些方法是基于校正装置的输出与其输入信号间相位的超前、滞后来区分的,并利用这些特性对不同的系统进行动态校正。这些校正装置所起的作用等价于时域中的比例-微分(PD)、比例-积分(PI)或它们的组合(PID)。PID限制器有着运用敏捷,参数调整便利,性能稳定等优点,且已有定型的工业产品温室,因此它在限制工程中被广泛应用。[5]吴勤勤.限制仪表及装置.化学工业出版社,2012本书以电子技术、微机原理、限制工程和计算机网络技术为基础,系统的阐述仪表与装置的结构、特点、功能和应用。本书全分为两篇:第一篇为模拟式限制仪表及装置,主要介绍模拟式限制器、变送器和转换器、运算器和执行器;其次篇为数字式限制仪器及装置,主要介绍可编程调整器、可编程限制器、智能变送器和阀门定位器、集散限制器系统和现场总线限制系统。六附录6.1软件程序ORG0000HAJMPMAINORG001BHAJMPCT1ORG0200HA1EQU50HMAIN:CLRAMOV2AH,AMOV2CH,AMOV2DH,AMOV2EH,AMOVA1,#50LOOP:ACALLSAMPACALLFILTERACALLTRASTACALLTESTKEYACALLDISPLAYMOVA,50HADDA,#5MOV52H,ASUBBA,#10MOV53H,AMOVA,51HCJNEA,52H,TPLCLRP3.4CLRP3.2AJMPLOOPTPL:JNCTPL1CJNEA,53H,MTPLSETBP3.4CLRP3.2AJMPLOOPMTPL:JNCHATSETBP3.2SETBP3.4AJMPLOOPTPL1:SETBP3.2CLRP3.4AJMPLOOPHAT:CLRP3.2ACALLPIDMOVA,2FHCPLAINCASETBF0MOVTMOD,#50HSETBP3.4MOVTL1,AMOVTH1,#0FFHCLRPT1SETBEASETBTR1SETBET1LOOP1:ACALLTESTKEYACALLDISPLAYJBF0,LOOP1AJMPLOOPCT1:CLRTR1CLRF0CLRP3.4RETI;采样子程序;SAMP:MOVR1,#02CHMOVR0,#03MOVDPTR,#0FEFFHREAD:MOVX@DPTR,AHERE:JBP3.3,HEREMOVXA,@DPTRRLCAMOV20H.0,CRLCAMOV20H.1,CRLCAMOV20H.2,CRLCAMOV20H.3,CRLCAMOV20H.4,CRLCAMOV20H.5,CRLCAMOV20H.6,CRLCAMOV20H.7,CMOVA,20HMOV@R1,AMOVP0,AINCR1DJNZR0,READRET;滤波子程序;FILTER:MOVA,2CHCJNEA,2DH,CMP1AJMPCMP2CMP1:JNCCMP2XCHA,2DHXCHA,2CHCMP2:MOVA,2DHCJNEA,2EH,CMP3MOV2AH,ARETCMP3:JCCMP4MOV2AH,ARETCMP4:MOVA,2EHCJNEA,2CH,CMP5MOV2AH,ARETCMP5:JCCMP6XCHA,2CHCMP6:MOV2AH,ARETTRAST:MOVA,2AHMOVB,#02HDIVABADDA,#25MOV51H,ARETTRAST1:SUBBA,#25MOVB,#02HMULABRET;按键选择子程序;TESTKEY:JBP3.0,MAIN2_2 ACALL DELAY10 JBP3.0,MAIN2_2 JNBP3.0,$ MOV A,#1 ADDA,A1 CLR C CJNE A,#150,MAIN2_1_1 MOV A,#150 AJMP MAIN2_1_3MAIN2_1_1: JC MAIN2_1_3MAIN2_1_2: CLR C MOV A,#150MAIN2_1_3: MOV A1,A;;上面这一段是+1度按键,按下+1度;MAIN2_2: JBP3.1,MAIN2_3 ACALL DELAY10 JB P3.1,MAIN2_3 JNB P3.1,$ MOV A,A1 CJNE A,#50,MAIN2_2_1 AJMPMAIN2_2_3MAIN2_2_1:JC MAIN2_2_2CLRC MOV B,#1 SUBBA,BAJMPMAIN2_2_3MAIN2_2_2: MOV A,#50MAIN2_2_3:MOVA1,A;MAIN2_3:ACALLTRAST1MOV32H,AMOV31H,BRET;显示子程序;DISPLAY:MOV A,A1 ;将待显示的数存在70H到75H中MOV B,#100DIV AB ;显示子程序MOV 73H,A ;百位在A MOV A,B ;MOVB,#10DIVABMOV72H,A;十位在BMOV71H,B;个位在CMOV A,51H ;将的十六进制数转换成十进制MOV B,#100DIV AB ;显示子程序MOV76H,A ;百位在A MOV A,B MOVB,#10DIVABMOV75H,A;十位在BMOV74H,B;个位在CDISP1:MOVR1,#70H;指向显示数据首址MOVR5,#0FEH;扫描限制字初值PLAY:MOVP1,#0FFHMOVA,R5;扫描字放入AMOVP2,A;从P2口输出MOVA,@R1;取显示数据到AMOVDPTR,#TAB;取段码表地址MOVCA,@A+DPTR;查显示数据对应段码MOVP1,A;段码放入P1口MOVA,R5LCALLD1MS;显示1MSINCR1;指向下一地址MOVA,R5;扫描限制字放入AJNBACC.6,ENDOUT;ACC.5=0时一次显示结束RLA;A中数据循环左移MOVR5,A;放回R5内AJMPPLAY;跳回PLAY循环ENDOUT:MOVP1,#0FFH;一次显示结束,P2口复位MOVP2,#0FFH;P3口复位RET;子程序返回TAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH;共阳段码表"0""1""2""3""4""5""6""7""8""9""不亮"“-”;延时子程序;D1MS:MOVR6,#14H;1MS延时程序,LED显示程序用DL1:MOVR7,#19HDL2:DJNZR7,DL2DJNZR6,DL1RETDELAY10:MOV R6,#20 ;10MS延时D3:MOV R5,#255 DJNZ R5,$DJNZ R6,D3 RETDELAY125: MOV R6,#255 ;125MS延时D1: MOVR5,#255 DJNZ R5,$ DJNZ R6,D1 RETDELAY1S: MOV R7,#8 ;1S延时D2: LCALLDELAY125 DJNZ R7,D2 RET ;PID算法子程序;PID:MOVR5,31HMOVR4,32HMOVR3,2AHMOVR2,#00HACALLCPL1ACALLDSUMMOV39H,R7MOV3AH,R6MOVR5,35HMOVR4,36HMOVR0,#4AHACALLMULT1MOVR5,39HMOVR4,3AHMOVR3,3BHMOVR2,3CHACALLCPL1ACALLDSUMMOVR5,33HMOVR4,34HMOVR0,#46HACALLMULT1MOVR5,49HMOVR4,48HMOVR3,4DHMOVR2,4CHACALLDSUMMOV4AH,R7MOV4BH,R6MOVR3,4AHMOVR2,4BHMOVR5,2FHMOVR4,30HACALLDSUMMOV2FH,R7MOV30H,R6MOV3DH,3BHMOV3EH,3CHMOV3BH,39HMOV3CH,3AHRET;双字节加法程序;;R5R4+R3R2=R7R6;DSUM:MOVA,R4 ADDA,R2MOVR6,AMOVA,R5ADDCA,R3MOVR7,ARET;双子节求补程序对R3R2求补;CPL1:MOVA,R2CPLAADDA,#01HMOVR2,AMOVA,R3CPL

温馨提示

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

评论

0/150

提交评论