收藏 分销(赏)

MCS-51单片机温度控制系统设计.doc

上传人:a199****6536 文档编号:2670744 上传时间:2024-06-04 格式:DOC 页数:52 大小:1.89MB
下载 相关 举报
MCS-51单片机温度控制系统设计.doc_第1页
第1页 / 共52页
MCS-51单片机温度控制系统设计.doc_第2页
第2页 / 共52页
MCS-51单片机温度控制系统设计.doc_第3页
第3页 / 共52页
MCS-51单片机温度控制系统设计.doc_第4页
第4页 / 共52页
MCS-51单片机温度控制系统设计.doc_第5页
第5页 / 共52页
点击查看更多>>
资源描述

1、MCS-51单片机温度控制系统设计 作者: 日期:2 个人收集整理 勿做商业用途毕业设计说明书MCS51 单片机温度控制系统 作 者:学 号:学院(系):专 业:指导教师: 评 阅 人: 1 引言31。1 课题研究的目和意义31.2 温度控制系统的国内外现状31。3 温度控制系统方案41。4 论文的主要任务和所做的工作52 单片机温度控制系统总体设计及原理62。1系统的主要功能62。2系统的工作原理62.3 系统的主要技术指标72.4 系统的总体结构73 温度控制系统的硬件设计83.1温度测量放大电路83.1.1 温度传感器的选择及基本工作原理83.1。2 放大电路的设计93.2主要的接口电路

2、103。2。1 模数转换电路103。2.2 键盘接口和数码显示113。2.3程序存储器和并行接口的扩展及报警电路123.2。4 温度控制电路154 温度控制系统的软件设计184。1 主程序设计及中断服务程序设计184.1。1温度控制主程序流程简图184。1.2 中断服务程序设计194。2 温度控制程序子程序214.2。1 键盘扫描和温度显示程序设计214。2。2 炉温采样、数字滤波程序设计234。2.3温度标度转换算法264.3 PID控制算法284。3.1 PID算法基本原理284。3。2 PID算法及子程序305 结论与展望32附录B:键盘/LED接口图34附录C:系统源程序35参 考 文

3、 献44致 谢46MCS-51单片机温度控制系统摘 要单片机在检测和控制系统中得到了广泛的应用,温度是一个系统经常需要测量、控制和保持的量,而温度是一个模拟量,不能直接与单片机交换信息,采用适当的技术将模拟的温度量转化为数字量在原理上虽然不困难但成本较高,还会遇到其它方面的问题.因此对单片机温度控制系统的研究有重要目的和意义。 本文主要介绍了以MCS51系列单片机8031、AD574、8155、可控硅、LM311等芯片组成的温度检测电路,模/数转换电路,键盘/LED显示电路,报警电路,信号放大电路;在描述了外围硬件电路的同时,还做了大量的软件工作,包括数据处理软件,PID控制算法.本设计有效的

4、提高了控制系统的实时性和控制精度大大改善了炉温控制的自动化程度,具有较高的实用价值.关键词:单片机,PID算法 ,温度采样,温度控制MCS51 SINGLECHIP TEMPERATURE CONTROL SYSTEMAbstractThe single chip microcomputer is required extensively in measurement and control systems, and the temperature need to be surveyed, controlled and maintained by a system frequently。 Bu

5、t the temperature is an analog, can not exchange information with the single chip directly. In principle, it is not difficult to transform the simulated temperature into the digital quantity, if adopting Proper technique 。But gets the electric circuit more complex, the lost is more expensive, and ot

6、her questions can be met. So it is very important for research of single chip temperature control。文档为个人收集整理,来源于网络本文为互联网收集,请勿用作商业用途This article mainly introduced 8031 of series MCS-51、ADC0809、8155、LM311、controllable silicon, which composed temperature measurement and control circuit、A/D transfer circ

7、uit、keyboard/LED display、signal magnifying circuit alarming circuit; Some important techniques in a design scheme of the software of the temperature by singlechip Microcomputer are introduced also, such as date processing software, control algorithms software。This system enhances real-time character

8、 of control system and control precision effectively, improves the automatic degree of furnace temperature and higher practice valueKey words: Single-chip Microcomputer, PID algorithm, Temperature sampling, Temperature control1 引言1。1 课题研究的目和意义在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产

9、、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量.单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,为自动化和各个测控领域中广泛应用的器件,在工业生产中称为必不可少的器件,尤其是在日常生活中发挥的作用也越来越大。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题.本论文以上述问题为出发点,设计实现了温度实时测量、显示、控制系统.本设计方案具有较高

10、的测量精度,更加适合对温度精度要求较高的化工生产、电力工程等行业,并希望通过本设计得到举一反三和触类旁通的效果。1.2 温度控制系统的国内外现状通过网上查询、翻阅图书了解到目前国内外市场以单片机为核心的温度控制系统很多,而且方案灵活,且应用面比较广,可用于工业上的加热炉、热处理炉、反应炉,在生活当中的应用也比较广泛,如热水器,室温控制,农业中的大棚温度控制。以上出现的温度控制系统产品,根据其系统组成、使用技术、功能特点、技术指标.选出其中具有代表性的几种如下:1 虚拟仪器温室大棚温度测控系统在农业应用方面虚拟仪器温室大棚温度测控系统是一种比较智能,经济的方案,适于大力推广,改系统能够对大棚内的

11、温度进行采集,然后再进行比较,通过比较对大棚内的温度是否超过温度限制进行分析,如果超过温度限制,温度报警系统将进行报警,来通知管理人员大棚内的温度超过限制,大棚内的温控系统出现故障,从而有利于农作物的生长,提高产量。本系统最大的优点是在一台电脑上可以监测到多个大棚内的温度情况,从而进行控制。该系统LabVIEW虚拟仪器编程,通过对前面板的设置来显示温室大棚内的温度,并进行报警,进而对大棚内温度进行控制。该系统有单片机,温度传感器,串口通信,和计算机组成。计算机主要是进行编程,对温度进行显示、报警和控制等;温度传感器是对大棚内温度进行测量,显示;单片机是对温度传感器进行编程,去读温度传感器的温度

12、值,并把半温度值通过串口通信送入计算机;串口通信作用是把单片机送来的数据送到计算机里,起到传输作用.2 电烤箱温度控制系统该方案采用美国TI公司生产的FLASH型超低功耗16位单片机MSP430F123为核心器件,通过热电偶检测系统温度,用集成温度传感器AD590作为温度测量器件利用该芯片内置的比较器完成高精度AD信号采样,根据温度的变化情况,通过单片机编写闭环算法,从而成功地实现了对温度的测量和自动控制功能。其测温范围较低,大概在0250之间,具有精度高,相应速度快等特点。3 小型热水锅炉温度控制系统该设计解决了北方冬季分散取暖采用人工定时烧水供热,耗煤量大,浪费人力,温度变化大的问题.设计

13、方案硬件方面采用MCS-51系列8031单片机为核心,扩展程序存储器2732,AD590温度检测元件测量环境温度和供水温度,ADC0809进行模数转换,同向驱动器7407、光电耦合器及9103的功放完成对电机的控制.软件方面建立了供暖系统的控制系统数学模型。本系统硬件电路简单,软件程序易于实现。它可用于一台或多台小型取暖热水锅炉的温度控制,可使居室温度基本恒定,节煤,节电,省人力。1。3 温度控制系统方案结合本设计的要求和技术指标,通过对系统大致程序量的估计和系统工作速度的估计以及I/O口需求量的估计,考虑价格因素.选定8031单片机作为系统的主要控制芯片,外围扩展并行接口8155,程序存储器

14、EPROM2732,12位模数转换器AD574,采用镍铬/镍硅热电偶进行温度检测其测温范围为0-1000,外接指示灯作为报警电路,8031对温度的控制是通过双向可控硅实现的.双向可控硅管和加热丝串接在交流220V、50Hz市电回路。在给定周期T内,8031只要改变可控硅管的接通时间即可改变加热丝的功率,以达到调节温度的目的。1。4 论文的主要任务和所做的工作本论文主要是完成一种低成本、低价格、功能齐全、及温度测量、温度显示、温度控制于一体的单片机温度控制系统的理论设计。包括硬件电路和主要的控制算法。研究的关键问题是:炉温的精确测量;双向可控硅控制的温度控制电路设计;温度控制算法的选择,本设计采

15、用PID控制算法;以及温度标度转换、数字滤波炉温采样等软件设计。根据本设计所要完成的任务本论文完成了如下工作:1介绍了研究和设计的背景和意义,调查并综述了当前温度控系统市场的国内外现状,2 提出了符合设计要求的高精度温度控制系统方案,并阐述了其工作原理。3 完成了硬件电路的设计,它包括温度检测放大传送电路;包含MCS-51系列单片机8031,外围扩展并行接口8155,程序存储扩展2732,模数转换器AD574等芯片的接口电路;通过双向可控硅管实现的温度控制电路;键盘接口和LED显示电路,以及实时报警电路。4 基本完成了软件部分设计,它包括键盘扫描、温度控制显示,炉温采样、数字滤波,数据处理,越

16、限报警处理,PID计算、温度标度转换等的算法。2 单片机温度控制系统总体设计及原理2。1系统的主要功能(1)对炉温的温度检测和升温、恒温控制。(2)显示检测温度值.(3)当超越上限或下限时自动报警.(4)设定和修改要保持的温度值.2。2系统的工作原理在温控系统中,需要将温度的变化转换为对应的电信号的变化,由于热电偶的结构简单制造容易,测量范围广,在高温测量中有较高的精度,所以选用镍铬/镍硅热电偶做热电传感器,测温范围01000,最高可测量1300。热电偶把测量的炉温温度信号转换成弱电压信号,经过信号放大电路,放大后的信号输人到A/D转换器(AD574 )转换成数字信号输人主机(单片机8031)

17、,并送往外接显示电路,主机对电炉温度和设定温度进行比较后如果越限,则软件触发用8031的P1口控制报警系统输出控制脉冲,该控制脉冲与单稳态同步触发器输出的同步脉冲送人控制门(与非门),门电路信号输人光偶管转换成电流信号,经过三级放大电路输人可控硅的门极,可控硅导通由程序控制同步触发脉冲的来临时间,从而控制可控硅的通断时间,以达到对电炉加热丝温度的调节和功率的改变,实现对电炉的恒温和升温控制。工作流程说明如下:开始,先接通电源,然后将开关打到开的位置,六段数码管显示器就自动显示出当前温度,并且显示出设置温度的缺省值000000。此时继电器不工作。按下F1按键,温度控制系统进入温度控制点的设制。这

18、个时候,显示设置温度的数码管闪烁。 此时可以通过键盘输入预设置的温度。当按下“确定按键的时候,单片机就会根据所写入的程序,对系统进行控制。当设置的温度高于当前的温度时,单片机通过可控硅控制极上触发脉冲控制加热电路连通。温度慢慢升高。当设置的温度低于当前的温度时,单片机通过可控硅控制极上触发脉冲控制加热电路断开.温度慢慢下降.就这样通过温度芯片的反馈信息,实现水的温度保持在设置温度上,从而达到自动控制温度的功能.2。3 系统的主要技术指标测温范围 :0-1000 温度分辨率:0。5VLED显示位数:62.4 系统的总体结构系统的硬件电路有温度检测、信号放大、A/D转换、键盘接口、LED显示、单稳

19、态触发电路、可控硅控制电路等部分组成,系统结构图见图1.1炉温采样点温度传感器滤波信号放大AD转换单片机系统(8031)双向可控硅光耦驱动过零脉冲提取计时电炉220VLED显示键盘图 2.1 系统框图3 温度控制系统的硬件设计3.1温度测量放大电路3.1。1 温度传感器的选择及基本工作原理测量温度的方法虽然很多,但从感受温度的途径来分,不外两大类:一类是接触式的,即通过测温元件与被测物体的接触而感知物体的温度;另一类是非接触的,即通过接收被测物体发出的辐射热来判断温度。由于本系统测量的温度值在:01000,所以最常用的最经济的方法是用热电偶来测量. 当两种不同的导体或半导体连接成闭合回路时,若

20、两个接点温度不同,回路间就会出现热电动势,并产生电流。从物理上看,这一热电势主要是由接触电势组成的。当两种不同导体J、B接触时,由于两边的自由电子密度的不同,在交界面上产生电子的相互扩散。若J中自由电子密度大扩散的多,使J失去较多的电子而带正电荷,相反,B带负电荷.致使在盘J、B接触处产生电场,以阻碍电子的进一步积累,最后达到平衡。在J、B两导体间的电位差称为接触热电势。电炉常用热电偶的材料要求:1耐高温-热电偶的测温范围主要取决于热电极的高温性能,也就是说,在高温介质中,热电极的物理化学性能越稳定,则由它组成的热电偶的测温范围就越宽. 2灵敏度高,线性好-要求电偶所产生的温差热电势足够大,并

21、与温度呈线性关系; 3要求热电有为材料除能满足上述几点要求外,并希望它的电阻系数和电阻温度系数尽可能地小,且其价格便宜、货源充足。热电偶型号比较多,不同的型号有不同的测温区,对于本系统镍铬镍硅热电偶其分度号为K,正极成分是910铬、0。4硅,其余为镍,负极成分为2.5-3硅,0。6%铬,其余为镍。这类热电偶的优点是有较强的抗氧化性和抗腐蚀性,其化学稳定性好,热电势较大,热电势与温度间的线性关系好,其热电极材料的价格便宜,可在1000以下长期连续使用,短期测温可达1300.最高温度1300,所以镍铬镍硅热电偶就可以了。 市场上卖的热电偶一般都集成温度补偿电路,理论上应使冷端温度为基点即0,而实际

22、上冷端通常为室温,如果不带可利用PN结结电压随温度上升而线形下降的特性来进行补偿,或设置恒温槽。 3.1。2 放大电路的设计01000的温度对应0mV41。3mV ,热电偶出来的mV电压,大概热端变化一度,热电耦有40微伏的电位差输出,无法直接进行A/D转换,必须进行放大处理。采用OOP07运放组成低漂移高精度前置放大器,对几十微伏变化信号测量比较精确,其放大倍数与 /成正比,可根据需要设计。其中OP07的1、4、5端与构成调零电路。再接一级有运放741构成的续接放大器就可将毫伏级信号放大到需要的幅度,放大倍数可自己设定,741的1、4、5端与构成调零电路。741的输出送给后面的模数转换电路.

23、具体接法如图3。1图3。1 放大电路因为传感器输出电压为0mV42。30mV,而AD574段输入电压为0V10V,所以应该放大240倍, 取OP07放大10倍,741放大24倍,取=150, =200由运放原理知道: =20=3 =24=4.83.2主要的接口电路3.2.1 模数转换电路A/D转换电路是测控仪表制作的另一个关键所在。A/D转换的位数,精度,速度,性能都直接影响着系统的相关性能。考虑到本系统要求精度比较高,选用美国AD公司研制的12位逐次逼近式AD574A,它适合高精度快速采集,所以本系统不用设计采样保持电路,节省了硬件。AD574的主要特性如下:A/D分辨率:12或8位。转换时

24、间:25转换精度:0。05。单极性模拟输入:0V10V,0V20V双极性模拟输入:5V,10V正电源供电:+12V+15V负电源供电:12V-5V内部集成有转换时钟,参考电压源和三态输出锁存器,可直接与16位或8位机直接相连,而且无需外接时钟。其逻辑真值表如表3。1 表3。1 AD574真值表功能0不起作用1不起作用1000启动12位转换1001启动8位转换101接+5V12位数据并行输出101接地0高八位数据输出101接地1低4位数据尾接0输出该转换电路的具体接法如图3.2,因为片内有时钟,故无须外加,该电路采用单极性输入方式,可对0V10V模拟信号转换,其中图3。1中管脚8,10,12把A

25、D574置成单极性10V输入,无论启动、转换,还是结果输出,都要保证CE端为高电平,故用8031的和端通过与非门74LS00与AD574的CE端相连。转换结果分高八位、低四位与P0口相连,分两次读入,所以接地.在读取转换结果时保持相应的电平,将来自单片机的控制信号经74LS373锁存后再从Q0接入,选通信号经译码器译码后选通,AD574有两个选口地址,由A0口区分,把译码器Q7Q6Q5Q4Q3Q2Q1=111000B端接到则AD574的两个选口地址为F0和F1H,其中写F0H启动12位转换,写F1H启动8位转换,读F0H用于读取高八位数字量,读F1H用于读取低4位数字量, 图3.2 模数转换电

26、路单片机可采用中断、查询、软件延时等方式读取转换结果。本设计时按查询法输入A/D转换后的数字量。3。2。2 键盘接口和数码显示在单片机应用系统中,同时需要使用键盘与显示器接口时,为了节省I/O口线常常把键盘和显示电路接在一起,构成实用键盘和显示电路,图3.3是典型实用的、采用8155并行扩展口构成的键盘、显示器电路,图中设置了16个键,如增加PC口可以增加到61个,单片机应用系统中除了复位按键有专门的复位电路,以及专一的复位功能外,其它的按键或键盘都是以开关状态来设置控制功能或输入数据。键盘有编码和非编码两种。非编码键盘硬件电路极为简单故本系统采用。6个LED显示器采用共阴极方式,段选码由81

27、55PB口提供,位信号有PA口提供.键盘的列扫描也由PA口提供,查询输入由PC0PC1提供,LED采用动态显示软件,键盘采用逐列扫描查询工作方式。键盘设定如下:键盘共有12个按键,用于方便设定温度。数字按键10个,输入数字09和小数点;确认键一个,设置的确认,修改设置温度时进行确认;清除键一个,设置的清除,修改设置温度时进行删除;F1键一个,显示及设置转换到预设温度点,按此按键后,显示预设置温度的数码管闪烁;此外,还有两个功能键。 图3。3 键盘接口/LED显示3.2。3程序存储器和并行接口的扩展及报警电路MC551系列单片机有三种基本型号:8031,8051及87510它们的管脚及指令系统完

28、全兼容,只是在结构及特性方面有一些差异。8031是目前应用最多的。8031内含一个8位的CPU,128个字节的ROM,21个特殊功能寄存器(SFR),4个8位并行I/O口,1个双工串行口,2个16位的定时器/计数器,但程序寄存器需用外扩EPROM芯片。本设计选用了4KB的EPROM2732.外接6MHZ的晶振体,即每个周期为2微妙,复位信号采用上电复位,通过外部复位电路的电容充电来实现的。这样只要电源VCC的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的初始化。因为P0口既要作为地址输出口,还要作为数据读入口所以外接了一个74LS373八位双向数据锁存器,用来锁存地址信

29、号.74LS373是否工作由来自8031的ALE数据锁存允许信号控制,当ALE高电平时锁存器开始工作.扩展的并行接口8155用于键盘和LED显示接口由图3.4可见,在P2。0=0和P2.1=0时,8155选中它内部的RAM工作;在P2。0=1和P2.1=0时,8155选中它内部的三个I/O端口工作.相应的地址分配为:0000H - 00FFH 8155内部RAM0100H 命令/状态口0101H A 口0102H B 口0103H C 口0104H 定时器低8位口0105H 定时器高8位口8155用作键盘/LED显示器接口电路A口和所有LED的八段引线相连,各LED的控制端G和8155C口相连

30、,故A口为字形口,C口为字位口,8031可以通过C口控制LED是否点亮,通过A口显示字符。2732是4KB的EPROM型器件.8031的和2732的相连,P2。4和相连,故2732的地址空间为:0000H-0FFFHAD574的10VIN通道和放大电路的输出端相连,所以10VIN通道上输入的0V+10V范围的模拟电压经A/D转换后可由8031通过程序从P0口输入到它的内部RAM单元,在P1.0=0和WR=0时,8031可使ALE和START变为高电平而启动AD574工作;在P1.0=0和RD=0时,8031可以从AD574接收A/D转换后的数字量。也就是说AD574可以视为8031的一个外部R

31、AM单元,地址为03F8H(地址重复范围很大),因此,8031执行如下程序可以启动AD574工作.MOV DPTR,03F8HMOVX DPTR,A若8031执行下列程序:MOV DPTR,#03F8HMOVX A,DPTR则可以从AD574输入A/D转换后的数字量.本设计的报警电路直接由8031的P1.0,P1.1,P1.2控制外接指示灯。编程实现灯的开关,若测量的温度不越限,则P1。1口的绿灯亮,若测量的温度越下限P1.0口的红灯亮,若测量的温度越上限则P1.2口的灯亮.以上电路的具体连接如图3。4 图3。4程序存储器和并行接口的扩展及报警电路3。2.4 温度控制电路晶闸管又叫可控硅。自从

32、20世纪50年代问世以来已经发展成了一个大的家族,它的主要成员有单向晶闸管、双向晶闸管、光控晶闸管、逆导晶闸管、可关断晶闸管、快速晶闸管,等等.今天大家使用的是单向晶闸管,也就是人们常说的普通晶闸管,它是由四层半导体材料组成的,有三个PN结,对外有三个电极:第一层P型半导体引出的电极叫阳极A,第三层P型半导体引出的电极叫控制极G,第四层N型半导体引出的电极叫阴极K,它和二极管一样是一种单方向导电器.晶闸管的特点:是“一触即发.但是,如果阳极或控制极外加的是反向电压,晶闸管就不能导通。控制极的作用是通过外加正向触发脉冲使晶闸管导通,却不能使它关断。那么,用什么方法才能使导通的晶闸管关断呢?使导通

33、的晶闸管关断,可以断开阳极电源或使阳极电流小于维持导通的最小值(称为维持电流)。如果晶闸管阳极和阴极之间外加的是交流电压或脉动直流电压,那么,在电压过零时,晶闸管会自行关断.该控制部分的原理框图如图3.5:单稳态触发器比较器变压器220伏交流电单片机触发脉冲加热丝双向可控硅光耦及驱动同步 图 3.5 温度控制原理框图8031对温度的控制是通过可控硅调功电路实现的,双向可控硅观和加热丝串接在交流220V、50HZ交流市电回路中。在给定的周期T内,8031只要改变可控硅管的接通时间便可改变加热丝功率,以达到调解温度的目的。可控硅在给定周期T内具有不同接通时间的情况.显然可控硅在给定周期T的100%

34、时间内接通时的功率最大。可控硅接通时间可以通过可控硅控制极上的触发脉冲控制。该触发脉冲由8031用软件在P1。3引脚上产生,受过零脉冲同步后经光耦管和驱动器输出送到可控硅的控制级上。过零同步脉冲是一种50HZ交流电压过零时刻的脉冲,可使可控硅在交流电压正弦波过零时刻触发导通。过零同步脉冲由过零触发脉冲电路产生,图中电压比较器LM311用于把50HZ正弦交流电压变成方波。方波的正边沿和负边沿分别作为两个单稳态触发器的输入触发信号,单稳态触发器输出的两个窄脉冲经二极管或门混合后就可得到对应于交流200V市电的过零同步脉冲。此脉冲一方面作为可控硅的触发同步脉冲加到温度控制电路,另一方面还作为计数器脉

35、冲加到8031的T0,T1端.光电耦合器,是近几年发展起来的一种半导体光电器件,把电子信号转换成为光学信号,然后又回复电子信号的半导体器件。由于它具有体积小、寿命长、抗干扰能力强、工作温度宽及无触点输入与输出及在电气上完全隔离等特点,被广泛地应用在电子技术领域及工业自动控制领域中,它可以代替继电器、变压器、斩波器等,而用于隔离电路、开关电路、数模转换、逻辑电路、过流保护、长线传输、高压控制及电平匹配等。具体接法如图3。6 图 3.6 温度控制电路4 温度控制系统的软件设计4。1 主程序设计及中断服务程序设计4.1.1温度控制主程序流程简图温度控制程序的设计应考虑如下问题:1 炉温采样,数字滤波

36、程序2 键盘扫描,键码识别和温度显示程序3 温度标度转换程序4 PID计算程序(双字节加法程序DSUM,双字求补程序CPL1,双字节带符号乘法程序MULT1)为简化起见,本设计思想只给出有关8031本身的初始化,8155初始化,标志、暂存单元和显示缓冲单元区清零、T0初始化,断开CPU中断、温度显示和键盘扫描等程序,详细见附录源程序清单,程序框图如图4。1所示. 开 始8031系统初始化输入被控参数8155初始化键盘显示器监控程序运 行 吗?N开中断Y 图4.1 主程序流程简图 在主程序设计中,由于T0被设定为计数器方式2,初值为06H,故它的溢出中断时间为250个过零同步触发脉冲。为了保证系

37、统正常工作,T1中断服务程序的执行时间必须满足T0的这一时间要求,因为T1的中断是嵌套在T0中断之后的.4.1。2 中断服务程序设计因为本设计中T1的中断是嵌套在T0中断之后的,而T0中断是温度控制系统的主程序,用于启动A/D转换、读入采集数据、数字滤波、越限温度报警和越限处理、PID计算输出可控硅的同步触发脉冲等.P1.3引脚上输出的该同步触发脉冲宽度由T1计数器的溢出中断控制,8031 利用等待T1溢出中断的时间完成把本次采样值转换成显示值放入显示缓冲区和调用温度显示程序。8031从T1中断服务程序返回后便可恢复现场和返回主程序,以待下次T0中断。 在T0中断服务程序中,还需要用到一系列程

38、序,例如:采样温度子程序、数字滤波子程序、越限处理程序、PID计算程序、标度转换程序和温度显示程序。PID计算程序中,也需要用到双字节加法程序DSUM,双字求补程序CPL1,双字节带符号乘法程序MULT1。T1中断服务程序流程图如图4。2 ,T2中断程序流程图如图4.3。 T1中断程序清标志位D5H停止输出返回图4。2 T1中断程序流程图保护现场采样炉温数字滤波上限? 上限处理清本次越限标志恢复现场返回上限? 清上次越限标志下限? 下限? 上次越限? T1中断完? YNY置本次越限标志计算PIDYY取最大PID值输出下限报警求 补求 补从P1.3输出T1初始化温度标度转换越限计数器+1越限N次

39、? 温度显示上限报警清越限标志恢复现场返回图4.3 T0中断服务程序流程图4.2 温度控制程序子程序4.2.1 键盘扫描和温度显示程序设计1 为了简化电路,降低成本,将所有的段选线并联在一起,由一个8位I/O口控制,而选通断采用分时选通,LED显示器工作于共阴极动态显示,逐位轮流点亮各个LED,每一位保持1ms,在10ms-20ms内再一次点亮重复不止,这样利用人的视觉暂留,好像6位LED同时点亮了,显示子程序流程图如图4.4.DIS指向显示缓冲区末址7EH先点亮最右边的LED送位控制信号查表取字形码送出一位显示延时1ms指向下一格缓冲单元R0-1最左边一位显示吗?位控制信号左移一位结束YNL

40、P0 图4.4 显示程序流程2 本设计采用行列式矩阵键盘,单片机对它的控制采用程序扫描即中断查询方式,A口为选通口,B口为显示口,C口为查询输入口.键盘扫描子程序功能如下:(1)判断键盘上有无键按下,方法为:PA口输出全扫描字00H,读PC口状态,若PC0PC1口全为1,则键盘无键按下,若不全为1则有键按下。(2)去键的机械抖动影响:在判断有键按下后,软件延时一断时间(5ms10ms)后再判断键盘状态,如果仍为有键按下状态,则认为确实有键被按下;否则,按照键抖动处理。(3)判别闭合键的键号:对键盘的列线进行扫描,扫描口为PA0PA7,依次输出扫描字为FEH,FDH,FBH,F8H,EFH,DF

41、H,BFH,7FH,读出PC口的状态,若全为1则列线输出为0的 这一列上没有键闭合;否则,这一列有键闭合.闭合键的键号等于处于低电平的列号加上低电平的行的首键号,例如:PA口的输出为11111101,读出PC1PC0为01,则1行1列的键闭合,(4)CPU对键的一次闭合仅作一次处理,采用的方法是等待键释放后再将键号送入累加器A中.键盘扫描子程序流程图如图4.5调用子程序延迟12ms开始有键闭合否?有键闭合否?闭合键释放?判断闭合键键号栈键入键号A返回YYYNNN 图4.5 键盘扫描子程序流程图 4.2.2 炉温采样、数字滤波程序设计采样子程序SAMP:流程图如图4。6采样值起始地址送R0采样次

42、数送R2选通IN0启动AD574延时A/D完成?所有采样结束返回YNN 图4.6 采样子程序流程图一般微机应用系统前向通道中,输入信号均含有个中噪音和干扰,它们来自被测信号源、传感器、外界干扰。为了进行准确的测量和控制,必须消除被测信号中的噪音和干扰,噪音有两大类:一类为周期性的,另一类为不规则随机的 .前者的典型代表为50HZ的工作干扰.对于这类信号要采用硬件滤波电路能有效地消除影响。后者为随机信号,可采用数字滤波方法予于消除.所谓数字滤波,就是通过程序计算或判断来减少干扰在信号中的比重,故实际上它是一中程序滤波。经常采用的是中值滤波、去极值法可对采样的信号进行数字滤波,以消除常态干扰。数字滤波子程序FILTER:用滤波来控制对现场的采样值的干扰。数字滤波程序的算法很多,现以中值滤波为例作说明。中值滤波原理得很简单,只需对2CH 、2DH 2EH中三次采样值进行比较,取中间值存放到2AH单元内,以作为温度标度转换时使用。图4.7为数字滤波程序流程图.(2CH)送A(2CH)(2DH)?(2CH)(2DH)?(2EH)(2CH)?(2DH)(2EH)?(2D

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服