烤箱温度控制系统的设计课程设计烤箱_第1页
烤箱温度控制系统的设计课程设计烤箱_第2页
烤箱温度控制系统的设计课程设计烤箱_第3页
烤箱温度控制系统的设计课程设计烤箱_第4页
烤箱温度控制系统的设计课程设计烤箱_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、目录 TOC o 1-3 h z u HYPERLINK l _Toc240457008 摘要,前言 PAGEREF _Toc240457008 h 1 HYPERLINK l _Toc240457011 1. 团队成员之间的详细分工2 HYPERLINK l _Toc240457014 1.1已知参数及设计要求2 HYPERLINK l _Toc240457014 1.2 实现方法2 HYPERLINK l _Toc240457012 2. 团队成员之间的详细分工2 HYPERLINK l _Toc240457012 3.详细操作说明2 HYPERLINK l _Toc240457013 4

2、. 设计总体思路3 HYPERLINK l _Toc240457014 4.1 设计步骤3 HYPERLINK l _Toc240457015 4.2 原理分析4 HYPERLINK l _Toc240457024 5.实验结果5 HYPERLINK l _Toc240457025 6.源程序清单5 HYPERLINK l _Toc240457026 7. 设计思路6 HYPERLINK l _Toc240457027 7.1 杰峰的想法6 HYPERLINK l _Toc240457028 7.2 对明坤6的思考 HYPERLINK l _Toc240457029 7.3 陆鸣的想法7 HY

3、PERLINK l _Toc240457030 7.4 吴靖南的想法8 HYPERLINK l _Toc240457031 附录摘要本文设计了烘箱温度控制系统。在烤箱温度控制系统中,电脑向烤箱的继电器发出不同的信号,控制继电器的开、关,从而实现对烤箱是否加热的控制。该系统采用PID控制,是经典控制理论在实践中成功应用的典型例子。本次使用的定时芯片为8254,信号输出芯片为8255。同时8259芯片用于控制定时、加热等过程的中断。温度采集采用PT100感温电阻将电信号送入A/D574,利用A/D574的模数转换功能将采集到的温度模拟信号转换为可识别的电信号通过计算机,然后在计算机中。这些电信号经

4、过处理,通过PID控制算法输出控制烘箱的电信号。关键词:PID控制算法,A/D574模数转换,计算机控制前言温度控制技术广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等。最常见的传统温度控制技术是继电器温度调节,但由于继电器动作频繁,温度控制范围小,精度不高。如果过高,可能会因接触不良而影响正常工作。近年来,PID温度控制、模糊控制、神经网络和遗传算法在温度控制方面发展迅速。烘箱是热处理生产中应用最广泛的加热设备。它通过电热元件产生热量,并通过辐射和对流的方式将热量传递给被加热物品,使其加热到需要的温度。本文设计的烘箱温度控制系统采用计算机对其温度进行控制,采用PID控制算法实现烘

5、箱温度控制,达到控制性能要求的指标。主要设计内容1.1 已知参数及设计要求1、某烘箱的温度控制要求是:将烘箱温度从室温控制到目标温度并一直保持在目标温度,要求控制精度为3%,调节时间为20秒。2、目标温度应通过键盘任意修改。3、完成温度检测、温度松动、温度显示(LED和CRT曲线)、温度控制、通过键盘设置上下限温度报警值、温度超限报警(声、光)等功能。1.2 实现方法由80X86计算机和JK实验系统装置实现(限4名考生)团队成员之间的详细分工职称责任方洁峰组长控制算法编写、软件数据转换明坤队员硬件电路焊接、调试、报告撰写陆鸣队员声音程序、显示程序编写吴景南队员编程界面、提示等详细操作说明1、进

6、入程序后显示如下:请设置室温:(输入当前室温,2位,回车结束)请设置所需温度:(所需温度,3位,回车结束)请设置时间:(输入保持预设温度所需的时间,以分钟为单位,2位数字)2、设置完成后,屏幕上会显示如下文字:请设置室温: xx请设置所需温度: xxx请设定时间: xx按 R 重置号码。按 Q 退出到 DOS当前温度:XXX C此时屏幕上的温度值会不断刷新。当达到预设温度时,会发出 3 声短哔声,在预设温度保持指定时间后,会发出 4 声长哔声并返回设置参数部分。4. 设计总体思路系统控制框图如图所示控制器控制器烤箱温度采集我们采用传统的PID控制策略,具体流程如下:一开始,给定一个输入信号,即

7、预期温度,此时PID控制器还没有工作,这个信号通过变送器致给继电器,继电器导通,烤箱在一种工作状态。这时,温度传感器将烤箱的温度转换成电信号致到计算机。计算机将电信号与输入的预期温度进行比较,根据不同的差异通过控制器选择不同的控制策略。由于计算机的电信号都是脉冲信号,因此可以通过调整脉冲信号的占空比来调整继电器的通断时间。若预期值与实测值差距较大,则增加占空比,增加一个循环的加热时间,反之,则减少占空比。采用上述控制策略,可以实现PID调节。不同的占空比相当于改变PID调节中的比例系数。因此,计算机调节的烘箱温度控制系统是一个可变比例系数的调节过程。因此,只要选择合适的比例系数,就可以满足控制

8、指标的要求。4.1 设计步骤4.1.1 主程序设计首先确定主程序要达到的目标,即:显示提示信息,输入设定温度值,输入保温时间,实时刷新当前温度,比较实时温度与实际温度的差值。设定温度并进行PID运算,重新设置参数并结束。然后,在确定了主程序要实现的功能后,分别编写各个子程序模块。同时,在实现整个系统的过程中,还需要考虑到所要使用的芯片,从而对芯片进行初始化。如8255、8259等。4.1.2 温度/时间设置子程序温度/时间设置子程序,即从键盘输入一串数字,存放在指定的空间区域,然后将键盘的ASCII码转换为BCD(8421)码,方便后续计算。4.1.3 读取当前温度的子程序也就是AD574的使

9、用过程。首先,先初始化AD574,向R/致负脉冲,开始转换。然后检查STS是否为1,如果不是1,则名称转换结束。读取高8将数据放入AH,读取低4放入掩码过低4的AL中,然后将AX中的内容右移4位,得到的结果存入指定的单位,即当前温度。4.1.4 与加热子程序的温度比较将上一步采集的当前温度转换为十六进制数,然后进行刻度变换,比较当前温度与输入的期望温度的差值,然后做相应的标记,然后根据不同的标记跳转到对应的加热子程序。基本原理是:实际温度与预期温度的差异越大,加热子程序中每个循环的高电平占空比越大。4.1.5 声音子程序当烤箱开始加热时,调用一次;当达到规定温度时,再次调用;当它终于结束时,再

10、次调用它,总共3次。探测子程序先将探测频率存入寄存器AX,然后使用8254时序,再将频率数据写入42H端口。然后读取端口61H的控制字信息,当控制信息为11B时,输出,可以发声;为00B时,输出并停止声音。4.1.6 坐标轴绘制子程序首先初始化屏幕大小,选择X和Y轴的位置,选择线条颜色,使用BIOS中断在屏幕上绘制X和Y轴。4.1.7 CRT曲线绘制子程序我们将实时保存的温度结果存储在指定的 CTEMP 中。在调用CRT曲线绘制子程序时,我们可以直接读取当前温度值,然后设置起始位置并计算当前坐标位置,就可以在屏幕上追踪当前温度。温度点。然后,将横坐标向右移动1,下次读带时,再次在屏幕上描点,重

11、复多次,形成多点组成的温度响应曲线。4.2 原理分析为了设计控制烤箱温度的系统,我们使用 PID 控制算法。利用计算机控制的A/D转换器,将采集到的模拟信号转换为数字信号,再送至计算机进行处理。在计算机中,我们编写了一个 PID 控制算法,将输入的电信号通过算法传递,并输出控制继电器开关的脉冲信号。我们可以通过调整脉冲高电平的占空比来控制一个信号周期的加热时间。长度。从而实现比例控制。而且因为这个占空比是实时变化的,所以这是一个具有可变比例系数的 P 控制器。使用这个控制器,我们可以将烤箱的温度保持在我们设定的期望值。5. 实验结果实验结果如下表所示:实验次数初始温度设定温度调整时间过冲错误1

12、358025 秒42.3%24010027 秒23.3%36016029 秒-21.5%45020040 秒-63.5%温度变化过程大致可以用下面的曲线来描述:温度温度T/C300200100时间t/s10200这种设计总体上是成功的,基本满足了任务要求。只是调整时间可能是一个冗长的程序,或者是电烤箱的功率问题,或者是自身PID的参数设计不完善。简而言之,它无法达到要求的 20 秒,而是接近 20 秒。这是设计缺陷。6.原创节目单见附录 47. 设计印象7.1 捷峰的想法作为我们团队的领头人,我们需要确定合适的电路,调试电路,并将发射器调整到最合适的范围。同时,要确定与硬件相关的软件的主要思想

13、。一个项目的成败与团队领导的整体协调能力有很大关系。这次时间比较紧,之前没有做过太多的过程控制题目,可以说时间短,任务重。之前用过热敏电阻PT100,但是没有连接电脑,这也是一个新的挑战。这一次,吸取了上次计算机硬件课程设计的教训,学会了更多地使用子程序,而不是使用一个主程序来解决所有问题,而很少使用子程序。这样,不仅别人看不懂自己的程序,就连自己有时也看不懂自己的程序。软件部分主要涉及到一些数据的转换和处理,比如BCD码到ASCII码的转换,十六进制数和BCD码的相互转换等等。虽然很久没有用汇编语言写了,这些算法还是记在心里的,只要稍微熟悉一下,就能顺利把算法变成子程序。其中,最让我头疼的是

14、PID控制器的设计。但是经过老师的讲解,我明白了可以调节输出信号的占空比,可以控制继电器的切换时间,可以调节PID调节器的比例系数,从而实现PID控制可变比例系数。这个课程设计感觉比以前更高级,就是程序的模块化思维更深刻。以前,主程序总是以程序段的形式插入,而这次尽可能减少主程序的内容,把所有的处理部分写成子程序,并设计入口参数,所以整个程序思路清晰,一目了然。一个好的程序员不会把所有的模块都自己写出来,而是可以将自己搜索到的各种模块和自己的项目结合起来,设计接口参数,达到事半功倍的效果。本次程序使用了之前设计的一些模块,如实时显示刷新模块、延时程序、声音子程序等。这些之前积累的宝贵资料,大大

15、加快了本课程的设计。这种设计的缺点是:第一天几乎浪费了。原因是我太久没有复习汇编语言了,感觉很陌生。我只能通过教科书和实验说明找到感觉。我相信这个问题是每个人的问题。它存在,但可以解决。也有类似的课程,旨在提前复习将要使用的知识,以免在工作需要时临时抱佛脚。7.2 明坤的想法:这门计算机控制课程的设计让我对计算机控制技术的相关知识有了新的认识。一是巩固了课堂上所学的计算机控制知识,二是开阔了我的视野,学到了很多新东西。在课程设计之初,我使用了老师给的硬件连接图,将板上的各个元件焊接起来。我很久没有焊接任何东西了。这一次,又费了一番功夫再焊上去。通过之前学过的知识,知道有些地方可以从后面连起来,

16、这样可以省去很多不必要的电线,减少布线的麻烦。然后我们根据原理图将每个组件一一焊接。焊接后,我们用万用表测试了每个连接点。没有误短路,前期工作完成。然后我们开始编程。由于我有限的编程技能,我很少做编程。起初,我们认为电烤箱的想法很简单,只是一个测试温度。看看是否达到目标温度,然后致1,致0。但是实际编译,才发现里面的问题还是很复杂的。首先需要输入目标温度,但是是AD574接板子转换的12位二进制数,最大FFF大于4000。这和我们的三位数字有转换关系输入。经过我们的计算,应该是三位数*13.6,但是这个时候我不知道小数的乘法怎么做。后来想到可以乘以136再除以10得到对应的目标数据。然后出现了

17、很多问题,都一一解决了。最后,通过通力合作,实现了所需的基本功能,完成了本课程的设计。通过这个课程设计。它让我对计算机控制的知识有了新的认识。最大的收获是通过团队合作,每个人完成相应的程序模块,然后将各个模块组合起来。这是进入社会以后工作中会遇到的现实问题。这可以看作是实践经验的增加。团队合作是本课程设计中最深刻的体验。如果要求一个人完成这么庞大的程序,我想很少有人能做到。因此,我们今后必须加强这方面的锻炼。还有一点经验是,编程最重要的是要小心。有时候一个标签是错的,要费一番功夫才能找到,所以小心也是很重要的。这也是大学里最后的团队合作课程设计,大家相处得很好。总之,这次课程设计给我带来了很多

18、。7.3 陆鸣的想法我们组这次终于顺利完成了课程设计。虽然只是短短的一周,但它让我真正了解了团队的力量。自从接到这个课程设计任务后,每个人都被分配了自己的任务,他们经常聚在一起发表意见,讨论每个方案的可行性。气氛非常热烈。在我们这个小组中,可能有的学生能力强,有的学生不那么强,而能力强的学生在分工时可能任务更重,但每个人都没有怨言,全神贯注于自己的任务,所以团结合作是我们团队顺利完成课程设计的一个非常重要的保障,而这个设计也对我们进行了这一点的训练,也是非常有价值的。这次我们正在为烤箱设计一个温度控制系统。对于温度控制系统,我们需要完成温度采集和温度控制,通过键盘和显示界面可以实现恒温时间设置

19、、系统初始参数设置、报警设置等功能。恒温器的开始和结束时间可以通过不同的声音来指示。我们一起讨论和学习。经过几次努力,最初的程序有很多问题,但我们找不到原因。然后我们参考书中的示例程序,进行了很多修改。一些问题是子程序和主程序之间的连接。如果我们没有做对,还有很多问题。然后我们仔细复习了书中所学的知识,又在我们的程序中发现了问题,对问题进行了修改。后来经过多次修改,我们终于完成了初步可行的方案,这也是一个进步。在调试过程中,我们遇到了烤箱故障等各种客观问题,但最终在老师的配合和我们自己的努力下,这些困难都被一一克服,取得了比较理想的结果。在这个设计中,我主要负责显示和声音部分,也就是程序一开始

20、的显示界面,一开始还有很多问题,显示程序的编写,在同学的帮助下和参考书。经过一些程序,程序初步完成,然后经过组长多次修改,完成了这部分的编写。经过这部分的编译,我明白了很多。我在课堂上学到的还远远不够。我仍然需要更多的努力和课后复习,以便我可以将所学的知识应用到书中的知识。通过成为自己的人,您还可以让自己更加充实并学习更多。最终,课程设计顺利完成,大家都很开心。虽然过程有点累,但看到努力的成果还是很欣慰的。总的来说,通过为期一周的课程设计,我发现了自己的很多不足,也发现了很多知识上的漏洞,看到自己的实践经验还是比较欠缺的,理论联系实际的能力有待提高紧急。经过这样的课程设计,也证明了一个团队的力

21、量远大于一个人的力量,完成一个复杂问题的效率会高很多。我也从这个课程设计中学到了很多东西,真的让我受益匪浅。浅的。7.4 吴经南的想法:这样的课程设计让我感受到了团队的温暖。因为要考考研,所以我的大部分精力都放在了考研复习上。但是我的团队给了我最大的包容和理解,让我负责更简单的编程界面和及时的编程。这不是我第一次与团队合作设计课程,但这次我记得最清楚。本课程是为我们组做烤箱设计的,我的主要工作是程序界面和提示语言的编程。总的来说,我从这个课程设计中收获了很多。我的工作是参与一些子程序的编写,主要是用AD574检测温度,加热程序(分为100%加热,80%加热,50%加热,20%加热),恒温延时编

22、写。在编写程序之前,我查看了硬件书籍。检测温度的程序主要是AD转换程序。先选择通道,然后开始转换,查看转换是否结束。结束后,保存获得的结果。在参考了硬件实验书中的程序的情况下,程序很快就编译正确了。加热程序是通过从8255的A0口输出1或0来实现的。比如50%加热就是在前半个周期向A0致1,在后半个周期向A0口致1。恒温延时程序的主要思想是先设置一个标志位,其值等于设置的恒温时间(以分钟为单位)乘以60除以2(恒温程序的周期),然后再设置一个标志位,初始值为0,然后每次进入恒温程序加1,通过判断是否等于第一个值即可判断延时是否完成。短短三四天,大家就完成了整个课程设计。众人虽然有些疲倦,但更多

23、的是兴奋。一般来说,课程设计持续一周。通过课程设计,我发现了自己知识的很多不足,也发现了很多知识的漏洞。我看到我的实践经验还比较缺乏,理论联系实际的能力亟待提高。通过这门课程的设计,也可以证明一个团队的力量远大于一个人的力量,也可以体会到完成一个复杂的问题效率要高很多,我也学到了很多。实践与理论的结合也为未来奠定了基础。附录一、系统框图Pt100Pt100PCPt100变送器电烤箱PCPt100变送器电烤箱PCIPCI总线8255AAD5748255AAD574JKJK实验板2.电路原理图3.各模块程序流程图开始定时中断初始化8255初始化显示室温设置提示信息开始定时中断初始化8255初始化显

24、示室温设置提示信息设置室温子程序显示温度设置提示信息设置室温度程序显示时间设置提示信息设置时间子程序定时结束否?N读温度子程序实时显示刷新子程序转换当前温度子程序比较温度子程序根据温度选择加热占空比结束音乐子程序Y3.2 设定温度/时间/室温流程图输入一个目标温度的三位数值输入一个目标温度的三位数值,将其存入Stemp单元SI指向stemp单元的第一个数设置循环次数CX=3将SI指向单元的数据转化为BCD码(即-30)SI+13次到否将BCD码存入DI指向的STEMPBCD单元中DI+1RET 返回是3.3 读取当前温度子程序开始开始选择通道0延时给送负脉冲,启动转换检测STS是否为1读高8位

25、,将结果存入AH读低4位,屏蔽低4位,将结果存入AL将AX右移4位并将结果存入CTEMP,即得到当前温度子程序结束是否3.4 温度比较和标志位变化子程序开始开始将设定温度的BCD码转换为16进制将当前温度采样值除以斜率比较当前温度和设定温度值,得到差值8?3?15?30?温度标志设为01温度标志设为03温度标志设为04温度标志设为02温度标志设为FF结束返回YYYY3.5加热子程序(以占空比20%为例)开始开始启动加热设置CX=2延时200msCX自减1判断CX是否为0关加热设置CX=8延时200msCX自减1判断CX是否为0子程序结束NYYN3.6 声音子程序读取61H读取61H端口的原控制

26、信息D1D0=PB1PB0=11B,其他位不变直接控制发声返回设置发声频率,即16位计数初值,存入AX中压栈,将AX中的数据保护起来8254定时器2为方式3,先低后高写16位计数值弹栈 将AX中的数据取出将低八位计数值写入42H将高八位计数值写入42H返回读取读取61H端口的原控制信息D1D0=PB1PB0=00B 其他位不变直接控制闭音返回开始调用02号开始调用02号DOS中断显示空格指针指向显缓区将BCD码转换为ASCII码依次调用02号DOS中断显示显缓区内容显示CR,将光标移动到显示区首位结束返回程序源代码数据段AD574H EQU 200HAD574L EQU 201HAD574S

27、EQU 205HKEEP_CS DW ?KEEP_IP DW ?COUNT_TIME DW 00H ;中断计数器设定时间数据库 4数据库 0DB 4 DUP (?)SETTIMEBCD DW ?,?,?x_p dw 10SETROOM DB 4数据库 0DB 4 DUP(?)SETROOMBCD DW ?,?,?STEMP DB 4数据库 0DB 4 DUP(?)STEMPBCD DW ?,?,?STEMP16 DW ?CTEMP DW ?CTEMP16 DW ?CTEMPBCD DB ?,?,?,27H,C,$察知 DW ?DELAYLOGO DW ?TIMECOUNT DW 0热旗数据库?

28、音乐标志 DB 0MSG1 DB 0AH,0DH,室温:,$MSG2 DB 0AH,0DH,所需温度:,$MSG3 DB 0AH,0DH,时间:,$MSG4 DB 0AH,0DH,当前温度:,0AH,0DH,$MSG5 DB 0AH,0DH,按R键重置温度,0ah,0dhDB 按 Q 退出,$数据结束;STCK 段PARA堆栈堆栈DB 256 DUP(0)堆栈结束; - - - - - - - - - - - - - - - - - - - - - - - - 代码部分主要过程远假设 CS:CODE,DS:DATA,SS:STCK开始:推DS移动轴,0推斧移动轴,数据MOV DS,AX命令行界

29、面;中断向量设置和 8259 初始化MOV AL,1CHMOV啊,35HINT 21HMOV KEEP_CS,CSMOV KEEP_IP, BXMOV AL,1CHMOV啊,25HMOV DX, SEG 定时器MOV DS,DXMOV DX,偏移量定时器INT 21H移动轴,数据MOV DS,AX移动铝,36H输出 43H,ALMOV AX, 59660D出 40 小时,铝MOV AL,啊跳转 p_1start_1: jmp 开始p_1:输出40H,AL阿拉巴马州,21 小时和AL,0FCH出 21 小时,铝;82 55 初始化 - MOV DX, 20BH移动铝,80H出去DX打电话给 LE

30、A DX,味精1MOV AH,09HINT 21H呼叫设置LEA DX,味精2MOV AH,09HINT 21H呼叫站LEA DX,味精3MOV AH,09HINT 21H呼叫时间LEA DX,味精5MOV AH,09HINT 21HLEA DX,味精4mov ah,09h整数 21 小时维护:MOV AH,01HINT 16HJZ GOON2MOV啊,0INT 16HCMP AL,RJZ START_1CMP AL,rJZ START_1CMP 铝,QJZ EXITMAIN_1CMP AL,qJZ EXITMAIN_1GOON2:呼叫传输时间LEA SI,TIMECOUNT移动铝,SI MO

31、V BL,ALLEA SI,延时标志跳转 mm_1start_2: jmp 开始mm_1:移动,SICMP 铝,BLE ENDMUSIC调用TRANSCTEMP呼叫显示呼叫点跳转 pp_1exitmain_1:jmp 退出主pp_1:调用 READTEMP呼叫 CMPTEMPMOV AH,01HINT 16HJZ GOON1MOV啊,0INT 16HCMP AL,RJZ START_2CMP AL,rJZ START_2CMP 铝,QJZ 出口CMP AL,qJZ 出口GOON1: CMP HEATFLAG,01HJZ H100CMP HEATFLAG,02H锦中H80CMP HEATFLAG

32、,03H锦中H50CMP HEATFLAG,04H江中H20CMP HEATFLAG,0FFHJZ霍克H100:呼叫 HEAT100JMP 维护H80:呼叫 HEAT80JMP 维护H50:呼叫 HEAT50JMP 维护H20:呼叫 HEAT20JMP 维护HOK:呼叫 HEATOKJMP 维护结束音乐:MOV AL,00HMOV DX, 20AH输出DX,ALMOV CX,4D音乐1:推CX呼叫演讲者MOV CX,5SP4:呼叫延迟_1LOOPSP4无无电话发言MOV CX,5SP5:呼叫延迟_1LOOPSP5流行音乐LOOP音乐1JMP 开始退出:RET主要结束;SETEMP PROC N

33、EARLEA DX,STEMPMOV 啊,0AHINT 21HLEA SI,STEMP添加 SI,2LEA DI,STEMPBCDMOV CX,3TRANSBCD:MOV AL,SI异或啊啊啊SUB AX,30HMOVDI,AX公司INC DIINC DILOOP转BCDRETSETEMP ENDP; - - - - -设置时间 - - - - - - - -SETIME PROC NEARLEA DX,设定时间MOV 啊,0AHINT 21HLEA SI,SETTIME添加 SI,2LEA DI,SETTIMEBCDMOV CX,3TRANSBCD2:MOV AL,SI异或啊啊啊SUB AX

34、,30HMOVDI,AX公司INC DIINC DILOOP转BCD2RETSETIME ENDP;设置室温SETROM PROC NEARLEA DX,SETROOMMOV 啊,0AHINT 21HLEA SI,SETROOM添加 SI,2LEA DI,SETROOMBCDMOV CX,3TRANSBCD3:MOV AL,SI异或啊啊啊SUB AX,30HMOVDI,AX公司INC DIINC DILOOP转BCD3RETSETROM ENDP;读取当前温度READTEMP PROC NEARMOV DX, AD574S移动铝,40H出去DXMOV CX,100HLP1: LOOPLP1MO

35、V AL,00H出去DXMOV CX,10LP2: LOOPLP2移动铝,40H出去DXMOV DX, AD574LLP3:在 AL、DX测试 AL,01HJNZ LP3MOV DX, AD574H在铝,DX移动啊,AL公司 DX在铝,DX与AL,0F0HROR 斧头,4MOV CTEMP,AXRETREADTEMP 结束;比较当前温度和设定温度子程序CMPTEMP PROC NEAR;BCD-16LEA SI,STEMPBCDMOV AX,0000H添加斧头,SIMOV BX, 0AHMUL BX加斧,SI+2MUL BX加斧,SI+4MOV STEMP16,AX;CTEMP TRANSMO

36、V AX, CTEMPMOV BX, 0AHMUL BXMOV BX,88HDIV BXMOV CTEMP16,AX; - - - - -相比 - - - - - - - -MOV BX,STEMP16SUB BX,AXMOV 叉子,BX;根据差异设置加热标志CMP 叉子,50DJG SETFLAG1CMP 叉子,30DJG SETFLAG2CMP 叉指,15DJG SETFLAG3CMP 叉指,4DJG SETFLAG4JMP SETFLAGOKSETFLAG1: MOV HEATFLAG,01HJMP CMP退出SETFLAG2: MOV HEATFLAG,02HJMP CMP退出SETF

37、LAG3: MOV HEATFLAG,03HJMP CMP退出SETFLAG4: MOV HEATFLAG,04HJMP CMP退出SETFLAGOK:MOVHEATFLAG,0FFH退出:RETCMPTEMP 结束;加热子程序HEAT100 PROC NEARMOV DX, 20AHMOV AL,01H出去DXMOV CX,10NEXT1:呼叫延迟_1LOOP下一个1RETHEAT100 结束HEAT80 PROC NEARMOV DX, 20AHMOV AL,01H出去DXMOV CX,8NEXT2:呼叫延迟_1LOOP下一个2MOV AL,00H出去DXMOV CX,2NEXT3:呼叫延

38、迟_1LOOP下一个3RETHEAT80 结束HEAT50 PROC NEARMOV DX, 20AHMOV AL,01H出去DXMOV CX,5NEXT4:呼叫延迟_1LOOP下一个4MOV AL,00H出去DXMOV CX,5NEXT5:呼叫延迟_1LOOP下一个5RETHEAT50 结束HEAT20 PROC NEARMOV DX, 20AHMOV AL,01H 出去DXMOV CX,2NEXT6:呼叫延迟_1LOOP下一个6MOV AL,00H出去DXMOV CX,8NEXT7:呼叫延迟_1LOOP下一个7RETHEAT20ENDPHEATOK PROC NEARLEA SI,TIME

39、COUNTMOV AX,SI公司斧头MOVSI,AXCMP 音乐旗,01HJZ SPK1MOV MUSICFLAG,01H呼叫扬声器MOV CX,3DSP1:呼叫 SPEAKON推CXMOV CX,3DSP2:呼叫延迟_1LOOPSP2无无MOV CX,3D电话发言SP3:呼叫延迟_1LOOPSP3流行音乐LOOPSP1SPK1:MOV DX,20AHMOV AL,00H出去DXMOV CX,10NEXT8:呼叫延迟_1LOOP下一个8RETHEATOK ENDP扬声器 PROC NEARMOV AX, 1208D推斧MOV AL,0B6H输出 43H,AL流行斧出 42 小时,铝MOV AL,啊出 42 小时,铝RET扬声器结束SPEAKON PROC NEAR推斧在 AL,61H或 AL,03H出 61H, 铝流行斧RET说话结束SPEAKOFF PROC NEAR推斧在 AL,61H和AL,0FCH出 61H, 铝流行斧RET发言结束;延时程序DELAY_1 进程接近MOV COUNT_TIME,0D性病DL1: CMP COUNT_TIME,1DJL DL1命令行界面RETDE

温馨提示

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

评论

0/150

提交评论