文档库 最新最全的文档下载
当前位置:文档库 › 生产过程自动化技术毕业论文

生产过程自动化技术毕业论文

生产过程自动化技术毕业论文加热炉温度控制系统设计

专业:生产过程自动化技术

I

摘要

随着我国国民经济的快速发展,加热炉的使用范围越来越广泛。而加热炉温度控制是工业生产过程中经常遇到的过程控制,有些工艺过程对其温度的控制效果直接影响这场品的质量和产量。

本设计介绍的单片机温度自动控制系统的主要内容包括:系统方案、元器件选择、系统理论分析、硬件设计、软件设计、系统调试及主要技术性能参数。

该系统对温度进行了实时采集与检测,系统主要以AT89C51单片机为核心,由LED显示电路,键盘输入电路,温度检测电路,模/数转换电路,过零检测电路,报警与指示电路,光电隔离与功率放大电路等构成。用AT89C51单片机设计的温度检测电路是本次设计的主要内容,是整个单片机温度控制系统设计中不可缺少的一部分,采用单片机进行温度控制不仅具有控制方便、简单和灵活性大等优点,而且还可以大幅度提高温度控制的技术指标,从而大大的提高了产品的质量和数量。

本文主要从硬件和软件两方面介绍了如何运用AT89C51单片机设计加热炉的温度控制系统,说明了怎么实现对加热炉温度的控制,并对硬件原理图和程序流程图作了简洁的描述。还介绍了在加热炉温度控制系统的软硬件设计中的一些主要技术关键环节。

关键词:单片机;温度传感器;AT89C51;温度控制

II

Abstract

With the rapid development of Chinese national economy, the scope of application of heating furnace more and more widely. And heating furnace temperature control is in the process of industrial production often met in process control, and some of the temperature of a process control has a direct effect on the quality of products and production.

Some important techniques in a design scheme of the hardware and the software of the temperature control by single-chip microcomputer are introduced. The system mostly takes AT89C51 single-chip microcomputer as core, it is structured by temperature testing circuit, A/D switch circuit, zero passage testing circuit, warning and indication circuit, optical-electrical isolation and power amplifier circuit and so on.

The main content of this design is temperature testing circuit that uses AT89C51 single-chip microcomputer .It is a part of the whole design that cannot be lacked. The system is used to collect and control temperature in real time. The temperature automatic control system based on single-chip microcomputer is described in the article including system scheme,parts of an apparatus choice, theoretical analysis,the design of hardware and software, system testing,and the main technical performance parameters.

The design of single-chip’s temperature control system is introduced from hardware and software, and simply explains how to actualize the temperature control. The hardware principle and software case fig are described.

III

KeyWords:single-chip Microcomputer;temperature sensor;AT89C51;

temperature collecting temperature controlling

目录

摘要 ................................................................... II Abstract .................................................................. III 目录 ................................................................... IV 第1章引言 .. (1)

第2章硬件系统 (2)

2.1 系统结构 (2)

2.2 温度采集 (3)

2.2.1 传感器介绍 (3)

2.2.2 温度采集接口电路 (3)

2.3 A/D模数转换电路 (4)

2.3.1 A/D介绍 (4)

2.3.2 8位ADC0809并行的扩展 (5)

2.4 控制器单片机介绍 (9)

2.5 显示器 (12)

2.5.1 LED显示器工作原理 (12)

2.5.2 显示器接口电路 (13)

2.5 键盘 (14)

2.5.1 键盘的分类 (14)

2.5.2键盘的控制方式 (15)

2.5.3 键盘信号I/O接口电路 (15)

2.6 指示电路 (16)

2.6.1指示灯信号功能原理介绍 (16)

2.6.2 指示接口电路 (16)

2.6.3控制面板的功能及介绍 (17)

2.7 驱动电路 (17)

第3章软件系统 (20)

3.1 软件设计概述 (20)

3.2 程序总体设计 (20)

3.3 系统资源分配 (21)

3.4 系统程序 (22)

3.4.1 系统主程序 (22)

3.4.2 按键处理子程序 (24)

IV

3.4.3 数字滤波 (25)

3.4.4 标度变换 (26)

3.4.5 定时中断子程序 (27)

3.5 PID算法 (28)

3.6 程序代码 (32)

第四章抗干扰措施 (44)

4.1 看门狗 (44)

4.1.1 “看门狗”芯片选择 (44)

4.1.2 看门狗连接口电路 (45)

第5章系统调试 (47)

第6章结论 (48)

参考文献 (49)

致谢 (50)

附录1 (51)

附录2 (52)

V

第1章引言

电加热炉随着科学技术的发展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛的应用,并且在国民经济中占有举足轻重的地位。对于这样一个具有非线性、大滞后性、大惯性、时变性、升温单向性等特点,很难用数学方法建立精确的数学模型,因此用传统的控制理论很难达到良好的控制效果。所以我们要开发一种新的控制系统,不用建立数学模型就能对被测对象进行良好的控制。

近年来,由于单片机技术的运用与发展以及各种先进控制理论的形成,为我们开拓新的控制技术提供了条件。现在很多控制系统的核心都是单片机,因为单片机的体积小、价格低廉、可靠性高,可用其构成计算机控制系统中的智能控制单元, 受到广大工程技术人员的重视。

因此,加热炉的温度控制系统以单片机为核心,运用先进的控制算法如:PID控制算法,就可以省去建立繁琐的数学模型,而且控制系统更加稳定与精确。本次设计的加热炉温度控制系统正是以单片机为核心,运用PID控制算法进行控制。

其中,PID是比例(P)、积分(I)和微分(D)3个控制作用的组合。它的控制过程为:将被测参数即温度值,由传感器变换成统一的标准信号送入调节器。在调节器中,与给定值进行比较,然后把比较出的差值经PID运算后送到执行机构,改变进给量,以达到调节的目的。这种控制算法的特点为:(1)一机多用。由于计算机运行速度快,被控对象变化一般比较慢,因此,用一台计算机可以控制几个到几十个回路,进而大大的节省设备费用。

(2)控制算法灵活。使用计算机不仅能实现经典的PID控制,而且还可以采用直接数字控制。

(3)可靠性高。由于计算机控制算法是用软件编写的一段程序,因此比硬件组成的调节器具有更高的可靠性,且系统维护简单。

(4)可改变调节品质,提高产品的产量和质量。

(5)生产安全,可改善工人劳动条件。

本系统的设计依据实际生产需要,具有很高的实际应用价值,且系统结构简单,能够进行大批量生产。

1

2

第2章 硬件系统

2.1 系统结构

该系统以单片机AT89C51为CPU 微处理器核心芯片,由温度传感器、运算放大器、A/D 转换器、输入光电隔离、驱动电路、键盘、LED 显示电路、断电保护电路共同组成。系统以控制加热炉温度为控制对象,并以PT100热电阻为温度检测元件,通过检测元件检测温度信号后,再将检测温度信号通过运算放大芯片将温度检测信号放大,再经过A/D 转换芯片将放大后的模拟温度信号转换为机器可识别的数字信号,再经过核心芯片AT89C51处理后,将温度信号通过驱动器、LED 数码管显示器温度值,同时通过控制通道将处理数据送发输入光电隔离之后再驱动电路,通过输入光电信号控制光电隔离、驱动电路以完成对加热炉的加热部件的通断来控制加热炉的温度。另外本系统能附加的断掉保护电路,以保护在断电、死机等情况下系统快速恢复,以此来完成整个加热炉温度系统的控制。加热炉温度控制系统框如图2-1所示。

设备 驱动电路

断电保护

A/D 转换 放大电路 温

器 直流稳压电源

键盘

AT89C51 单片机 8155 芯片 LED 图2-1 加热炉温度控制系统框图

2.2 温度采集

2.2.1 传感器介绍

温度是一个基本的物理量,自然界中的一切过程无不与温度密切相关。温度传感器是最早开发,应用最广的一类传感器。温度传感器主要有四种类型:热电偶、热敏电阻、电阻温度检测器(RTD)和IC温度传感器。IC温度传感器又包括模拟输出和温度输出两种类型。

在一般的工业控制中,热电阻应用比较广泛,他的电阻值是随着温度的变化而变化的,比如,用线性比较好的铂丝、铜丝做的电阻。工业热电阻一般采用Pt10、Pt100、Pt1000、Cu50、Cu100。铂热电阻的测温的范围一般为-200~800℃,铜电阻为-40~140℃[1]。

在该控制系统中,温度传感器的主要作用是监测烧水炉内部温度及其变化情况。基于以上分析选用铂电阻Pt100热电阻作为温度传感器。Pt100的电阻值随着温度的变化而变化,并具有良好的重现性和稳定性。Pt100温度传感器属于正电阻系数:其电阻和温度变化关系如下:R=R o(1+αT)。其中α=0.00392,R o 为100Ω,T为摄氏温度。Pt100在-200℃~+850℃内比热电偶更精确,线性度更佳,两端产生的电压降远远大于热电偶的输出,且不需要冷端补偿。另外,在该系统中应用Pt100还应该注意以下两个问题:

(1)在电流激励Pt100时,其允许流过的电流值要求小于5mA,否则会造成Pt100自然而影响其测量的准确度。

(2)Pt100的接入有两线制、三线制和四线制。其中,两线制时传感器电阻值与连线导线电阻值共同构成总的电阻值,这样会使测量的误差较大。三线制应用范围较广,其要求三根引线截面积和长度均相同,引线电阻产生的影响才能相互抵消。四线制一般应用在测量范围较高且温度值变化范围较小的场合。基于以上分析,烤炉到该系统要求温度传感器的测量范围较大且控制要求的精度较高,所以,温度传感器的接入方式选为二线制。

2.2.2 温度采集接口电路

温度信号通过Pt100采集来的电流信号经过,经过电阻转换为电压信号,再经过两级电压信号的放大使所采集的信号达到相应适合的电压值A/D转换器。温度接口电路如图2-2所示。

3

图2-2 温度采集接口电路

2.3 A/D模数转换电路

2.3.1 A/D介绍

A/D转换器是一种能把输入的模拟电压或电流变成与它成正比的数字量。即能把被控对象的各种模拟信息变成计算机可以识别的数字信息。A/D转换器的种类很多,但是从原理上可分为四种:计数式A/D转换器,双积分式A/D转换器,逐次逼近式转换器和并行A/D转换器[2]。

计数器式A/D转换器结构很简单,但是转换速度很缓慢,所以很少采用。双积分是的抗干扰能力非常强,转换精度也很高,但速度不够理想,常用数字式测量仪表中。计算机中广泛采用逐次逼近式A/D转换器作为接口电路,它的结构不太复杂,转换速度也高。并行A/D转换速度最快,但因结构复杂而造价较高,故只用在于那些转换速度极高的场合。所以,本系统采用并行A/D转换(ADC0809芯片)扩展。

单片机并行扩展的方式主要有三种。

(1)延时法单片机启动A/D后,延时,在读到正确的A/D转换结果,这种方法连线编程简单,但不适合高速采集。

(2)查询法转换完成的信号EOC必须接到AT89C51的一条I/O线上。单片机

启动后,不断检测EOC,若EOC=0,则转换没有结束,则继续检测EOC,直到

4

EOC=1时,A/D已经结束,单片机读取A/D转换结果,这种方法要占CPU,但程序简单。

(3)中断法转换完成信号EOC必须经过非门接到AT89C51的中断请求输入线INT0或INT1上,AT89C51的中断触发方式为下降沿触发。单片机启动A/D转换后可以做其他工作,当A/D转换结束时,EOC由0→1,经过非门传到INT端,AT89C51收到中请求信号,进入中断服务程序,在中断服务程序中单片机读取A/D转换结果。

2.3.2 8位ADC0809并行的扩展

ADC0809是大规模集成芯片的一种由单一+5V电源供电,采用逐次逼近式原理。输出的数字信号有三态缓冲器,可直接连到数据总线,它也是一种能够对0~+8V,8路输入模拟电压进行分时转换的通用型可编程模数转换器。由于价格适中,与单片机接口、软件操作均比较简单,目前在8位单片机系统中有广泛应用。

(1) ADC0809的主要特性和指标

1)分辨率:8位。

2)转换时间:取决于芯片时钟频率,如CLK=500kHz时,T CONV=128μs。

3)单一电源:+5V。

4)模拟输入电压范围:单极性0~5V。

5)具有可控三态输出缓存器。

6)启动转换控制为脉冲式(正脉冲),上升沿使所有内部寄存器清零,下降沿使A/D转换开始。

7)使用时不需进行零点和满刻度调节。

8)功耗为:15mW

(2) 内部结构和外部引脚

ADC0809的引脚分布如图2-3所示。各引脚定义分述如下:

5

6

图2-3 ADC0809内部结构框图

1) IN 0~IN 7—8路模拟输入,通过3根地址译码线ADD A 、ADD B 、ADD C 来选通一路。

2) D 7~D 0—A/D 转换后的数据输出端,为三态可控输出,故可直接和微处理器数据线连接。8位排列顺序是D 7为最高位,D 0为最低位。

3) ADD A 、ADD B 、ADD C —模拟通道选择地址信号,ADD A 为低位,ADD C 为高位。地址信号与选中通道对应关系如表2-1所示。

表2-1 地址信号与选中通道的关系

ADDC ADDB ADDA 被选模拟电压路数

0 0 0 IN0

0 0 1 IN1

0 1 0 IN2

0 1 1 IN3

1 0 0 IN4

1 0 1 IN5

1 1 0 IN6 1 1 1 IN7

4)V R(+)、V R(-)—正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压。在单极性输入时,V R(+)=5V,V R(-)=0V;双极性输入时,V R(+)、V R(-)分别接正、负极性的参考电压。

5)ALE—地址锁存允许信号,高电平有效。当此信号有效时,A、B、C 三位地址信号被锁存,译码选通对应模拟通道。在使用时,该信号常和START 信号连在一起,以便同时锁存通道地址和启动A/D转换。

6)START—A/D转换启动信号,正脉冲有效。加于该端的脉冲的上升沿使逐次逼近寄存器清零,下降沿开始A/D转换。如正在进行转换时又接到新的启动脉冲,则原来的转换进程被中止,重新从头开始转换。

7)EOC—转换结束信号,高电平有效。该信号在A/D转换过程中为低电平,其余时间为高电平。该信号可作为被CPU查询的状态信号,也可作为对CPU 的中断请求信号。在需要对某个模拟量不断采样、转换的情况下,EOC也可作为启动信号反馈接到START端,但在刚加电时需由外电路第一次启动。

8)OE—输出允许信号,高电平有效。当微处理器送出该信号时,ADC0809的输出三态门被打开,使转换结果通过数据总线被读走。在中断工作方式下,该信号往往是CPU发出的中断请求响应信号。

(3) 工作时序与使用说明

ADC 0809的工作时序如图2-5所示。当通道选择地址有效时,ALE信号一出现,地址便马上被锁存,这时转换启动信号紧随ALE之后(或与ALE同时)出现。START的上升沿将逐次逼近寄存器SAR复位,在该上升沿之后的2μs加8个时钟周期内(不定),EOC信号将变低电平,以指示转换操作正在进行中,直到转换完成后EOC再变高电平。微处理器收到变为高电平的EOC信号后,便立即送出OE信号,打开三态门,读取转换结果[3]。

7

8

图2-5 ADC0809工作时序

模拟输入通道的选择可以相对于转换开始操作独立地进行,然而通常是把通道选择和启动转换结合起来完成。这样可以用一条写指令同时选择模拟通道又启动转换。在与微机接口时,输入通道的选择可有两种方法,一种是通过地址总线选择,一种是通过数据总线选择。

如用EOC 信号去产生中断请求,要特别注意EOC 的变低相对于启动信号有2μs+8个时钟周期的延迟,要设法使它不致产生虚假的中断请求。为此,最好利用EOC 上升沿产生中断请求,而不是靠高电平产生中断请求。A/D 接口电路如图2-6所示[4]。

图 2-6 A/D 转换接口电路

9

2.4 控制器单片机介绍

AT89C51单片机内部包含了作为微型计算机所必须的基本功能部件,各种功能相互独立集成在同一块芯片上。AT89C51内部结构如图2-7所示,包含了中央处理器CPU 、存储器、定时器/计数器、I/O 接口器、中断控制系统等。

图2-7 单片机内部结构图

AT89C51主要性能特点[5]:

(1)4k Bytes Flash 片内程序存储器;

(2)128 bytes 的随机存取数据存储器(RAM );

(3)32个外部双向输入/输出(I/O )口;

(4)5个中断优先级2层中断嵌套中断;

(5)6个中断源;

(6)2个16位可编程定时器/计数器;

(7)2个全双工串行通信口;

(8)看门狗(WDT )电路; TXD RXD T 复位

中断

电源 外部定时

元件

中央处理器(CPU )

系统时钟 ROM RAM 并行I/O 接口

串行I/O 接口 定时器/计数器

10

(9)片内振荡器和时钟电路;

(10)与MCS-51兼容;

(11)全静态工作:0Hz-33MHz ;

(12)三级程序存储器保密锁定;

(13)可编程串行通道; (14)低功耗的闲置和掉电模式。

AT89C51引脚分布如图

2-8所示。

图2-8 AT89C51引脚分布

VCC :电源电压输入端。

GND :电源地。

P0口:P0口为一个8位漏级开路双向I/O 口,每个脚可吸收8TTL 门电流。当P1口的管脚第一次写1时,被定义为高阻态输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH 编程时,P0 口作为原码输入口,当FIASH 进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O 口,P1口缓冲器能接收输

出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉电阻的缘故。P3口除了作为普通I/O口,还有第二功能:

P3.0—RXD(串行输入口)

P3.1—TXD(串行输出口)

P3.2—INT0(外部中断0)

P3.3—INT1(外部中断1)

P3.4—T0(T0定时器的外部计数输入)

P3.5—T1(T1定时器的外部计数输入)

P3.6—WR(外部数据存储器的引脚写选通)

P3.7—RD(外部数据存储器的读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。只有读端口时才真正地把外部的数据读入到内部总线。AT89C51的P0、P1、P2、P3口作为输入时都是准双向口。除了

P1口外P0、P2、P3口都还有其他的功能。

RST:复位输入端,高电平有效。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PSEN:地址锁存允许/编程脉冲信号端。当访问外部存储器时,地址锁存

11

允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE 禁止,置位无效。

PSEN:外部程序存储器的选通信号,低电平有效。在由外部程序存储器取指期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

EA/V PP:外部程序存储器访问允许。当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(V PP)。

XTAL1:片内振荡器反相放大器和时钟发生器的输入端。

XTAL2:片内振荡器反相放大器的输出端。

2.5 显示器

2.5.1 LED显示器工作原理

在本控制系统中,LED显示器是输出器件。它是由若干个发光二级管组成的,当发光二级管导通时,相应的一点或一划被点亮。控制不同组合的点亮二极管导通,就能显示各种字符。常用的LED显示器有七段式显示器和“米”子段显示器之分。这种显示器又分为共阳极和共阴极两种。共阴极LED显示器的点亮二极管的阴极连接在一起,通常此共阴极接地。当某个发光二级管的共阳极接通高电平时,发光二级管被点亮,相应的字段被显示。同样LED的共阳极显示器的发光二极管阴极接低电平时,发光二级管被点亮,相应的字段被显示。本系统采用共阳极显示。

显示器的显示有静态显示和动态扫描显示两种方法。所谓静态显示,就是当显示器显示某一字段时,相应的发光二极管被导通或截止。静态显示要求每一个相应的显示字都要占据一个锁存能力的I/O接口用于显示相应的字符代码。

12

单片机只要把将要显示的字形代码送至相应的接口电路,直到显示新数据时,在发送新字形码。静态显示占用单片机CPU资源少,且输出可以直接驱动LED 显示器,并且使LED显示的亮度较高且字符不闪烁。当显示字位数较少时,采用静态显示方法是比较适合的,但是需要显示LED数码管的个数较多,则所需的I/O接口数量也相应的增加,易造成I/O端口的浪费,不利于控制成本。

所谓动态扫描的方法就是利用分时的方法,轮流控制显示器的DPY端,使各个显示器轮流点亮。每位显示LED的时间是极为短暂的(约为1ms),但由于人的视觉暂留现象及点亮二极管的余辉效应,尽管发光二级管并没有同时被点亮,但是扫描的速度足够快,给人的印象是一组稳定的显示数据,不会有闪烁感。显示的亮度与导通电流有关,也与点亮时间和时间间隔比例有关。调整电流和时间参数,可实现亮度较稳定的显示[6]。

2.5.2 显示器接口电路

本系统显示电路接线如图2-9所示。此电路中,8155用于驱动LED的8位显示和扩展I/O接口,8位LED相应的"a"—"g"段连在一起并连接到8155A口,它们的公共端连接8155的C口输出端。这样当某一位LED被选通时通高电平,相应的地址线输出的是低电平,所以这里选用共阴极LED数码管。

图2-9显示接口电路

13

本系统采用6只共阳极的LED数码管显示所采集到的温度值。它的接口电路如图所示。单片机的P0口为数码管的数据位,用于输出显示的温度值,即控制数码管的a~dp端口;P2.4~2.7四个引脚I/O接口用作数码管的片选位来控制数码管的公共极,其中三极管起到的是驱动的作用,增加LED数码管的亮度,便于观察,显示器的显示过程如下:CPU向字段输出口(P0)送出字形码时,所显示器接收到相同的字形码,但是那个显示LED显示器亮,则取决于DPY端而这一段是取决于单片机的P2.4~P2.7的四个接口控制的。动态显示尽管占用CPU较多,但多个LED数码管可以用8个I/O接口,不存在I/O接口浪费现象,可以有效的降低成本。基次考虑,该控制系统采用动态扫描的显示方式[7]。

2.5 键盘

2.5.1 键盘的分类

键盘是一组按键的组合,他十足常用的单片机输入设备。通过键盘输入数据或命令,实现单片机的对话。键盘上的闭合键的识别是由专用的硬件实现的,称谓编码键盘,靠软件实现的称谓非编码键盘。键盘可分为两类:独立连接式和矩阵式。

独立式键盘是最简单的键盘电路,每一个按键独立接入一根数据线,平时所有的数据输入线都被连接成高电平,当任何一个按键被按下,只要用位处理命令即可,这种键盘是结构简单,使用方便,但随着健数的增多,I/O口线也增加。

矩阵式键盘,也即通常所讲的行阵式键盘,有行线和列线组成,按键位于行、列的交叉点上,行列分别连接到按键的开关两端,行间通过上拉电阻连接到高电平。无按键动作时,行线处于高电平状态;有按键按下时,交点的行线和列线会被接通,行线电平状态将由此与行线相连的列电平决定。如果列线电平低,则行线电平低;如果列电平高,则行线电平也为高。这一点是识别矩阵键盘按键是否被按下的关键所在。由于矩阵键盘中行、列线为多键共用,各按键均影响该键所在的行和列的电平,所以必须将行列信号配合起来做适当的处理,才能确定闭合键的所在位置,矩阵式键盘节省了很多I/O接口,适合于按键较多的场合。该控制系统采用独立式8键盘[8]。

14

2.5.2键盘的控制方式

在单片机应用系统设计中,为了节省硬件,通常采用非编码键盘,这种键盘结构中,单片机的控制不外乎有三种控制方式:

(1)程序控制扫描方式。这种方式只有单片机空闲时,才调用键盘子程序,相应键盘的输入请求。

(2)定时扫描方式。即对键盘每隔一定时间对键盘扫描一次,在这种扫描方式中,通常用单片机内部定时器,产生10ms的中断,CPU响应定时中断请求,对键盘进行扫描,以响应键盘的输入要求。对键盘扫描的控制方式主要优点是能及时的响应键盘的命令或数据,便于用户对正在执行的程序进行干预。这种控制方式,不管键盘有无按键闭合,CPU总会关心键盘开关的状态,因为人工键入的速度缓慢,有时操作员对正在运行的系统很少甚至不会干预,所以,大多数情况下,CPU对键盘进行的是空扫描。

(3)中断扫面方式。当键盘上有键闭合时产生中断请求,CPU中断响应,中断服务程序,判断键盘上的闭合键编号,并作相应的处理,CPU对闭合键号的确定,可根据行列线号的状态计算求得,也可根据行列线的状态查遍求得[9]。

2.5.3 键盘信号I/O接口电路

在该控制系统中,键盘是实现初值设定的。共有6个按键,通过8155B口连接到CPU芯片。键盘连接线路见图2-10所示。

图2-10键盘接口电路

15

相关文档
相关文档 最新文档