多路单片机温度控制系统设计_第1页
多路单片机温度控制系统设计_第2页
多路单片机温度控制系统设计_第3页
多路单片机温度控制系统设计_第4页
多路单片机温度控制系统设计_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

1、一、单片机的发展及其应用1.1 单片机的简介及发展1) 单片机的简介:单片机又称微控制器,是在一块硅片上集成了各种部件化微型计算机,这些部件包括中央处理器cpu、数据存贮器ram、程序存贮器rom、定时器/计数器和多种i/o接口电路。单片机体积小、重量轻、具有很强的灵活性而且价格不高,越来越得到广泛的应用。8051在小中型应用场合很常见,已成为单片机领域的实际标准。80年代中期,intel公司将8051内核使用权以专利互换或出售形式转给世界许多著名ic制造厂商,如philips、西门子、amd、oki、nec、atmel等,这样8051就变成有众多制造厂商支持的、发展出上百个品种的大家族。90

2、年代,philips推出支持16位计算的x4系列。xa系列是16位单片机,又可完全兼容8051的指令系统。intel推出的80c51也是与8051在机器代码级兼容,这样保证了8051用户到21世纪技术的领先性。随着硬件的发展,8051软件工具已有c级编译器及实时多任务操作系统(rios),单片机的程序设计更简单、更可靠、实时性更强。因而8051系列是单片机教学的首选机型。而有内部可擦写ram的89c51/52是目前我们常用的芯片。2) 单片机的应用领域:按照单片机的特点,单片机可分为单机应用和多机应用。1. 单机应用在一个应用系统中,只使用一片单片机,这是目前应用最多的方式,单片机应用的主要领

3、域:(1)测控系统。用单片机可以构成各种工业控制系统、自适应控制系统等。例如,温室人工气候控制、水闸自动控制、电镀生产线自动控制、汽轮机电液调节系统、车辆检测系统、机器人轴处理器等等。(2)智能仪表。用单片机改造原有的测量、控制仪表,能促进仪表向数字化、智能化、多功能化、综合化、柔软化发展。如温度、压力、流量、浓度显示、控制仪表等。通过采用单片机软件编程技术,使长期以来测量仪表中的误差修正、线性化处理等难题迎刃而解。(3)机电一体化产品。单片机与传统的机械产品结合,使传统机械产品结构简化,控制智能化,构成新一代的机、电一体化产品。例如,在电传打字机的设计中由于采用了单片机,取代了近千个机械部件

4、;在数控机床的简易控制机中,采用单片机可提高可靠性及增强功能,降低控制机成本。(4)智能接口。在计算机系统,特别是较大型的工业测、控系统中,如果用单片机进行接口的控制与管理,单片机与主机可并行工作,可以大大提高系统的运行速度。例如,在大型数据采集系统中,用单片机对模/数转换接口进行控制不仅提高采集速度,还可以对数据进行预处理,如数字滤波、线性化处理、误差修正等。2多机应用单片机的多机应用系统可分为功能集散系统、并行多机处理及局部网络系统。(1)功能集散系统:多功能集散系统是为了满足工程系统多种外围功能要求而设置的多机系统。例如一个加工中心的计算机系统除完成机床加工运行控制外,还要控制对刀系统、

5、坐标指示、刀库管理、状态监视、伺服驱动等结构。(2)并行多机控制系统。并行多机控制系统主要解决工程应用系统的快速性问题,以便构成大型实时工程应用系统。典型的有快速并行数据采集、处理系统、时时图像处理系统等。(3)局部网络系统。单片机网络系统的出现,使单片机的应用进入一个新的水平。目前单片机构成的网络系统主要是分布式测、控系统。单片机主要用于系统中的通信控制,以及构成各种测、控用子级系统。典型的分布式测控系统有两种类型:树状网络系统与位总线(bit bus)网络系统.位总线分布式测、控系统是intel公司于1984年推出的一个典型的通用分布式微计算机控制系统。构成该系统的核心芯片是intel公司

6、pupi-44系列单片机8044/8744/8344。它是一个双单片机结构,其中一个为8051/8751,另一个用以构成sdlc/hdlc串行接口部件(siu)。片内程序存储器中装有加电诊断、任务管理、数据传送和对用户透明的并行、串行通讯服务程序。1.2单片机的开发与开发系统将一个单片机应用系统从提出任务到正式投入运行(或组织批量生产)的过程称为单片机应用系统的开发。单片机应用系统由硬件和软件组成。硬件包括核心部件微控制器芯片,也称(单片机)和其他必需的元器件、设备,如传感器、显示器、打印机、继电器、马达及各种接口电路等;其软件也称系统的应用程序。单片机应用系统单靠硬件并不能实现任何功能,必须

7、配置适当的应用程序才能完成规定的操作,具有特定的功能。因此,单片机应用系统的开发包括硬件开发和软件开发两个部分。单片机应用系统的开发必须借助于特殊的工具才能完成,这是由单片机系统的特性决定的。一台pc机,我们可以直接在其上面编程开发软件或对系统进行扩展,但单片机系统自身并不具备这种自开发功能。单片机系统的软件必须借助特定的工具才能烧录(固化)到单片机中去,而且在烧录之前一般都需要调试,以便纠正程序中的错误。另一方面,单片机硬件系统也不同于晶体管收音机之类的普通电子装置,单片机内部功能多,结构复杂,外部测试点少,不能全靠万用表、示波器等工具,像调试晶体管收音机那样调试单片机硬件系统。借助于特殊的

8、工具则可排除应用系统中的硬件故障。这种用于单片机应用系统开发的特殊工具称为单片机开发工具。单片机开发工具常以pc机为基础构成,它包括pc机、单片机在线仿真器、编程器和单片机应用系统(也称用户系统),它是一个特殊的计算机系统。因此也将用于单片机应用系统开发的工具称为单片机开发系统。典型单片机开发系统结构如下图所示。单片机应用系统在线仿真器编 程 器pc机与一般通用计算机系统相比较,单片机开发系统在硬件上增加了应用系统的仿真器、编程器等部件,在软件方面除一般计算机所具有的操作系统、编译程序等以外,还增加了仿真器与pc机通信的软件、应用系统的汇编程序、编译程序和调试程序等。图1 单片机开发系统单片机

9、开发系统有通用和专用两大类。专用开发系统只用于某种特殊的单片机,而通用开发系统配备多种在线仿真器和相应的开发软件,使用时针对不同类型的开发对象,只要更换相应的cpu卡即可。1.3 单片机的工作过程单片机的工作过程实质上是执行用户编制程序的过程,一般程序的机器码都已固化到存储器中(例如实训1中的步骤2),因此开机复位后,就可以执行指令。执行指令又是取指令和执行指令的周而复始的过程。1.4单片机应用系统的性能要求单片机应用系统通常工作于现场环境,用于各种检测或控制。在实现测控功能、尽量降低成本之外,还要强调一下几项性能要求。1.可靠性高如果单片机应用系统质量较差、关键时刻出现故障,则有可能造成重大

10、损失。因此,可靠性高是对其十分重要的要求。而且许多生产过程是日夜不停地连续进行,用于这些生产过程的单片机应用系统也必须随之连续运行,这就要求单片机应用系统的平均无故障时间要长。2能适应现场工作环境单片机应用系统通常工作在生产现场,各种电器设备的频繁启停造成的高低频电磁干扰和大幅度电网电压波动,都直接影响其正常运行。另外,生产现场还可能存在振动、粉尘以及湿度、温度等问题。因此,单片机应用系统必须具有很强的抗干扰能力和适应环境的能力,保证在恶劣环境下正常工作。3具有完善的输入/输出通道和实时控制能力为了对生产过程进行检测和控制,有多种信号需要传送,因此要求系统配备完善的模拟量和数字量输入/输出通道

11、。另外,生产过程的控制都是实时控制,要求计算机能对输入信号的变化有足够快的反应,及时处理并改变控制信号。4易于操作和维护在设计操作、信号控制系统时,尽量使之简单明了,便于现场操作。另外,要提高系统的维护方便性,即一旦出现故障,能及时迅速查明故障原因并予以排除。5具有一定的可扩展性根据生产设备和过程的可能变动,在设计单片机应用系统时,在输入/输出接口、存储器容量等方面有一定的余地,能够实现一定的扩展。二、本项目的背景及总体思路2.1 项目背景 单片机温度控制系统及内容是根据当前生产现场的广泛需要而拟定,着重锻炼一般的研发能力、综合与创新素质。本设计属开发型,适用专业口径为电子工程。温度是工业对象

12、中主要的被控参数之一,特别是在冶金、化工、建材、食品加工、机械制造等各类工业中,广泛使用加热炉、热处理护反应炉等;在日常生活中,我们也常用到电烤箱、微波炉、电热水器、烘干箱以及空调等需要进行温度检测与控制的家用电器。采用单片机来实现温度控制不仅具有控制方便简单灵活等优点,而且可以大幅度提高被控温度的技术指标, 从而大大提高产品的质量和数量。现以烘干箱的温度控制系统为例进行介绍。2.2项目的总体思路1. 技术指标烘干箱(电炉代替)的具体指标如下:a.烘干箱有2kw电炉加热,最高温度为200。b.烘干箱温度可预置,烘干过程恒温控制,温度控制误差2。c.预置时显示温度,烘干时显示实时温度,显示精确到

13、1。d.温度超出预置温度5是发出报警。e. 对升降温过程的线性没有要求。2. 控制方案产品的工艺不同,控制温度的精度也不同,因而所采用的控制算法也不同,就温度控制系统的动态特性来讲,基本上都是具有纯滞后的一阶环节,当系统精度及温度控制的线性性能要求较高时,采用pid算法或达林顿算法来实现温度控制。本系统是一个典型的闭环控制系统。从技术指标可以看出系统对控制精度的要求不高,对升降温过程的线性也没有要求,因此,系统采用最简单的通断控制方式,即当烘干箱温度达到设定值时断开加热电炉,当温度降到低于某值时接通电炉开始加热,从而保持恒温控制。3. 硬件设计系统的硬件电路包括主机、温度控制、人机对话(键盘/

14、显示/报警)4个主要部分。图2为系统的结构框图。温度控制部分温度检测部分人机对话部分温度显示键盘声音报警主机a/d转换器变送器送热电阻光耦驱动器可控硅调功器电炉由于项目较大,我们考虑了两套方案,一是自己设计硬件线路板;第二套方案是采用现有单片机应用板,较稳妥。下面对各部分电路分述如下:1)主机由于系统控制方案简单,数量也不大,因此选用89c51作为控制系统的核心,外扩eprom2764,作为程序存储器。也可视具体情况换用8051、8052、8751、80c51、89c52等。其中8051、8052、8751、8752的各个引脚输入/输出电平只与ttl电平兼容;89c51、89c52、80c51

15、各引脚输入/输出电平即与ttl电平兼容,也与cmos电平兼容。(8031的晶振频率为6mhz)2)温度检测这部分包括温度传感器、变送器和a/d转换三部分。a.温度传感器和变送器的类型选择与被控温度的范围及精度有关。型号为wzb003,分度号为ba2的铂金电阻适用于0500的温度测量范围,可以满足本系统的要求。b.变送器将电阻信号转换成与温度成正比的电压,当温度在0200时变送器输出04.9左右的电压。c.a/d转换器件的选择主要取决于温度的控制精度。本系统要求温度控制误差2,采用8位a/d转换器,其最大化误差为1/2(1/255)500=1,完全能够满足精度要求。在这我们采用adc0809作为

16、a/d转换器。电路设计好后,调整变送器输出,使0200的温度变化对应于04.9左右的电压的输出,则a/d转化对应的数字量为00hfah,即0250,则转换结果乘2正好是温度值。用这种方法一方面可以减少标度转换的工作量,另一方面还可以避免标度转换带来的计算误差。3)温度控制电炉控制采用可控硅来实现,双向可控硅和电炉电阻丝串接在交流220v市电回路中。单片机的p1.7口通过光电隔离器和驱动电路送到可控硅的控制端,由p1.7口的高低电平来控制可控硅的导通和断开,从而控制电阻丝的通电加热时间。4)人机对话这部分包括键盘、显示和报警三部分电路。本系统设有6位led数码显示器,无论停止加热还是启动加热,都

17、能同时显示设定温度和当前烤箱温度。采用串行口扩展的静态显示电路作为显示接口电路。为使系统简单紧凑,键盘只设置4个功能键,分别是启动、“百位+”、“十位+”、和“个位+”键,由p1口低4位作为键盘接口。利用+1按键可以分别对预置温度的百位、十位、个位进行加1设置,并在led上显示当前设置值。连续按动相应位的加1键即实现0200的温度设置。报警功能由蜂鸣器实现,当由于意外因素导致烤箱温度高于设置温度时,p1.6口送出的低电平经反向器驱动蜂鸣器叫报警。5)其它可扩展电路对于要求要自行扩展以下接口电路:(1) 实时时钟电路:连接实时时钟芯片ds12887可以获得长的采样周期,显示年、月、日、时、分、秒

18、,而其片内带有的114b非易失性ram,可用来存入需长期保存但有时也需变更的数据。如采样周期、pld控制算法的系统kp、ki、kd等。(2) “看门狗”电路:连接集成监控芯片max705可以实现对主电源vcc的监控,提高系统的可靠性。由于该实验板已将p 1口用排针引出,因此我们可以方便的用实验板来实现以上的系统。可在p 1口外接蜂鸣器电路,外接电炉驱动控制电路,同时外接4个功能按键(启动,+100,+10,+ 1)。三、电路原理图与软件设计3.1 电路原理图在protel99软件中完成了原理图绘制和pcb版图设计。如图:图3 电炉控制系统硬件电路原理图图4 电炉控制系统印制版电路图3.2软件设

19、计系统的操作过程和工作过程在程序的设计过程中起着很重要的指导作用,因此在软件设计之前应首先分析烤箱的工作流程。1. 工作流程电炉在上电复位后先处于停止状态,这时可以用“+1”键设定预置温度,显示器显示预定温度;温度设定好后就可以按启动键启动系统工作了。温度检测系统不断定时检测当前温度,并送往累加器中与预定值进行比较,如高于预置温度则停止加热并显示当前温度;当温度下降到下限(比预定值低2)时再启动加热。这样不断重复上述过程,使温度保持在预定温度范围之内。启动后不能再修改预置温度,必须按复位/停止键回到停止状态再重新设定预置温度。2. 功能模块根据上面对工作流程分析,系统软件可以分为以下几个功能模

20、块:(1) 键盘管理:监测键盘输入,接收温度预置,启动系统工作。(2) 显示:显示设置温度及当前温度。(3) 温度检测及温度值变换:完成a/d转换及数字滤波。(4) 温度控制:根据检测到的温度控制电炉工作。(5) 报警:当预置温度或当前炉温越限时报警。3. 资源分配为了便于阅读程序,首先给出单片机资源分配情况。数据存储器的分配与定义见表1。表1 温度控制软件数据存储器分配表地址功能名称初始化值50h51h当前检测温度,高位在前temp1temp000h53h预置温度,高位在前st000h54h56hbcd码显示温度缓冲区,百位、时位、个位 t100、t10、t00h58h二进制显示缓冲区,高位

21、在前 59h7fh堆栈区bt000hpsw。5报警允许标志f0=0时禁止报警;f0=1时允许报警f000h程序存储器:eprom2764的地址范围为0000h1fffhi/o口:p1。0p1。3键盘输入;p1。6、p1。7报警控制和电炉控制。a/d转换器0809:通道0通道7的地址为7ff8h7fffh,使用通道0。4功能软件设计1)主程序和中断服务子程序主程序采用中断嵌套方式设计,各功能模块可直接调用。主程序完成系统初始化,温度预置及其合法性检测,预置温度的显示及定时器0设置。定时器0中断服务子程序是温度控制体系的主体,用于温度检测、控制和报警(包括启动a/d转换、读入采样数据、数字滤波、越

22、限温度报警和越限处理、输出可控硅的控制脉冲等)。中断由定时器0产生,根据需要每隔5s中断一次,即每5s采样控制一次。但系统采用6mhz晶振,最大定时为130ms,为实现5s采样定时,这里另行设了一个软件计数器。主程序和中断服务子程序的流程图如图5所示。保护现场重装定时器0初值软定时器减115s到重值软定时器初值调用温度检测子程序当前温度显示缓冲区调显示子程序调用温度控制子程序调报警子程序中断返回开始定义堆栈区定时器0、软定时器、各数据缓冲区、各标志位初始化调用键盘管理子程序启动键闭合时返回定时器0中断等待定时中断 图5 系统程序总体结构框图2)键盘管理模块a预置温度合法检查预置温度 显示缓冲区

23、调用显示子程序有键闭合调用显示子程序 延时去抖有键闭合p1.1=0p1.2=0 p1.3=0p1.0=0返回启动加热100 a10 a1 aa+预置温度预置温度数据区键释放a上电或复位后系统处于键盘管理状态,其功能是监测键盘输入,接收温度预置和启动键。程序设有预置温度合法性检测报警,当温度超过200时会报警并将温度设定在200。 图6 键盘管理子程序流程图3)温度检测模块 清检测结果缓冲区 采样次数4 r2启动a/d转换累加采样结果结果8位 51har21=0返 回转换结束a4次累加结果除2 检测结果缓冲区图7 温度检测子程序流程图4)温度控制模块当前温度与预置温度比较,当前温度小于预置温度时

24、,继电器闭合,接通电阻丝加热;当前温度大于预置温度时,继电器断开,停止加热;当二者相等时,电炉保持原来状态;当前温度降低到比预置温度低2时,再重新开始加热;当前温度超出报警温度上下限时将启动报警,并停止加热。由于电炉开始加热时,当前温度可能低于报警下限,为了避免误报,在未达到预置温度 ,不允许报警,为此设计了报警允许标志f0。当前温度与预置温度比较当前温度预置温度达到过预置温度当前温度预置温度开电炉返 回置允许报警标志关电炉图8 温度控制流程图5)温度越限报警模块报警上限温度值为预置值温度+5,即当温度上升到高于预置温度+5时报警,并停止加热;报警下限温度值为-5,即当温度下降到低于预置温度-

25、5,且报警允许时报警,这是为了防止开始从低温度加热时误报警。报警的同时也关闭电炉。如下图9为报警子程序流程图。当前温度预置温度 差字节 a当前温度5允许报警开报警器, 关电炉返回图9 报警子程序流程四、安装调试及分析1硬件由于本项目规模较大,时间紧张、加之我们经验不足,我们的第一套方案不顺利,cad设计制版后组装的实验板没能调出正确结果,也没有资金和时间再做一块板。我们采用了第二套备用方案,在硬件方面使用了现成的单片机应用板lh-mpu89c51r控制板,通过软件编程和调试完成了设计课题要求的任务及系统要求的功能。1. 89c51r控制板配有8031、89c52或89c51、74ls573、7

26、4ls04、74ls08、,程序存贮器为64k,数据存贮器为32k,自带一片8155i/o扩展,一个八位d/a0832、八路a/d-0809,mc1413及max232各一片,时钟为12mhz。通用键盘显示板采用8279(通用键盘/显示接口芯片)。8279能与z80.8031.8039.8098等数据总线直接联接,不占用cpu时间,自动完成扫描显示,编程方便。本板上配备8位led数码管,20个键,其中一个是复位键,另几个出厂时定义为0-f,16个数字键,1个last(读写上一个ram单元)键,1个next(读写下一个ram单元)键,1个exec(连续执行键)。先将89c51r控制板与通用键盘板

27、相连,然后接上我们焊接的外围设备(即电炉板)。 2. 软件实现与操作。系统软件的整体结构各模块在前面已介绍。先在wave下编完程序,然后编译好通过后,生成目标文件十二和十六进制,烧录到89c52片子中时,先下载监控程序加上我们编译好的十六进制程序,再写入芯片中即可调试,通过不断修改完善,最终很好地实现了我们的目标。本系统的操作:装上已写好程序的芯片后,通电进入监控状态下,一般应该先检测我们用的板是否完好,输入测试程序:0400检查8031p1口(方波)、0410检查8155内存完好显示good、0460检查8155pa pb pc口(方波)、0480检查6264完好显示good、04b0检查a

28、dc0809、0500检查dac0832。然后在指定单元9500h,9501h中键入预置温度,点mon确定。执行应用程序1700+exec,系统即开始工作,数码管将显示出预置温度和实际温度。使用电位器调整输入电压(04.9v),( 电炉不易安装,代替模拟温度传感器输出),在预定的点上,能够准确观察到开电炉,关电炉,报警等过程。如果有时间有条件,还能够加上一些功能,如实际加载电炉或通讯等,也可把一路测量及控制改为两路。2整个系统软件如下:键盘管理程序:org 1500h h900: mov sp,#53hmov dptr,#7001hmov a,#00hmovx dptr,amov a,#32h

29、movx dptr,amov a,#0dfhmovx dptr,ah901: movx a,dptrjb acc.7,h901mov dptr,#7000hmov a,#0c8hmovx dptr,ainc dptrmov a,#80hmovx dptr,ah902: mov 30h,#80hmov 31h,#40hh903: mov dptr,#7001hmovx a,dptranl a,#07hcjne a,#00h,h904ajmp h903h904: mov dptr,#7000hmovx a,dptrmov b,amov r1,#00hmov dptr,#gojzh905: mov

30、a,#00hmovc a,a+dptrcjne a,b,h906ajmp h907h906: inc dptrinc r1mov a,r1jb acc.4,h908ajmp h905h908: mov r1,#00hmov dptr,#gojz1h909: mov a,#00hmovc a,a+dptrcjne a,b,h90aajmp h90bh90a: inc dptrinc r1mov a,r1jnb acc.2,h909ajmp h900h907: mov a,30hmov dptr,#7001hmovx dptr,amov a,r1mov r0,31hmov r0,ainc 31hm

31、ov dptr,#zoe0movc a,a+dptrmov dptr,#7000hmovx dptr,ainc 30hmov a,30hcjne a,#88h,h90cajmp h902h90c: ajmp h903h90b: mov dptr,#ckey3mov a,r1rl aadd a,r1jmp a+dptrckey3: ljmp mpljmp l241ljmp l242gojz: db 0c1h,0c8h,0c9h,0d0h,0d8h,0e0h,0c2h,0cah,0d1hdb 0d9h,0dah,0c3h,0cbh,0d2h,0d3h,0dbhgojz1: db 0e3h,0e2h

32、,0e1hzoe0: db 0ch,9fh,4ah,0bh,99h,29h,28h,8fh,08h,09h,88hdb 38h,6ch,1ah,68h,0e8horg 1641hl241: mov r5,#9fhljmp l245l242: mov r5,#4ahl245: mov r6,#80hl246: mov a,r6mov dptr,#7001hmovx dptr,amov a,r5mov dptr,#7000hmovx dptr,amov r2,#20hlcall delymov a,#0ffhmovx dptr,ainc r6cjne r6,#88h,l246ajmp l245re

33、tdely: push 02hdel2: push 02hdel3: push 02hdel4: djnz r2,del4pop 02hdjnz r2,del3pop 02hdjnz r2,del2pop 02hdjnz r2,delyretmp: org 1700h /温控主程序maintemp1 equ 50htemp0 equ 51htemp2 equ 52hst0 equ 7ahst1 equ 7bhst2 equ 7ch温度检测子程序tin:tin: mov temp2,#00h /清检测温度缓冲区mov a,#00hmov dptr,#6800h /指向a/d转换器0通道ltin1

34、: movx dptr,a /启动转换mov r1,#0ffhlo17: djnz r1,lo17 /等待转换结束movx a,dptr /读转换结果 clr c rrc a mov temp2,amov r3,#24hmov r3,temp2二进制与bcd码的转化:push pswmov b,#100div abpush accmov a,#10xch a,bdiv abswap aadd a,bpop bpop pswretdisp5: mov r0,#7eh ;显示子程序mov a,temp0anl a,#0fh /显示模块mov r0,amov r6,#87hmov a,r6 /显示测

35、量值个位mov dptr,#7001h movx dptr,amov a,r0mov dptr,#zoe0movc a,a+dptrmov dptr,#7000hmovx dptr,ano1b: mov a,temp0 swap a anl a,#ofh mov r0,a /显示测量值十位 mov r6,#86h mov a,r6mov dptr,#7001hmovx dptr,amovc a,r0mov dptr,#z0e0movc a,a+dptrmov dptr,#7000hmovx dptr,ano2: mov a,temp1anl a,#0fh mov r0,amov r6,#85h

36、 /显示测量值百位 mov a,r6 mov dptr,#7001h movx dptr,amov a,r0mov dptr,#zoe0movc a,a+dptrmov dptr,#7000hmovx dptr,ano3: mov r6,#80h /显示预置值百位 mov a,r6 mov dptr,#7001h movx dptr,amov dptr,#9500hmovx a,dptranl a,#0fhmov dptr,#zoe0movc a,a+dptrmov dptr,#7000hmovx dptr,ano4: mov r6,#82h /显示预置值个位mov a,r6mov dptr,

37、#7001hmovx dptr,amov dptr,#9501hmovx a,dptranl a,#0fhmov dptr,#zoe0movc a,a+dptrmov dptr,#7000hmovx dptr,ano5: mov r6,#81h /显示预置值十位mov a,r6mov dptr,#7001hmovx dptr,amov dptr,#9501hmovx a,dptrswap aanl a,#0fhmov dptr,#z0e0movc a,a+dptrmov dptr,#7000hmovx dptr,alcall cont5lcall alarmlcall d6msljmp tin

38、温度控制子程序:cont5: clr cmov dptr,#9500hmovx a, dptrmov st1,amov a,temp0subb a,st1 /当前温度-预置温度jnc loff jnb f0,lon5clr c subb a,#02h jc lofflon5: clr p1.7 sjmp exit5loff: setb f0 setb p1.7exit5: ret;报警子程序:alarm: mov a,temp0 clr c subb a,st1 jc la0 /有借位,当前温度小于预置温度转la0 setb f0 /当前温度=预置温度,允许报警 ajmp la1la0: mo

39、v a,st1 clr c subb a,temp0la1: clr c subb a,#05h jc la2 jnb f0,la2 clr p1.6 /报警 clr p1.7 /加热状态 lcall d6ms setb p1.6 setb p1.6la2: retd6ms: mov r5,#13 /延时2s子程序 mov r7,#18htm: mov r6,#0ffhtm6: djnz r6,tm6 djnz r7,tm djnz r5,tm retbcdbin:mov r3,#00h mov dptr,#9500h movx a, dptr mov st0,amov a,st0 jnb a

40、cc.0,ad100 mov r3,#064h ajmp st111 ad100: mov r3,#00h st111: mov dptr,#9501h movx a, dptr mov st1,a mov a,st1 push b push psw push acc anl a,#0f0h swap a mov b,#10 mul ab mov b,a pop acc anl a,#0fh add a,b mov b,a mov a,r3 add a,b mov st2,a mov dptr,#9503h movx dptr,a pop psw pop b retend五、体会与总结此次毕业

41、设计的课题为多路单片机温度控制系统的开发,这个课题是专业知识(单片机的应用)和实际很好的一次结合。单片机温度控制系统是一个很接近实际应用的大项目,有较大难度。目前,在科技迅速发展的今天单片机构成的现代电子系统已成为主流电子系统或其重要组成部分,而温度又是工业对象中主要的被控参数之一,因此,本项目的设计与开发对我们的实际操作能力起到了很好的培训作用。第一,使我们基本掌握了一项电子设计方面的技能,巩固了我们所学的专业知识,培养了我们的创新素质和钻研精神。第二,很好的培养了我们综合应用相关专业知识的能力。为我们能够进一步精通和掌握相关专业课程的知识并能够举一反三学会全方位、更有深度的知识的能力打下了

42、坚实的基础。第三,通过基本完成软硬件设计、cad线路制版、电路安装、调试等完整环节,形成电子整机。虽然在制作过程中,我们大家都尽心尽力,团结一致克服困难,但在软件下载时遇到了不少的阻力。但在老师和我们大家的不断努力和协助下通过使用现有的单片机应用板,将自己的程序下载进去,不断校改,多次调试后得到了我们想要的结果, 从而完成了毕业设计的项目要求。经过自己亲手的实践过程,使我学到了许多课本里学不到的东西,积累了一定的经验和教训,可以说是受益匪浅,对自己将来走向工作岗位能够更快、更好地投入到工作当中起到了不可磨灭的作用。六、多路控制的设想由于本次毕业设计时间所限,多路单片机温度控制系统我们只做了一路

43、,本文主要讨论单路温控情况。关于多路的设计,由于设计时间短,这里只给出一些简单思路。因为8051或8052单片机有四个八位i/o端口p0、p1、p2、p3,它们都是8位准双向口,每一条i/o线都能独立地用作输入或输出,每个端口都包括一个锁存器,一个输出驱动器和输入缓冲器,作输出时数据可以锁存,作输出时可以缓冲。所以,可在系统前端设计一多路选择器,轮流测量不同温度点,同时轮流显示。或利用adc的多个通道,分时测量显示。也可以同时显示两路的预置温度或当前温度,也就是说在八位数码管上分左右两边显示,这是根据它显示可以滞后及寄存性,通过软件来实现分时扫描和控制的,比如预置温度不同,可考虑利用定时功能,

44、定时转向不同的结构类型的子程序。因为单片机有丰富的中断、定时、调用及优先等级指令。在硬件的基础上用单片机的i/o口中的两位来控制两路电路,可用p1和p2口作为采集输入口。软件上利用定时器实现两路的转换,或者根据硬件连接的不同采取片选的方式编程。只是由于我还要参加升本考试,不能花时间来研究这个问题,只能等待下个机会了!七、英语翻译computers impact on societycomputers in sciencecomputers handle a variety of tasks in the broad area of science.some categories of task

45、s in which computers can be helpful in: performing mathematical calculations; simulating and modeling; controllinng laboratory instruments and devices.performing mathematical calculationsbecauses of the enormous volume of data that must be stored and processed for some scientific tasks, super comput

46、ers are used to handle the requirements. they processed vast amounts of data and produce output in a form that is easy to read and interpret.some scientific tasks require real-time mathematical calculations. real-time refers to the way a computer can process data so fast that it gives immediate feed

47、back. scince real-time computer system are so quick, they are often used as emergency systems to warn of potential or actual danger.simulating and modeling computers are also used for simulating and modeling. the computer is programmed to the consider certain facts and then come to a decision.the computer makes simulations by duplicating the conditions likely to occur when certain variables are changed in a given situation.in computer modeling, the computer construes a m

温馨提示

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

评论

0/150

提交评论