《基于单片机的电热水壶控制系统毕业设计(论文).doc》由会员分享,可在线阅读,更多相关《基于单片机的电热水壶控制系统毕业设计(论文).doc(35页珍藏版)》请在三一办公上搜索。
1、基于单片机的电热水壶控制系统目 录摘 要 3前 言 5第一章 热水壶控制系统总体概述 61.1 热水壶的工作情况 61.2 MCS-51单片机控制的总体介绍 7第二章 电热水壶控制系统的硬件设计 82.1 温度检测电路和A/D转换器的电路 82.2 单片机8051芯片介绍和主要电路 122.3 8255输出口扩展 172.4 单片机的抗干扰电路 192.5 键盘及显示电路 212.6 加热电路和报警装置 26第三章 单片机的软件设计 283.1 总的程序设计框图 283.2 8255的程序设计 293.3 键盘和显示接口电路程序设计 30结 论 35致 谢 36参考文献 37摘 要本论文设计介
2、绍了MCS-51系列单片机为控制芯片,对电热水壶工作进行控制的方法。通过电加热电路对水进行加热,并对水的温度进行采样,采样信号通过ADC0809将数字量送入单片机系统,经微机处理后,结合键盘控制实现LED显示,并可实现对水的温度的控制和超过水温的报警系统。单片机控制热水壶的硬件构成包括8051芯片、8255芯片、地址锁存器等组成的单片机控制电路、温度检测电路、A/D转换电路、光电隔离电路、键盘及显示电路和温度加热电路。整个系统的关键电路是单片机控制电路,完成信号的输入和输出的转换,即可将温度检测电路采样的输入信号通过A/D转换器ADC0809进行处理加工后输出到显示器进行显示,并可以通过控制器
3、控制温度,同时当水加热超过指定的温度以后,蜂鸣器工作报警。关键字 :单片机;温度控制;控制器。ABSTRACTThe thesis introducts the method of use the series of MCS-51 one-chip computer which is the control chip to control the work of kettle heat with electric energy. Through electric heated circle, the water will be heated, then sample the temperatu
4、re of the water. The sampling signal will set the mimic to the system of single chip computer through ADC0809, after is processed by the computer and controlled by the keyboard, it will be showed by LED monitor, at the same time, the system can control the temperature beyond the setting, the system
5、of alarm will run. The hardware of the one-chip computer controls the thermos which includes 8051 chips, 8255 chips, one-chip computer control circuit that address latch ,etc. make up temperature-measure circuit , circuit is changes by A/D, light-electricity and isolation circuit, keyboard and shows
6、 circuit、temperature heated circuit .The key circuit of the whole system is a control circuit of one-chip computer, finish the input and output of the signal conversion, can measure temperature sampled signal of input circuit which will deal with after processing then set to display and show to go o
7、n to outputting through A/D converter ADC0809, and can control the temperature through the keyboard, after heating and exceeding designated temperature in water, at the same time, the buzzer is sound so as to alarm.Key word: One-chip computer; Temperature control; Controller.前 言Intel公司在MCS-48系列单片微机的
8、基础上,采用HMOS技术,研制出了8位高档的MCS-51系列产品微机。该微机型在性能上有了很大的改进和提高:片内程序存贮器容量扩大了一倍,外部程序存贮器的寻址空间扩大到64K字节。片内数据存贮器扩大了一倍,外部数据存贮器的空间达到64K字节。并行I/O口线增加到32,且可进行位处理。MCS-51设有两个16位的定时器/计数器,且可程序设定多种工作方式。设有一个全双工串行I/O口,可程序设定4种工作方式,设有4个8位的通用工作寄存器区,可适应多级中断和子程序嵌套的情况,这样可避免寄存器内容进行栈保护操作,提高了中断响应速度,加速了子程序的调用,设有两个内部中断源和两个外部中断源,一个串行口中断源
9、,可程序设定中断优先级,堆栈位置可允许设定,深度可在允许范围内选用。MCS-51指令系统增强了加,减,乘,除,比较,堆栈操作,因而运算功能大大加强。所设置的灵活的跳转指令,不仅能充分满足了实际应用的需要,而且可尽量减少程序存贮空间的占用,MCS-51内部设有可直接进行位寻址的存贮器、位处理指令、位处理累加和运算器等,因而为一种功能极强的位处理机。这为控制方面的应用和逻辑运算提供了很大方便。从以上可见,MCS-51系列单片微机具有很强的功能,使用范围广,既可构成功能很强的复杂系统,也可组成较简单的应用系统。目前,单片机在家电,工业生产等领域的应用非常广泛,为了适应不同产品对单片机的不同要求,半导
10、体生产厂家生产出了各种规格的单片机。本文介绍了一种以MCS-51系列单片机为控制芯片,对电热水壶工作进行控制的方法。温度检测电路由热电偶、运算放大器,温度传感器AD590等组成,直接输出电流(1A/K)经运算放大器LM358进行I/V转化后,可得到电压输出,输出电压为100mV/,经A/D转换通道送到微处理器中。A/D转换一般都设置在前向通道中,它将外界输入的模拟信号转换成计算机数据总线能接受的数字量。工程上常用的隔离方法有光电隔离器、变压器、继电器和集成组件等,而光电隔离器有独特优点得到广泛应用。由于该器件是通过电光电这种转换来实现对输出设备进行控制的,彼此之间没有电气连接,因而起到隔离作用
11、,隔离电压与光电隔离器的结构有关。经实际运行表明,该方案安全、可靠,完全能够满足实际需要。1 热水壶控制系统总体概述1.1 热水壶的工作情况对于常规的电热水壶,只要接通电源,就开始加热,直到水沸腾后通过蒸汽来产生声音报警。这种设计有下面几个方面的不足:1. 如水壶中没水,电源误接通时也会一直加热,容易引起事故。2. 当只需要加热到沸点以下某一温度时,不能及时给出声音报警信号。3. 当水加热沸腾后不能自动停止工作。针对以上不足,在本设计方案中,用MC-51单片机作为控制芯片,管理整个电热水壶的工作情况,构成了一个闭环控制系统,而且增加了三个按键和六位数码管显示。它的工作情况和常规的热水壶相比,有
12、下面几个方面的特点:1. 有三个按键,可用来设置希望加热到的温度即报警的温度。上电复位后,设置温度初值为20度,每按一下按键,温度设置值就会增加1度,整个温度设置值在20100度之间循环。2. 这个按键还具有启动电热水壶开始工作的作用。当每次电源接通后,只有按键按下过之后,电热水壶才开始加热,这样,可以防止电源误接通时电热水壶一直加热,引发事故。3. 当加热到设置温度时,单片机会控制停止加热,并通过蜂鸣器给出声音提示。4. 三位数码管在设置温度操作时显示当前设置的温度,另三位数码管其余时间实时显示电热水壶中水的实际温度。1.2 MCS-51单片机控制的总体介绍硬件设计的总电路连接框图如下图:图
13、1-1 硬件设计的总电路连接框图单片机控制热水壶的硬件构成包括8051芯片、8255芯片、地址锁存器等组成的单片机控制电路、温度检测电路、A/D转换电路、光电隔离电路、键盘及显示电路和温度加热电路。整个系统的关键电路是单片机控制电路,是整个控制的核心,完成信号的输入和输出的转换,即可将温度检测电路采样的输入的信号通过A/D转换器ADC0809进行处理加工后输出到显示器进行显示,并可以通过键盘对温度进行控制,如此同时当水加热超过指定的温度以后,蜂鸣器工作报警。并对其中部分电路编制子程序,以及相应的软件设计。2 电热水壶控制系统的硬件设计2.1 温度检测电路和A/D转换器的电路2.1.1 AD59
14、0温度传感器的概念AD590是一种二端式的集成温度传感器。图2-1-1 AD590引脚图其主要技术参数有:1. 测温范围为-55+150。2. 工作电压为+4+30V,由于AD590是一种恒流源形式的温度传感器,只需在其二端加上一定工作电压则其输出电流随温度变化而变化,其线性电流输出为1A/。K,即温度每变化1,其输出电流变化1A;它以热力学温标零点作为零输出点,因此在25时,其输出电流为298.2A。3. 精度:经过激光平衡调整,AD590的校准精度可达+和-0.5,全温区范围线性度可达+和-0.3(AD590M)当其在10温区范围内校正后测量,精度可达+和-0.1,在全温区范围内(-55+
15、145)使用,精度也可高达+、-1。由于AD590是一种电流型的温度传感器,因此具有较强的抗干扰能力,适用于计算机进行远距离温度测量和控制,远距离信号传递时,可采用一般的双绞线来完成,其电阻比较大,因此不需要精密电源对其供电,长导线上的压降一般不影响测量精度;不需要温度补偿和专门的线性电路。2.1.2 温度检测电路图2-1-2 电源转换电路在介绍温度检测电路之前,首先要说明一下电源转换电路。电压经过四个二极管两两导通整流滤波后,再经过电压转换芯片7805就可以将原来交流220V的电压转换成直流电压为+5V,即可以得到报警电路和温度检测电路所需要的电压值。温度检测电路由温度传感器AD590等组成
16、,直接输出电流1A/K,输出电压为100mV/,经运算放大器LM358进行I/V转化后,再经A/D转换通道送到微处理器中,R6、R5、R2用于相互配合调节温度测量的满刻度值。图2-1-3温度检测电路当传感器AD590所处温区发生1的温度变化时,流过其所在回路的电流即产生1A的变化,则其输出电压的变化为: V0=1A/*100K=100mV/AD590的输出电流值说明如下:其输出电流是以绝对温度零度(-273)为基准,每增加1,它会增加1A输出电流,因此在室温25时,其输出电流Io=(273+25)=298A。Vo的值为Io乘上10K,以室温25而言,输出值为2.98V(10K298A)。量测V
17、o时,不可分出任何电流,否则量测值会不准。AD590的输出电流I=(273+T)A(T为摄氏温度),因此量测的电压V为(273+T)A 10K= (2.73+T/100)V。8在本论文中通过温度集成器AD590对外部-55+150范围内的温度进行采样,在AD590的两端分别接地和接电源,得到一定的压差,因此会得到相应的工作电压,其输出电流会随温度变化而变化。电流1A/K其输出电压为100mV/,经运算放大器LM358进行I/V转化后,再送入A/D转换电路中进行模数转换,经过微处理器处理即可送到LED显示器显示温度。2.1.3 A/D转换器电路原理和电路接口图A/D转换一般都设置在前向通道中,它
18、将外界输入的模拟信号转换成计算机数据总线能接受的数字量。在前向通道必须配置A/D转换电路时,首先考虑的是能否选用带有A/D的单片机,本论文中无法选择单片机片内有A/D部件,则必须在前向通道中配置A/D接口。要选择好的A/D转换器芯片,选择A/D转换芯片的原则从转换精度、转换速度、模拟信号输入通道数以及成本、供货来源等全面考虑。选择不同的A/D转换芯片,与单片机的接口电路要求不同,必须依芯片对控制电路的要求设置,接口电路必须满足这些要求。一般来说,A/D转换芯片输入的模拟电压都有规定的要求,如0+5V,0+10V,0+2V等,因此要考虑到传感器输出信号与之匹配。本论文中采用逐次逼近法A/D转换器
19、电路原理。其主要原理为:将一待转换的模拟输入信号U1n与一个推测信号Ur相比较,根据推测信号大于还是小于输入信号来决定增大还是减少该推测信号相等时,向D/A转换器输入的数字就是对应模拟输入量的数字量。其“推测”值的算法如下:使二位进制计数器中(输出锁存器)的每一位从最高位起依次置1,每接一位时,都要进行测试。若模拟输入信号U1n小于推测信号U1,则比较器输出为零,并使该位清零;若模拟输入信号U1n大于推测信号U1,比较器输出为1,并使该位保持位1。无论哪种情况,均应继续比较下一位,直到最末位为止。此时,D/A转换器的数字输入即为对应模拟输入信号的数字量,将此数字输入就完成了A/D转换过程。1A
20、/D转换器的引脚说明:ADC0809是CMOS集成电路8位单片A/D转换器。双列直插28引脚封装。片内有8路模拟开关、模拟开关的地址锁存与译码电路、比较器 、256R电阻T型网络、树状电子开关、逐次逼近寄存器SAR、三态输出锁存,缓冲器、控制与时序电路等。ADC0809引脚功能说明如下:IN0IN7:8路输入通道的模拟量输入端。A、B、C口:8路模拟开关的三位地址输入端,用来选择8路模拟输入的一路进行A/D转换。 ALE: 地址锁存允许。ALE有效将三位地址A、B、C锁存到地址锁存器中。START:为启动控制输入端。它与ALE可以接在一起,当通过程序加上一个正脉冲便立即开始A/D转换。EOC:
21、 转换结束信号输出端,高电平有效。在此输出端供给一个有效信号则打开三态输出锁存缓冲器,把转换后的结果送至外部数据线。COLCK:时钟输入端。CLOCK为600kHZ时,转换时间位100us。D0D7:8位数字输出段。Vcc: 电源输入端。GND:接地端。2A/D转换的连接电路及应用图2-1-4 A/D转换的连接电路由图2-1-4可以看出ADC0809时钟CLK由8051ALE信号提供,ALE信号频率为f/6。用地址线低8位A0、A1、A2(P0.0P0.2)接0809的A、B、C三端用来对8路模拟通道进行选择。EOC经非门与8051 相接,0809与8051采用中断方式联络,外部中断1服务子程
22、序读A/D转换结果,并启动下一次转换。0809启动条件为START= ,因此启动时,应用写指令(使WR=1),并且要保证地址线P2.6=0,其端口地址为DFFFH。ADC0809转换器将信号进行模数转换,再将数字信号传入8051进行微处理,通过LED显示温度。在由于A/D0809具有锁存的TTL三态输出,它的八条数据线和8051的八条数据线相连,采用线性选址法,其口地址为DFFFH。通道地址A,B,C由数据总线DB0,DB2,DB2提供。A,B,C地址线上的信息由ALE上升沿打入地址锁存器74LS373。2.2 单片机8051芯片介绍和主要电路2.2.1 MCS-51单片微机8051内部部件和
23、接口电路MCS-5单片微机8051内部包含如下部件:8位CPU振荡器和时钟电路4K/8K 字节的程序存贮器。128/256字节的数据存贮器。可寻址外部程序存贮器和数据存贮器,各64K字节。二十多个特殊功能寄存器。32线并行I/O口。1个全双工串行I/O口。2/3个16位定时器/计数器。5/6个中断源,2个优先级。具有位寻址功能,有较强的布尔处理能力。图2-2-1 8051的引脚图图2-2-2 单片机的片外总线结构图由图2-2-2可以看到,单片机的引脚除了电源、复位、时钟接入、用户I/O口外,其余管脚都是为了实现系统扩展而设置的。这些引脚构成了MCS-51单片机片外三总线结构:1地址总线(AB)
24、:地址总线宽度为16位,因此,其外部存储器直接寻址为64K字节,16位地址总线由P0口经地址锁存器提供低8位地址(A0A7);P0口直接提供高8位地址(A8A15)。2数据总线(DB):数据总线宽度为8位,由P0口提供。控制总线(CB):由四根独立控制线RESET、EA、ALE、组成。2.2.2 振荡电路和时钟电路振荡电路和单片机内部的时钟电路一起构成了单片机的时钟方式,根据硬件不同,连接方式分为内部时钟方式和外部时钟方式。MCS-51单片机芯片内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体或陶瓷谐振器一
25、起构成一个自激振荡器。这是MCS-51单片机的内部时钟方式。本论文中重点讲到的是外部时钟方式。图2-2-3外部时钟方式电路图由上面的图我们可以看到引脚XTAL2就是内部时钟发生器的输入端。因此,只需将外部振荡器的信号接至引脚XTAL2,而把内部反相放大器的输入端XTAL1引脚接地。通常接的外部信号一般为频率低于12MHZ的方波信号。另外,由于XTAL2端的逻辑电平不是TTL的,故还需要接一个上拉电阻。2.2.3 单片机的复位电路1复位电路的复位类型通常单片机复位操作有上电复位、信号复位、运行监视复位。在本论文里主要用到的是上电复位和开关复位的组合。2主要复位电路(1)上电复位和开关复位组合电路
26、:在单片机系统设计过程中,经常会使用上电复位和手动复位,最常用的上电复位和开关复位组合电路为:图2-2-4上电复位和开关复位组合电路在这两种简单复位电路中,干扰容易串人复位端,在大多数情况下,不会造成单片机错误复位,但会引起内部某些寄存器错误复位。这时可在复位引脚上接一个去耦电容。如果应用现场干扰严重,或整个系统干扰严重,引起单片机复位,可采用屏蔽的办法解决,如加屏蔽网或移动位置等。(2)在实际应用系统中,为了保证复位电路可靠地工作,常将RC电路接施密特电路后再接入单片机复位端,特别适合于应用系统现场干扰大,电压波动大的工作环境。10图2-2-5抗干扰上电复位2.2.4 中断优先级8051单片
27、机提供了5个中断源,其中两个为中断源,由INT0、INT1输入;I/O设置中断请求信号,或掉电故障等异常事件中断请求信号都可作为外部中断源连INT0、INT1。两个为片内的定时器/计数器溢出时产生的中断请求(用TF0、TF1做标志);另外一个为片内串行口产生的中断请求(TI或RI)。这些中断请求源分别由MCS-51的特殊功能寄存器TCON和SCON的相应位锁存。MCS-51的中断具有两级优先级,每一个中断源都可以通过对中断优先级寄存器IP中的相应位置或清0,编程为两级中断中的任一级高优先级和低优先级,置1为高优先级,清0为低优先级。低优先级可以被高优先级所中断,但不能被另一个低优先级中断所中断
28、。高优先级中断不能被任何中断所中断。为了实现这些规定,中断系统中设有两个不可寻址的优先级状态触发器,其中一个用来指出正在服务于高优先级中断,并阻止其他所有中断的响应。另一个则指出正在服务于 低优先级中断,并阻止除高优先级中断以外的其他中断的响应。当同时接受到几个优先级相同的中断请求时,则由内部查询次序来确定响应哪一个中断请求。因此,在每一个中断级中又有第二类查询次序的中断优先级结构。处理器响应中断时,先置相应的优先级状态触发器(该触发器指出CPU开始处理的中断优先级别)然后执行一个硬件子程序的调用使控制转移查询次序如下:1IE0 (外中断INT0) 最高优先级 0003H2TF0 (定时器0溢
29、出中断) 000BH3IE 1 (外中断INT1) 0013H4TF1 (定时器1溢出中断) 001BH5RI+TI (串行口中断) 0023H6TF2+EXF2 (定时器2溢出中断) 最低优先级 002BH这种“同级内的优先级”,仅用来解决相同优先级中断源同时请求中断的情况,而不能中断正在执行的同优先级的中断。2.2.5 74LS373地址锁存器芯片介绍由于MCS-51单片机的P0口是分时复用的地址/数据总线,因此在进行程序存储器扩展时,必须利用地址锁存器将地址信号从地址/数据总线中分离开来。通常,地址锁存器可使用带三态缓冲输出的八D锁存器74LS373或8282,也可以使用带清除端的八D锁
30、存器74LS273,地址锁存信号为ALE。但用的最多的是74LS373。图2-2-6 74LS373的结构图当三态门的使能信号线OE为低电平时,三态门处于导通状态,允许1Q8Q输出到OUT1OUT8,当OE端为高电平时,输出三态门断开,输出线OUT1OUT8处于浮空状态.G称为数据打入线,当74LS373用作地址锁存器时,首先应使三态门的使能信号OE为低电平,这时,当G输入端为高电平时,锁存器输出(1Q8Q)状态和输入端(1D8D)状态相同,当G端从高电平返回到低电平(下降沿)时,输入端(1D8D)的数据锁入1Q8Q的8位锁存器中。当用74LS373作为地址锁存器时,它们的锁存控制端G和STB
31、可直接与单片机的锁存控制信号端ALE相连,在ALE下降沿进行地址锁存。2.3 8255输出口扩展2.3.1 8255的引脚介绍8255是可编程RAM/IO扩展器,片内有256*8位静态RAM,2个8位和1个6位可编程并行I/O接口,以及1个14位可编程定时器/计数器。还有地址锁存器和多路转换的地址/数据总线,可直接与MCS-51单片微机相连接。因此还是MCS-51应用系统最适用的扩展器件。图2-3-1 8255的引脚图AD0AD7:三态地址/数据总线。连接CPU的底8位地址/数据总线。IO/M:RAM/IO口选择信号输入端。CS:片选信号输入端,8255为CS,低电平有效。RD:读选通信号输入
32、端。低电平有效。WR:写选通信号输入段。低电平有效。RESET:复位信号输入段。高电平有效,并初始化3个I/O口为输入方式。PA0PA7:A口的I/O线、I/O方向由命令字编程设定。PB0PB7:B口的I/O线、I/O方向由命令字编程设定。PC0PC7:C口的I/O线,或A口和B口的状态控制信号线。由命令字编程设定。Vcc:+5V电源线。Vss: 接地线。8255片内256*8位静态RAM,在速度上与MCS-51完全匹配。当IO/M=0时,CPU对8255的RAM进行读写,寻址范围为00H0FFH。2.3.2 8255与8051的外部接口电路图2-3-2 8255与8051的外部接口电路由上图
33、可以看出8051通过地址锁存器与8255相连, 8255的片选信号CS及口地址选择线A0、A1分别由8051的P0.7、P0.0、P0.1经地址锁存器74LS373后提供。故8255的A、B、C口及控制口地址分别为FF7CH、FF7DH、FF7EH、FF7FH。8255的复位端与8051的复位端相连,都接到8051的复位电路上。必须根据外围设备的类型选择8255的操作方式,并在初始化程序中把相应控制字写入操作口。8255的编程如下:各端口地址是:A口地址:FF7CH B口地址:FF7DH C口地址:FF7EH 控制口地址:FF7FH8255的工作方式可由CPU写入一个控制字到8255控制字寄存
34、器来选择。方式控制字共有八位,D7位为置方式标志,有效为1,假设要求8255工作方式0,且A口作为输出,B口作为输出,C口作为输入,则可得控制字为81H。2.4 单片机的抗干扰电路2.4.1 光电隔离抗干扰的简介单片机测控系统的开关信号,往往是通过芯片给出的低压电流如TTL电平信号,这种电平信号一般不能直接驱动外设,而需经接口转换等手段处理后才能用于驱动设备开启或关闭,如不加隔离可能会串到测控系统中造成系统误动作或损坏:因此在接口处理中亦应包括隔离技术。在开关量输出通道中,为防止现场强电磁干扰或工频电压会通过输出通道反串到测控系统,一般需采取通道隔离技术。最常见的隔离器件是光电隔离器。因为光信
35、号的传送不受电场、磁场的干扰,可以有效地隔离电信号。工程上常用的隔离方法有光电隔离器、变压器、继电器和集成组件等,而光电隔离器有独特优点得到广泛应用。光电隔离器的种类繁多,常用的有发光二极管/光敏三极管、发光二极管/光敏复合晶体管、发光二极管/光敏电阻,发光二极管/光触发可控硅等,但从其隔离方法这一角度来看,都是一样的,即都通过电光电这种转换,利用“光”这一环节完成隔离功能。2.4.2 光电隔离器的原理电路GaAs红外发光二极管 光敏三极管图2-4-1光电隔离器的原理电路在图示的电路中,它是GaAs红外发光二极管和光敏三极管组成。当发光二极管有正向电流通过时,即产生人眼看不见的红外光,其光谱范
36、围为7001000nm。光敏三极管接收光以后便导通。而当该电流撤去时,发光二极管熄灭,三极管截止。利用这种特性即可达到开关控制的目的。由于该器件是通过电光电这种转换来实现对输出设备进行控制的,彼此之间没有电气连接,因而起到隔离作用,隔离电压与光电隔离器的结构有关。2.4.3 光电隔离的电路在一般微机控制系统中,由于大都采用TTL电平,不能直接驱动发光二极管,所以通常加一个驱动区,如7406和7407等。图2-4-2光电隔离的电路当输出TTL电平为低电平时,7406输出为高电平,发光二极管截止,光电隔离器处于截止状态,VO端输出高电平;而当输出控制电平为高电平时,7406输出为低电平,发光二极管
37、导通,光电隔离器处于导通状态,VO端输出低电平。需要注意的是光电隔离器的输入输出端两个电源必须单独供电,即用于驱动发光管的电源与驱动光敏管的电源不应是共地的电源,对于隔离后的输出通道必须单独供电,如上图所示;否则,如果使用同一电源(或共地的两个电源)外部干扰信号可能通过电源串到系统中来,当然,这里讲的单独供电,可以是单独使用不同的电源,也可用DC-DC变换的方法往输出端提供一个与光电输入端隔离的电源。如果从通断功能来看,光电隔离器其实是一隔离开关。利用光电隔离器也可完成电平转换,其转换后的输出电平与其供电电压值有关,而与光隔输入端无关。图2-4-3总电路框图2.5 键盘及显示电路2.5.1 键
38、盘输入特点按键所用开关为机械弹性开关,均利用了机械触点的合、断。一个电压信号通过机械的断开、闭合过程。 图2-5-1 键盘抖动波形图由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下断开。因而,在闭合和断开的瞬间均伴随着一连串的抖动,抖动时间的长短由按键的机械特性决定,一般为510ms,这是一个很重要的时间参数,在很多场合都要用到。按键的稳定闭合时间由操作人员的按键动作持续时间决定,一般为十分之几秒到几秒时间。按键的闭合与否,反应在电压的上就是呈现出高电平或低电平,所以通过电平的高低状态的检测,便可确认按键按下没有。为了确保按键的状态,必须消除按键抖动的影响,这
39、也是按键抗干扰的主要的一个方面。2.5.2 按键接口电路的消抖措施消除按键抖动影响通常有硬件、软件两种方法。本论文采用双稳态消抖的硬件消抖方法。双稳态消抖的原理:图2-5-2双稳态消抖电路原理图图2-5-2中用两个与非门构成一个RS触发器,当按键为按下时,输出为1,当按键按下时,输出为0。此时即使由于按键的机械性能使按键因弹性抖动而产生瞬间不闭合,只要按键不返回原始状态,双稳态电路的状态不会发生改变,输出保持为0,不会产生抖动的波形。这一点很容易通过分析RS触发器的工作过程得到验证。设按键首先处于a位置,此时RS触发器的与非门输出端OUT1为高电平1,与非门2的输出端OUT2为0,此输出引入到
40、与非门1的一个输入端,会把与非门1锁住,使其固定输出为1。如果此时按下按键,即使按键在a位置因弹性而产生瞬间抖动,形成一连串的抖动波形,即与非门1输入端出现了一连串的高和低电平,由于与非门2的输入端在按键没有到达b位置时始终是0,所以无论与非门1输入端的信号电平怎么变化,与非门1输出端OUT1的输出恒为1。当按键到达b时,一旦与非门2的输出端呈现低电平时,RS触发器将出现状态的翻转,此时,OUT2端输出为1,OUT1端输出为0,OUT1又引回与非门2的一个输入端,锁住与非门2,保证其输出恒为1,这样即使按键出现抖动,也不会影响OUT2的输出,因此OUT1的输出也恒为0。同样,在松开按键的过程中
41、,只要一接通a,输出为1,在接通a的过程中,即使产生了弹性抖动,只要按键不与按键b发生接触,RS触发器的输出将保持不变。通过以上分析,可知,如果在按键信号输入端加上一个RS触发器就可以剔除按键抖动产生的干扰。2.5.3 矩阵键盘的概述1矩阵键盘的工作原理:按键设置在行、列线交点上,行、列线分别连接到按键开关的两端。行线通过上拉电阻接到+5V上。平时无按键动作时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线电平决定。列线电平如果为低,则行线电平为低,列线电平如果为高,则行线电平亦为高。这一点是识别矩阵键盘按键是否被按下的关键所在.由于矩阵键盘中行、列线为多用键共用,各
42、按键均影响该键所在行和列的电平。因此个按键彼此将相互发生影响,所以必须将、列线信号配合起来并作适当的处理,才能确定闭合键的位置。2按键的识别方法矩阵键盘按键的识别方法分两步进行:第一步,识别键盘有无键被按下;第二步,如果有键被按下,识别出具体的按键。识别键盘有无键按下的方法是让所有列线均置为0电平,检查各行线电平是否有变化,如果有变化,则说明有键被按下,如果没有变化,则说明无键被按下(实际编程时应考虑按键抖动的影响,通常总是采用软件延时的方法进行消抖处理)。识别具体按键的方法是(亦称为扫描法):逐行置零电平,其余各列置为高电平,检查各行线电平的变化,如果某行电平由高电平变为零电平,则可确定此行
43、此列交叉点处的按键被按下。3键盘的工作方式单片机应用系统中,键盘扫描只是CPU的工作内容之一。CPU在忙于各项工作任务时,如何兼顾键盘的输入,取决于键盘的工作方式。键盘的工作方式的选取应根据实际应用系统中CPU工作的忙,闲情况而定.其原则是既要保证能及时响应按键操作,又要不过多占用CPU的工作时间。通常,键盘工作方式有三种,即:编程扫描、定时扫描和中断扫描。CPU对键盘的扫描采用程序控制方式,一旦进入键扫描状态,则反复地扫描键盘,等待用户从键盘上输入命令或数据。而在执行键入命令或处理输入数据过程中,CPU将不再响应键入要求,直到CPU返回重新扫描键盘为止。由图2-5-4可见键盘采用编程扫描方式
44、工作,PB口输出逐行扫描信号,PA口输入8位列信号,均为低电平有效。8255A的A0、A1上,CS与P2.7相接,WR、RD分别与8051的WR、RD相连。2.5.4 LED显示原理及显示方式1LED显示器结构LED显示块是由发光二极管显示字段的显示器件。在单片机应用系统中通常使用的是7段LED。这种显示块有共阴极和共阳极两种。图2-5-3 LED显示器引脚图共阴极LED显示块的发光二极管阴极共地。当某个发光二极管的阳极为高电平时,发光二极管点亮;共阳极LED显示块的发光二极管阳极并接。通常的7段LED显示块中有8个发光二极管,故也有人叫做8段显示器。其中7个发光二极管构成7笔字型“8”。7段显示块与单片机接口非常容易。只要将一个8位并行输出口语显示块的发光二极管因交相联即可。8位并行输出口输出不同的字节数据即可获得不同的数字或字符,通常将控制发光二极管的8位字节数据成为段选码。