数字脉冲电源.doc_第1页
数字脉冲电源.doc_第2页
数字脉冲电源.doc_第3页
数字脉冲电源.doc_第4页
数字脉冲电源.doc_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

第一章 绪论1.1 引言随着电力电子技术的高速发展,电力电子设备与人们的工作、生活的关系日益密切,而电子设备都离不开可靠的电源,进入80年代计算机电源全面实现了开关电源化,率先完成计算机的电源换代,进入90年代数字脉冲电源相继进入各种电子、电器设备领域,程控交换机、通讯、电力检测设备电源、控制设备电源等都已广泛地使用了数字脉冲电源,更促进了开关电源技术的迅速发展。开关电源是利用现代电力电子技术,控制开关晶体管开通和关断的时间比率,维持稳定输出电压的一种电源,数字脉冲电源一般由供电电源、数字控制器、开关管、和负载构成。数字脉冲电源和线性电源相比,二者的成本都随着输出功率的增加而增长,但二者增长速率各异。随着电力电子技术的发展和创新,使得数字脉冲电源技术也在不断地创新,这一成本反转点日益向低输出电力端移动,这为数字脉冲电源提供了广阔的发展空间。 数字脉冲电源高频化是其发展的方向,高频化使数字脉冲电源小型化,并使开关电源进入更广泛的应用领域,特别是在高新技术领域的应用,推动了高新技术产品的小型化、轻便化。另外数字脉冲电源的发展与应用在节约能源、节约资源及保护环境方面都具有重要的意义。1.2 数字脉冲电源的发展脉冲电镀是一项新的电镀技术。特点是由脉冲电流对电极过程动力学的特效影响所决定的。在直流电镀时,镀液中被镀出的金属离子在阴极表面附近溶液中逐渐被消耗,造成了该处被镀金属离子与溶液中该离子浓度出现差别。这种差别随着使用的电流密度增高而加大。脉冲电镀时的传质过程与直流电镀时的传质过程的差异,造成了峰值电流可以大大高于平均电流,促使晶种形成的速度远远高于晶体长大的速度,使镀层结晶细化,排列紧密,孔隙减小,电阻率低。脉冲电源其电流呈脉冲方式流动,并可在瞬时产生高密度电流;在电镀时能将底层均匀地涂覆到镀件上,并使之加速,提高了效率。可以调节占空比及频率的脉冲电镀电源。脉冲电源的工作原理可以通过其输出波形直接反映。一般直流电源的输出波形见图1-1;脉冲电源的输出波形见图1-2。所谓数字脉冲电源,就是采用微处理器等数字电路对脉冲电源中的直流斩波进行控制,并实现数字显示与数字调节的一种脉冲电源。它是当今最为先进的电镀电源,也是电镀电源发展的方向。它与传统的模拟脉冲电图1-1 一般电镀电源输出波形 图1-2 脉冲电源输出波形源相比有以下优点:l 驱动波形规整,极大的改善了斩波后的输出波形,对提高电镀质量十分有利;l 采用数字调控,直观简单;l 波形调节范围宽,调节步进可以至0.1ms;l 温度漂移系数小,能长期稳定连续运行。数字脉冲电源一般分为双脉冲电源与单脉冲电源2种。数字单脉冲电源的原理图。如图1-3所示。 图1-3 数字单脉冲电源原理图在目前的应用中,大多利用大功率的开关管IGBT对直流电源进行斩波,达到脉冲输出的目的。改变IGBT开关管的方波驱动信号,以实际脉宽的可调。第二章 数字脉冲电源的性能指标与设计要求2-1数字脉冲电源的性能指标与设计要求 脉冲电镀实质上是一种通、断直流电镀。所不同的是脉冲电镀有3个独立的参数(脉冲电源密度J、导通时间ton及关断时间toff)可调;而一般直流电镀只有1个参数(电流或电压)可调。因此,采用脉冲电镀就为槽外控制镀层提供了有利的手段。脉冲电镀是一项既能提高镀层质量,又能提高沉积速率的经济效益很高的电镀新技术。图1-2为脉冲电源的电流波形,图中:ton:脉冲电流导通时间;toff:脉冲电流断电时间;T=ton+toff:脉冲周期;J:电流密度;Ip:电流峰值。图1-2 脉冲电源参数图本数字单脉冲电源的性能与设计要求主要体现再以下一些指标:l 供电电源:3相,50Hz,380V。l 输出峰值电流:440A,连续可调。l 输出峰值电压:330V,连续可调。l 脉冲频率:110KHz,可调。l 脉冲占空比:0100%,可调。l 脉冲电流导通时间:ton:0.1999.9ms;脉冲电流断电时间toff:0.1999.9 ms。l 电流、电压波形:脉冲,键盘设定。l 工作方式:恒流/恒压任选。l 电镀时间可键盘设定,为0999.9s。第三章 双CPU系统方案 3-1系统总体方案的思路 由于系统中关键问题是定时:电镀时间的定时及驱动开关管的脉冲定时,而且后者的定时精度直接影响输出脉冲波形的频率精度。同时考虑到系统显示及按键处理的因素,本系统采用了双CPU系统设计构架。主系统主要负责显示按键管理、电镀时间控制以及余兴中的暂停等控制;从系统主要负责产生开关管的驱动脉冲。数字控制系统的原理可用图3-1表示。双CPU系统的关键是主、从CPU之间的协调与通信实现。实现的约束是:(1) 能满足系统的实习性要求,响应及时,并能完成系统的所有设计功能;(2) 软、硬件实现不能过于复杂。图3-1双CPU系统原理示意图3-2 双CPU系统的若干形式在单片机应用系统中,双CPU或多CPU系统的建构通常有以下3种形式。1 采用双口RAM方式使用一个CPU有时会导致软件编写复杂,尤其当多个外围芯片发生中断请求时,容易造成数据处理的延误。采用双口RAM和双CPU电路,整个电路分为2大部分,每个CPU编有单独的程序,各管理一部分,这样可减小整个软件编写的难度,增加仪器工作的可靠性。双口RAM产品的型号和规格较多,常用的如IDT7132双口RAM。作为2个CPU交换信息的媒介,主CPU和次CPU均可通过与双口RAM相连的总线对双口RAM进行读/写。由于双口RAM对大多具有双总线,而且具有总线仲裁机构,因此这种方式的特点是硬件简单,但成本相对较高。这种方式的实现原理可用图3-2表示。图3-2 双口RAM方式双CPU系统2.采用并口通信方式采用并口方式的双CPU系统一般有以下2种形式。(1) 直接连接方式这种方式是直接将2个CPU通过并行接口连接起来,实现协调与交流。以图3-3为以说明:图中P34,P35作为握手联络信号。显然这种方式是以牺牲并行接口为代价的。虽然是半双工通信方式,但由于是并行通信方式,速度还是比串口方式要快。在并行接口紧张的应用场合,需要权衡。(2)间接连接方式间接连接方式一般是通过并行接口电路来实现的。以图3-4为例加以说明:这种方式以2片并行接口芯片8155作为双方联系的纽带。由于8155对单片机来说只是一个外围设备,因此,这种方式可以避免总线仲裁等麻烦。图3-3 直接并行方式图3-4间接并行方式烦。只要设定好8155的PA,PB,PC的输入/输出方式,并以其中的若干条口线作为握手联络信号,就可以方便地实现双CPU系统。3.采用串行通信方式串行通信方式,即主、从CPU之间通过串行口或模拟串行接口惊醒协调和交流。这种方式的特点是硬件简单,软件实现也很方便;但实时性相对较差,只适用于数据量小的场合。本系统即采用了这种方式。为了弥补纯串行方式的缺陷,本系统在串行通信的基础上,配合以适当的握手联络信号,以克服纯软件握手对驱动脉冲的影响。 第四章系统硬件设计4.1 基于89C52的主系统设计4-1-1 主系统电路1主系统电原理设计按照设计要求及方案,确定系统的功能模块有显示/按键电路、复位与看门狗电路、主CPU系统、从CPU系统、脉冲驱动放大电路(斩波控制电路)及脉冲电源的其他电路(直流电源、斩波电路及保护环节)等。主系统电原理见图4-1。2 主系统分析(1)复位与看门狗电路本系统有以下3种情况:上电复位、手动复位、及看门狗定时器溢出复位;采用MAX813L电源监视电路。主CPU、从CPU系统共用复位信号,目的是当系统中的任何一个子系统运行失常时,必须共同复位,以回复待机状态,避免错误运行。对从系统的软件进行适当处理,当从系统工作失常后,也能让主系统感知,然后强制电源监视电路复位,可达到引起复位的目的。这里利用通信握手信号SCOMM。这样当从系统失常、程序“跑飞”时,落入非正常程序区的握手信号始终无效,此时主系统的串行查询程序反复查询,使得“喂狗”信号无法及时送出,从而引起溢出复位。(2)主CPU系统 主CPU系统主要管理显示电路、按键电路、运行状态控制及向从CPU系统发送脉冲参数等,核心是89C52单片机。其中的PKEY开关为暂停开关,通过P12与单片机接口,暂停时通过P11控制暂停指示灯发光指示。“喂狗”信号由P10输出,其实质是一个负脉冲。主、从CPU系统的握手信号为R/P,SCOMM。其中R/P用来由主CPU控制从CPU的运图4-1 主系统电原理图行与暂停;SCOMM信号是从CPU向主CPU指示通信状态的,成功结束有效;否则无效。考虑到主CPU系统对定时的要求不是很高,采用6Mhz主频。4-1-2主系统显示电路显示采用数码管;显示/键盘电路通过8279专用接口芯片与单片机接口。一共用3组数码管,每组4个数码管。前2个参数的范围为0.1999.9ms,而后1个参数的范围为09999s,符合8279的设计能力。数码管采用小型超高亮共因数码管。前2个参数采用绿色,后一个参数的显示采用红色。通过P15引脚向MAX813L发出RSTK1信号,使系统复位,也即停止从CPU的脉冲输出,结束电镀运行。显示电路中的数码管电路如图3-2所示,单片机的接口电路参见图4-2。 图4-2 数码管电路4-1-3 主系统按键电路键盘设计了10个数字键09,3个参数(ton、toff及T) 设置键,与此配套的Enter,CLS“”等键及运行控制键Start。1 数字键09用来设置参数。在当前编辑位上输入数字,每按1个数字键,便覆盖原数字。2 参数设置键ON,OFF,T 3键用来选择设置何种参数。设置流程为:按3个中任1个,以选择参数项目;再通过数字键送入第1位(最高位),通过“ ”键切换到下一位;再送入数字,一直到4位数字全部送完,通过回车键Enter确认。前2个参数采用定点数,小数位为一位。在输入过程中,如出现错误,则按CLS键清除该项目,重新输入。当3个参数全部送完,则设置参数不齐备,按此键无效。按键电路如图4-3所示。 图4-3按键电路4-2基于89C2051的从系统设计从CPU系统是基于89C2051单片机的单芯片系统,唯一的任务是产生斩波所需的脉冲信号。电原理图见图1-7虚线框部分。系统主频为12Mhz,其目的是为了保证最小定时0.1ms的需要,在T2定时中断服务程序中完成相应动作。中断服务程序的总的执行时间必须小于0.1ms;否则,会引起失常,出现比较大的脉冲频率误差,甚至不能工作。脉冲PULSE从P16输出,经Q1(9012)小功率三极管驱动后,经光电隔离驱动斩波信号驱动电路。从系统与主系统的串行通信为直接方式,原因是双方均为TTL信号,可以直接交换,无需电平转换。4-3斩波脉冲驱动输出电路设计从系统产生的脉冲信号经高速光耦TIL117光电隔离后,送入驱动放大电路,如图4-4所示。当M1+为低电平时,光耦截止,中功率三极管BG2截止,MZ11与MZ15间无信号输出;当M1+为高电平时,则光耦导电,BG2导通,则MZ11与MZ15间的电平信号约为16V,能满足斩波电路驱动信号的要求。如果调整R16,则可使输出信号在一定范围内具有可调性,以适应不同斩波用开关管的技术要求。实际应用中发现,3端稳压器的输出端不接大容量滤波电容,可以改善波形的边沿特性。 图4-4斩波用脉冲驱动电路第五章 软件系统采用双CPU系统结构后,可以使2个CPU各司其职,同时使软件设计的难度也大大降低。5.1主系统软件1 主系统软件结构主系统主要由4大功能模块组成:(1)主程序模块;(2)串行通信模块;(3)T2定时中断服务程序;(4)参数编辑模块。4模块的功能分别是: 图5-1主系统主程序框图l 主程序模块:系统初始化及其他模块的协调与调用;l 串行通信模块:主要是向从系统发送编辑好的ton,toff及T等参数;l T2定时中断服务模块:计量电镀时间,即对T参数倒计时处理;l 参数编辑模块:编辑输入脉冲所需的ton,toff及T等参数。主程序框架见图5-1所示。2 主系统程序及其简要说明如下:;键值定义NUM0EQU 00HNUM1EQU 01HNUM2EQU 02HNUM3EQU 03HNUM4EQU 04HNUM5EQU 05HNUM6EQU 1BHNUM7EQU 06HNUM8EQU 07HNUM9EQU 08HON1EQU 09HOFF1EQU 0AHT1EQU 0BHON2EQU 0CHOFF2EQU 0DHT2EQU 0EHTTEQU 0FHENTEREQU 10HCLSEQU 11HLEFTEQU 12H PAUSEEQU 15HSTARTEQU 16HUP1EQU 17H ;数字电位器+1键(预留)DOWN1EQU 18H ;数字电位器-1键(预留)UP2EQU 19HDOWN2EQU 1AH;8279 地址定义I8279_CMDEQU 7FFFHI8279_DATAEQU 7EFFH;显示数码管个数 DIRNEQU 0CH ;只有12个,但8279方式字必需为16个;8279 命令字: 左入, N键轮回,16 数码管 KMDEQU 08H ;0AH也可;* 片内RAM分配 *DISPBUFEQU 50H ;显示缓充区首址(50H5FH,共16字节)KEYBUFEQU 4FH ;键值缓冲单元;光标位置序号暂存CURSOREQU4EH;本次编辑项显示首址暂存单元FIRSTEQU 4DH;ON时间(已转换成0.1MS的个数)暂存单元ONEQU 4BH ;4BH,4CH(从高到低);OFF时间OFFEQU 49H ;49H,4AH;总的工作时间(单位为:秒)WTEQU 47H ;47H,48H(从高到低):S;工作参数备份区ONBFEQU 45H ;45H,46HOFFBF EQU 43H ;43H,44HWTBFEQU 41H ;41H,42H;十进制加减工作区(被减数,或被加数单元)BCDJJEQU 3FH ;3FH,40H;T0中断次数累计单元T0_COUNTEQU 3DH ;中断10为1S(10*0.1=1S);位标志定义ISON1 BIT 01H ;正在编辑ON1标志ISOFF1BIT 02H ;正在编辑OFF1标志ISTTBIT 03H ;指示编辑TT标志CSOKBIT 04H ;参数输入完成标志CSON1 BIT 05H ;参数ON1被编辑过标志(只要编辑过即为真) CSOFF1BIT 06HCSTTBIT 07HCSW1BIT 08H ;参数位1已编辑标志(即已输入过数字)CSW2BIT09HCSW3BIT0AHCSW4BIT0BHDP BIT 0CH ;参数中是否要小数点标志ISOVERBIT 0DH ;工作结束标志(设定时间到了)CSXBIT 0EH ;参数项标志,=1,为ON参数(T1中断用)PAUSE_FLAGBIT 0FH ;暂停键标志.=1,说明已按过暂停键TTFLAGBIT 04H ;工作时间已设定过标志;参数编辑项数标志单元CSXSEQU 23H ;如果=3,说明三个参数已都编辑过;项目内参数编辑位数计数单元XNGSEQU 24H;显示缓冲区的备份DISPBFEQU 0A0H;数字电位器控制端定义CSBIT P3.0INC1BIT P3.4UDBIT P3.5;各显示指示等控制脚定义ON_RUNBIT P3.1 ;高电平关(运行指示)PAUSINGBIT P1.7 ;高电平关(暂停指示)RPBIT P1.6 ;运行/暂停状态线ISEND BIT P1.5 ;结束状态线SCOMM BIT P1.4 ;通讯状态线(=0,说明正常);PAUBIT P1.2 ;=0,暂停;ORG 0000HSJMP MAINORG 002BHLJMP INT_T2ORG 0030HMAIN:MOV SP, #60H ;堆栈指针初始化MOV R6, #40HLCALL DELAY ;延时,以等待8279复位完成LCALL INIT8279CLR CSOK ;清除参数输入完成标志 CLR CSXS ;清参数项数单元 CLR CSON1 ;清各参数项已编辑标志 CLR CSOFF1 CLR CSTT CLR CSW1 ;当前参数项内各数位标志被清除CLRCSW2CLRCSW3CLRCSW4 CLR TTFLAG MOV R0, #DISPBUF;P的代码写入首位,以显示开机符P MOV A, #0AH ;P的代码 MOV R0, A MOV A, #0CH ;熄灭的代码 INC R0 ;显缓的余下部分清0(即熄灭) MOV R6, #0FH ;还共15个(实际只要11个)MAIN_00: MOV R0, A INC R0 DJNZ R6, MAIN_00MAIN_0: LCALL DISPLAY ;显示 LCALL READKEY ;等待按键并读键 MOV KEYBUF, A ;将键值暂存 CJNE A, #ON1, MAIN_1 ;判是否是ON1键? SETB ISON1 ;YES,则设置参数项标志后转参数编辑模块 CLR ISOFF1 ;此时,余下两参数项标志被清除 CLR ISTTCLRCSW1 ;如果此参数还未完成,则清参数4位 CLRCSW2;未编辑标志 CLRCSW3 CLRCSW4 CLR CSON1 ;清参数项被编辑过标志 SETB DP ;要小数点 LCALL EDIT ;完成相应参数的编辑(回车键返回) JNC MAIN_0 ;C=0,说明此参数项未被编辑 SETB CSON1 ;C=1,说明参数项被编辑过,设置标志 SJMP MAIN_0MAIN_1: CJNE A, #OFF1, MAIN_2 ;NO,则继续判是否是OFF1键 SETB ISOFF1 CLR ISON1 CLR ISTT CLRCSW1 CLRCSW2 CLRCSW3CLRCSW4 CLRCSOFF1 SETB DP ;要小数点MAIN_10: LCALL EDIT JNC MAIN_0 SETB CSOFF1 SJMP MAIN_0MAIN_2: CJNE A, #TT, MAIN_3 SETB ISTT CLR ON1 CLR ISOFF1 CLRCSW1 CLRCSW2 CLRCSW3 CLRCSW4 CLRCSTT CLR DP ;不要小数点MAIN_20: LCALL EDIT JNC MAIN_0 ;C=0,则不设置CSTT标志 SETB CSTT ;C=1,则设置CSTT标志 SJMP MAIN_0MAIN_3: CJNE A, #START, MAIN_0 ;其它键忽略MAIN_30: MOV C, CSON1 ;运行键处理 ANL C, CSOFF1 ANL C, CSTT ;1*1*1=1(否则为0) JC MAIN_4 ;三个参数均已被编辑过,说明参数已完成 LJMP MAIN_0 ;否则,说明还有参数未被输入,则继续等待MAIN_4: LCALL INVERT ;参数转换并送存相应单元,及备份单元 LCALL FS_CPU3 ;参数ON,OFF发送 JNC MAIN_40 ;通讯不正常,则等待再次按开始键发送 LCALL RUN ;正常,则运行(开始计时)MAIN_40: LJMP MAIN_0 ;运行完成等待下次运行(参数保留)*软复位;*;参数编辑输入:EDIT;说明: 根据相应标志,编辑输入参数,回车键结束; 清除键整个项清除; 光标-键可循环在项目间移动,对应位置为编辑位置; 小数点位置固定;返回: C=0,说明参数未编辑; C=1,说明参数被编辑过;*EDIT:JNB ISON1, EDIT_1 ;要编辑的是ON参数项? NO,则转MOV R0, #DISPBUF ;YES,则ON1参数对应显示缓冲单元首址MOV FIRST, #DISPBUF ;首地址送存FIRST单元以备后SJMP EDIT_4EDIT_1: JNB ISOFF1, EDIT_2 ;编辑OFF参数项? NO,则转 MOV R0, #DISPBUF+4 ;YES,OFF1对应显示缓冲单元首址 MOV FIRST, #DISPBUF+4 SJMP EDIT_4EDIT_2: JNB ISTT, EDIT_3 MOV R0, #DISPBUF+8 ;TT参数对应显示缓冲单元首址 MOV FIRST, #DISPBUF+8 SJMP EDIT_4EDIT_3: CLR C ;清标志C(实际上不可能会执行到此) RET ;标志不对,直接返回(不设置参数完成标志)EDIT_4: MOV CURSOR, #00H ;光标在第一位(原始位置)MOV A, #14H ;_的代码MOVR0,AINC R0 ;第2位为灭 CLRAEDIT_41:MOVR0,AINCR0 MOV R0, A ;第3位灭 INC R0 ;第4位为灭 MOV R0, AEDIT_42: LCALL DISPLAY ;显示 LCALLREADKEY;等待按键 CJNE A, #NUM0, EDIT_43 LCALL NUMKEY0 ;如为数字键0,则调用数字键处理 SJMP EDIT_42EDIT_43: CJNE A, #NUM1, EDIT_44 LCALL NUMKEY1 SJMP EDIT_42EDIT_44: CJNE A, #NUM2, EDIT_45 LCALL NUMKEY2 SJMP EDIT_42EDIT_45: CJNE A, #NUM3, EDIT_46 LCALL NUMKEY3 SJMP EDIT_42EDIT_46: CJNE A, #NUM4, EDIT_47 LCALL NUMKEY4 SJMP EDIT_42EDIT_47: CJNE A, #NUM5, EDIT_48 LCALL NUMKEY5 SJMP EDIT_42EDIT_48: CJNE A, #NUM6, EDIT_49 LCALL NUMKEY6 SJMP EDIT_42EDIT_49: CJNE A, #NUM7, EDIT_4A LCALL NUMKEY7 SJMP EDIT_42EDIT_4A: CJNE A, #NUM8, EDIT_4B LCALL NUMKEY8 SJMP EDIT_42EDIT_4B: CJNE A, #NUM9, EDIT_4C LCALL NUMKEY9 SJMP EDIT_42EDIT_4C: CJNE A, #LEFT, EDIT_4D MOV A, CURSOR;光标左移键处理 CJNE A, #00H, EDIT_4C1;判当前光标是否在第一位 JNB CSW1, EDIT_42 ;YES,判参数位1是否已输入数字.NO,不理睬 MOV CURSOR, #01H MOV A, FIRST;首址 ADD A, CURSOR ;加新光标位置序号=新光标显示缓冲单元 MOV R0, A MOV A, #14H;_光标字符代码 MOV R0, A ;送存相应显示缓冲单元 LJMP EDIT_42 ;继续显示判键EDIT_4C1: CJNE A, #01H, EDIT_4C2 JNB CSW2, EDIT_42 ;判参数位2是否已输入数字.NO,则不理睬 MOV CURSOR, #02H MOV A, FIRST ;首址 ADD A, CURSOR ;加新光标位置序号=新光标显示缓冲单元 MOV R0, A MOV A, #14H ;_光标字符代码 MOV R0, A ;送存相应显示缓冲单元 LJMP EDIT_42 ;继续显示判键EDIT_4C2: CJNE A, #02H, EDIT_4C3 JNB CSW3, EDIT_4C23 ;判参数位3是否已输入数字.NO,则不理睬 SJMP EDIT_4C20EDIT_4C23: LJMP EDIT_42EDIT_4C20: MOV CURSOR, #03H MOV A, FIRST ;首址 ADD A, CURSOR ;加新光标位置序号=新光标显示缓冲单元 MOV R0, AEDIT_4C21: MOV A, #14H ;送_的代码EDIT_4C22: MOV R0, A ;送存相应显示缓冲单元 LJMP EDIT_42 ;继续显示判键EDIT_4C3: LJMP EDIT_42 ;光标已在第4位,左移键忽略EDIT_4D: CJNE A, #CLS, EDIT_4E MOV CURSOR, #00H ;清除键处理 MOV A, FIRST MOV R0, A MOV A, #14H ;第1位显示_ MOV R0, A MOV R0, FIRST INC R0 ;第2位灭 MOV A, #0CHEDIT_4D1: MOV R0, A INC R0 EDIT_4D12: MOV R0, A ;第3位灭(小数点会自动固定显示) INC R0 ;第4位灭 MOV R0, A CLR CSW1 ;各参数位已输入数字标志清除 CLR CSW2 CLR CSW3 CLR CSW4 LJMP EDIT_42 ;继续显示并判键EDIT_4E: CJNE A, #ENTER, EDIT_4G MOV C, CSW1 ;回车键处理 ANL C, CSW2 ;判4位是否已全输入数字 ANL C, CSW3 ANL C, CSW4 JC EDIT_4E1 ;YES,则继续 LJMP EDIT_42 ;NO,说明参数未编辑完,回车键忽略EDIT_4E1: SETB C ;设置已完成标志 RET EDIT_4G: LJMP EDIT_42 ;其它键忽略;*;数字键处理:NUMKEY0,.;思路: 将按键对应的数字代码写入显示缓冲单元显示,; 设置已输入数字标志CSWx(标明数字已输入);*NUMKEY0:MOV R7, #00H SJMP NUMKEYNUMKEY1: MOV R7, #01H SJMP NUMKEYNUMKEY2: MOV R7, #02H SJMP NUMKEYNUMKEY3: MOV R7, #03H SJMP NUMKEYNUMKEY4: MOV R7, #04H SJMP NUMKEYNUMKEY5: MOV R7, #05H SJMP NUMKEYNUMKEY6: MOV R7, #06H SJMP NUMKEYNUMKEY7: M

温馨提示

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

评论

0/150

提交评论