




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、EASTCHINAUNIVERSITYOFTECHNOLOGY微型计算机控制技术课程设计报告课题名称:逐点比较插补原理的实现姓名:汪方操班级:1321501号:201320150161徐猛华指导老师:东华理工大学机械与电子工程学院2016年6月东华理工大学计算机控制技术课程设计说明书目录目录1一设计任务和要求3二、任务分析4(1)动态显示4(2)按键功能4(3)硬件系统设计4(4)插补算法实现4三、总体方案设计53.1 硬件总体方案设计53.2 软件总体方案设计5四、硬件系统设计64.1 方案论证64.2 单片机与8255的接口74.3 电机硬件接线原理图84.4 元件清单94.5 、键盘显示
2、硬件设计94.5.1 键盘输入电路 动态显示电路1.04.5.3 所用元器件1.0五软件系统设计115.1 软件设计原理115.1.1 逐点比较法圆弧插补原理 步进电机工作原理1.25.2 8255的初始化编程145.3 步进电机走步控制程序145.3.1 NR1程序流程图 走步控制汇编程序代码1655.3.3 NR4程序流程图1.75.4 键盘显示程序设计185.4.1 键盘与I/O接口表5键盘接口 键盘显示程序流程图185.4.3 个功能键:1.95.5 主程序195.5.1 主程序流程图源程序代码20六系统调试
3、206.1 系统安装调试206.2 结果验证20七课程设计总结22八、参考文献22附录一芯片资料23附录二源程序24一设计任务和要求设计一个计算机控制步进电机系统,该系统利用89C51(或89C52、89S52)机的Px口输出控制信号,具信号驱动、控制X、Y两个方向的三相步进电机转动,利用逐点比较法插补绘制出各种曲线。在第一象限,X(10)、Y(10)最大坐标值。其他坐标值任意定,但插补计算不得小于8步。要求:1)在显示器上显示任意四位十进制数;a、定义键盘按键:10个为数字键09;6个功能键:设置SET、清零CLR、确认、开始START、暂停、停止;b、显示器上第一位显示次数,后三位显示每次
4、行走的角度;c、通过键盘的按键,设置X、Y轴插补的起始值;按START键启动步进电机开始转动,按SET键进行数据设置、按CLR键清零。2)设计硬件系统,画出电路原理框图(要求规范);3)定义步进电机转动的控制字;(不设计步进电机驱动电路与驱动程序)。4)推导出用逐点比较法插补绘制出下面曲线的算法;5)编写算法控制程序;6)撰写设计说明书。选择曲线如下:二、任务分析(1)动态显示采用四位共阳极LED显示器动态显示,不断扫描显示。采用4X4键盘作为输入模块,接单片机P1口,采用线反转法进行编程,线反转法的工作原理和查键步骤:求按键的列线值:行线作为输出线,列线作为输入线,即可得到列线值。求按键的行
5、线值:行线作为输入线,列线作为输出线,即可得到行线值。求按键的特征码:把行线值和列线值合并,组合成为按键的特征码。查找键码:通过查表就可以得到与特征码对应的顺序码,就可以得知是哪个按键按下。表中若没有该特征码以无效键处理,并与没有按键(0FF)等同看待。(2)按键功能程序主体要按照,先扫描按键,待设置完成,按下启动按钮,才能进行插补运算,并且,把走过的步数,输出显示。通过数字键,输入起点坐标,暂存数据,待按下启动按钮,把数据输入X,Y对应存储单元。(3)硬件系统设计采用AT89C51单片机作为主控制器,4X4键盘作为设置键,P0口作为显示和控制字输出口,在驱动步进电机时,数据通过74LS373
6、进行锁存,通过8255PA口输入,PB、PC口输出,经过驱动电路,驱动步进电机工作。在显示时通过74HCT573进行数据锁存,用4位数码管对输出数据进行显示。(4)插补算法实现由图可知,在图像第一象限内为一个半圆,必须进行坐标变换,转化为两个第一、第四象限的逆圆弧插补。然后按照第一、第四象限的插补算法进行插补计算。坐标变换(X-5,Y-6)就可以得到相对坐标,第四象限内,起点绝对坐标为(5,2),相对坐标为(0,-4),终点绝对坐标为(9,6),相对坐标为(4,0)。第一象限内起点绝对坐标为(9,6),相对坐标为(4,0),终点绝对坐标为(5,10),相对坐标为(0,4)。插补的圆心为(5,6
7、),半径为4。三、总体方案设计3.1 硬件总体方案设计电源模块图2硬件系统方框图3.2 软件总体方案设计首先调键盘输入子程,对按键进行扫描,当设置键有效时,通过数字键对X、Y进行赋初值,通过功能键进行清零,通过STRAT键,开始启动插补程序,进行插补。插补过程中,分别调用不同象限的插补程序,实现不同方向的进给。同时把步进次数,输出显示。东华理工大学计算机控制技术课程设计说明书17四、硬件系统设计图3驱动电路方案一4.1方案论证单片机的接口电路可以是锁存器,也可以是专门的接口芯片,本设计采用可编程接口芯片8255。由于步进电机需要的驱动电流比较大,所以单片机和步进电机的连接还要有驱动电路,如何设
8、计驱动电路成了问题的关键。设计方案一如图3所示,当某相上驱动信号变为高电平时,达林顿管导通,从而使得该相通电。马区动信号设计方案二如图4所示,在单片机与驱动器之间增加一级光电隔离,当驱动信号为高电平时,发光二极管发光,光敏三极管导通,从而使达林顿管截止,该相不通电;当驱动信号为低电平时,则步进电机的该相通电。综合比较两种设计方案可知,方案二有抗干扰能力,且可避免一旦驱动电路发生故障,造成高电平信号进入单片机而烧毁器件。所以,本设计选择方案二。4.2单片机与8255的接口MCS-51单片机可以和8255直接连接而不需要任何外加逻辑器件,接口示意图如图5所示。因为8255的B和C具有驱动达林顿管的
9、能力,所以将采用B口和C口输出驱动信号。805174LS37382554.3电机硬件接线原理图图6系统硬件接线原理图s a 上比工工工6*丁LE单片机控制步进电机的硬件接线如图6所示。因为8255的片选信号CS接单片机的地址线P2.7,A1、A0通过地址锁存器接到了8051单片机的地址线P0.1和P0Q由硬件接线图可以清楚地知道,8255的各口地址为:A口地址:7FFCHB口地址:7FFDHC口地址:7FFEH控制口地址:7FFFH同时,B口和C口都作为输出口,8255工作在方式00下面以8255的B口输出端PB0为例说明控制的工作原理。若PB0输出0,经反相器74LS04后变为高电平,发光二
10、极管正向导通发光。在光线的驱动下,光敏三极管导通,+5V的电压经三极管引入地线而不驱动达林顿管。因而,达林顿管截止,X轴上步进电机的C相不通电。若PB0输出1,反相后变为低电平,发光二极管不导通。从而光敏三极管截止,+5V电压直接驱动达林顿管导通,X轴上步进电机的C相有从电源流向地线的电流回路,即C相得电。4.4元件清单表1元件清单表名称位号型号数量单片机80511地址锁存器74LS3731并行接口芯片8255A1反相器74LS046电阻R1R241K24光电三极管U1U34N253达林顿管Q1Q6NPNDAR6二极管D1D6IN400164.5、 键盘显示硬件设计4.5.1 键盘输入电路P1
11、.0/T2P3.(MroDpi.imtxP3.1/D0E有以下3种情况。图10圆弧插补若加工点若加工点若加工点P(Xj)正好落在圆弧上,则下式成立,即22222x yj = x0 y0 - RP(x,yj)落在圆弧外侧,则RpaR,即2222x yj % y0P(x,yj)落在圆弧内侧,则RpR,即2222xyj%v。将上面各式分别改写为下列形式,即(X2(X2(x2-yj) (X272)=0-y2) (x2 -y2) 0-y2) (x2 -y2):二 0(在圆弧上)(在圆弧外侧)(在圆弧外侧)取加工偏差判别式为Fi,j= (x2-y2) (x2-y2)若点P(X,yj)在圆弧外侧或圆弧上,则
12、满足Fi,j之0的条件时,向x轴发出一负向运动的进给脉冲(-Ax);若点P(x,yj)在圆弧内测,即满足条件Fi,j0的条件时,则向y轴发出一正向运动的进给脉冲(+Ay)。为了简化偏差判别式的运算,仍用递推法来推算下一步新的加工偏差。设加工点Plxi,%)在圆弧外侧或圆弧上,则加工偏差为K=(x2-y2)+(x0-y;)故x轴必须向负方向进给一步(-Ax),移动到新的加工点P(x41,yj),其加工偏差为Fi1,j=(xi-1)-x0yj-y0=xi-2xi1yj-y0-x0=Fij-2x+1(5-1)设加工点P(xi,%)在圆弧的内测,则Fi00那么y轴须向正向进给一步(+dy),移到新的加
13、工点PJ4书),其加工偏差为Fi1,j=x2-xo(yj1)2-y2=x2-x2y2-2yj1-y2=Fi,j+2yi+1(5-2)根据式(3-)及式(3-)可以看出,新的加工点的偏差值可以用前一点的偏差值递推出来。递推法把圆弧偏差运算式由平方运算化为加法和乘2运算,而对二进制来说,乘2运算是容易实现的。(2)圆弧插补的象限处理表2xy平面内逆圆插补的进给方向与偏差计算线型偏差计算进给方向与坐标NR1F之0F-F+2x+1xx+12xNR1F0NR2F之0FF-2x+1x-x-1-AxNR2F0F-F+2y+1yy+1+AyNR3F0NR4F20FF-2y+1y-yx-1+Ay5.1.2步进电
14、机工作原理步进电机有三相、四相、五相、六相等多种,本设计采用三相步进电机的三相六拍工作方式,其通电顺序为:AtABtBtBCtCtCAtAt各相通电的电压波形如图8所示。A相_|B相|C相|_图11三相六拍工作的电压波形当步进电机的相数和控制方式确定之后,PB0-PB2和PC0-PC2输出数据变化的规律就确定了,这种输出数据变化规律可用输出字来描述。为了便于寻找,输出字以表的形式存放在计算机指定的存储区域。表3、4给出了三相六拍正反转控制方式的输出字表。表3三相六拍控制方式正转输出字表控制位工作状态控制字表C相B相A相1001A01H2011AB03H3010B02H4110BC06H5100
15、C04H6101CA05H表4三相六拍控制方式反转输出字表控制位工作状态控制字表C相B相A相1001A01H2011CA05H3010C04H4110BC06H5100B02H6101AB03H5.2 8255的初始化编程由前面的分析知道,8255工作在方式0,控制口地址为7FFFH,控制字为90H。所以,8255的初始化编程如下。MOV DPTR, #7FFFH;控制口地址送DPTRMOV A, #90H;PA 口输入,PB、PC 口输出,方式0MOVX DPTR, A;将控制字写入控制口5.3 步进电机走步控制程序A10-t10为了实现如图所示曲线,我们将坐标原点移到D点,其余坐标进曲线7
16、图12目标曲线分段B点为(4,0) ,C点行变换,图示D点为(0,0),A点为(0,-4),为(0,4),划分为两段圆弧,NR1即BC段,NR4即AB段5.3.1NR1程序流程图图13NR1步进电机走步控制程序流程图MOV A, R2MOVC A, A+DPTRMOV DPTR, #7FFDHMOVX DPTR, A5.3.2走步控制汇编程序代码以下为第一象限X轴上步进电机为例,Y轴上步进电机算法类似XCOTROL:MOVDPTR,#ADXP/(#ADXN);将控制字表地址赋给DPTH;表首偏移量送A;读取当前步进电机的控制字;PB口地址送DPTR;将步进电机的控制字传送到PB口CJNEA,#
17、05H/(03H),LOOP3;若未到表尾,转LOOP3MOVR2,#00H;表首偏移量清零SJMPDELAY1LOOP3:INCR2DELAY1:MOVR0,#FFH;未到表尾,表首偏移量加1;延时DJNZDELAY1RET;返回ADXP:DB01HDB03HDB02HDB06HDB04HDB05HADXN:DB01HDB05HDB04HDB06HDB02HDB03H东华理工大学计算机控制技术课程设计说明书195.3.3NR4程序流程图图14NR4步进电机走步控制程序流程图值得关注的是第四象限的插补,Y要带入Y0的绝对值,且N=(Xe-X)+(Y-Ye)其控制算法实现同第一象限类似5.4 键
18、盘显示程序设计5.4.1、 键盘与I/O接口表5键盘接口0123P1A0输入4567P1A189ABPW2CDEFPW3P1A4P1A5PW6P1A7输出5.4.2、键盘显示程序流程图5.4.3六个功能键:表6功能键与顺序码、特征码对应表设置SET清零CLR确认开始START暂停停止ABCDEF0BBH7BH0E7H0D7H0B7H77H5.5 主程序第一、要实现两个象限插补,首先调用NR4子程,然后调用NR1子程第二、要考虑与键盘显示电路相结合,将走步次数输出显示。5.5.1、 主程序流程图结束图16主程序流程图东华理工大学计算机控制技术课程设计说明书5.4.2源程序代码首先分配各变量的地址
19、,高位存高地址,低位存进低地址。源程序代码见附录二表7变量地址分配变量XYXeYeFE高位地址51H4FH4DH4BH49H53H低位地址52H50H4EH4CH4AH54H六系统调试6.1 系统安装调试按照硬件接线图将系统安装好后,装入程序,执行后查看步进电机的走步轨迹。6.2 结果验证(1) NR4插补:终点坐标(Xe,Ye)为(4,0),起点坐标(X0,丫0)为(0,-4)插补计算过程如表3所示。表8NR4插补计算过程步数偏差判别坐标进给偏差计算坐标修正终点判别起点F0=0X=0,Y=4E=81F0=0+YF1=0-2*4+1=-7X=0,Y=3E=72F10+XF2=-7+0+1=-6
20、X=1,Y=3E=63F20+XF3=-6+2*1+1=-3X=2,Y=3E=54F30+YF5=2-2*3+1=-3X=3,Y=2E=36F50+YF7=4-2*2+1=1X=4,Y=1E=18F7=0+YF8=1-2*1+1=0X=4,Y=0E=0(2)NR1插补:终点坐标(Xe,Ye)为(0,4),起点坐标(X0,丫0)为(4,0)插补计算过程如表4所示。表9NR1插补计算过程步数偏差判别坐标进给偏差计算坐标修正终点判别起点F0=0X=4,Y=0E=81F0=0-XF1=0-2*4+1=-7X=3,Y=0E=72F10+YF2=-7+0+1=-6X=3,Y=1E=63F20+YF3=-6
21、+2*1+1=-3X=3,Y=2E=54F30-XF5=2-2*3+1=-3X=2,Y=3E=36F50-XF7=4-2*2+1=1X=1,Y=4E=18F70-XF8=1-2*1+1=0X=0,Y=4E=0根据上表,可作出步进电机的走步轨迹如图11所示。系统走步轨迹与下图比较,可判断出设计的正确性。图17步进电机走步轨迹七课程设计总结通过一个多星期的课程设计,我对这门课有了进一步的了解。学习过程中在老师的耐心指导下,有意识的培养和建立了我的思维能力,使我真正建立数据及信息流的概念,以便在控制应用中,能够使软件和硬件有机地结合。通过单片机对步进电机的控制系统设计,让我真正的掌握了微型计算机软件
22、和硬件相结合的设计方法。工业控制是计算机的一个重要应用领域,计算机控制正是为了适应这一领域的需要而发展起来的一门专门技术,它主要研究如何将计算机技术和自动控制理论应用于工业生产过程,并设计出所需要的计算机控制系统。而当代,随着微型计算机的高度发展。它的应用在人们的工作和日常生活中越来越普遍了。工业过程控制是计算机的一个重要应用领域。现在可以好不夸张的说,没有微型计算机的仪器不能乘为先进的仪器,没有微型计算机的控制系统不能称其为现代控制系统的时代已经到来。微型计算控制技术正为了适应这一领域的需要而发展起来的一门技术。绝大多数自动控制都是使用计算机来实现的;微型计算机控制技术的发展,使得以微型计算
23、机为控制器核心的微机测控装置与系统,渗透到了国民经济的各行各业,已经无时无处不在影响每个现代人的生活。只有态度认真的对待这门学科才能真正掌握其中的精髓,在将来的工作中或许起着至关重要的作用。八、参考文献1贺亚茹.汇编语言程序设计.北京:科学出版社,20052卜艳萍、周伟.汇编语言程序设计教程.北京:清华大学出版社,20043温玉杰.Intel汇编语言程序设计(第四版).北京:电子工业出版社,20044郑学坚、周斌.微型计算机原理与应用.北京:清华大学出版社,20005于海生.微型计算机控制技术.北京:清华大学出版社,19986沈美明、温冬婵.IBM-PC汇编语言程序设计.北京:清华大学出版社,
24、2002何立民.单片机应用系统设计.北京:北京航空航天大学出版社,200323东华理工大学计算机控制技术课程设计说明书图19可编程芯片8255A引脚图25附录一芯片资料0123456Bao.60,0,口6-If,J。JII41KIIIIP0.7ea/vppALE/PROG127126125124123122121120PL0c1V40PL1匚239PL2匚338PL3匚437Pl.4c536Pl.5匚635PL6匚734PL1匚833RSTApd匚932P3.0/RXD匚10311J3.1.1XD匚1130P3.2/INTO匚1229P3.3/1M1c1328P3.4/TO匚1427I53.5
25、/T1匚1526P3.6,忘匚1625P3.7/KL)匚1724XTAL2匚1823XTAL1匚1922Vss匚2021RESETDoDid2d3D,D55D?VCC+5V)PB7PB6PB5PB4PB,1二三三二二二二三一图188051单片机引脚图三三三三三一AAApppSDCNG1076540123012AACCCCCCCCBBBPPPPPPP.PPPP东华理工大学计算机控制技术课程设计说明书附录二源程序ORG0100H;控制口地址送DPTR;方式0, PA输入,PB、PC 口输出;将控制字写入控制口,初始化 8255MAIN:MOVDPTR,#7FFFHMOVA,#90HMOVXDPTR
26、,AN:ACALLINPUTMAINCJNEA,0D7H,NACALLNR4ACALLNR1ENDNR1:MOV4EH,?;XE的低8位存入4EHMOV4DH,?;XE的高8位存入4DHMOV4CH,?;YE的低8位存入4CHMOV4BH,?;YE的高8位存入4BHMOV52H,?;X的低8位存入52HMOV51H,?;X的高8位存入51HMOV50H,?;Y的低8位存入50HMOV4FH,?;Y的高8位存入4FHMOV4AH,#00H;F的低8位清零MOV49H,#00H;F的高8位清零CLRR2;表ADXN偏移量清零CLRR3;表ADYP偏移量清零MOVR6,#02H;在计算F=F+2*Y
27、+1时使用CLRC;计算总步数EMOVA,52HSUBBA,4EH;a=(X-Xe)低位MOV54H,A;(54H)=(X-Xe)低位MOVA,51HSUBBA,4DH;b=(X-Xe)高位MOV53H,ACLRCMOV20H,CADDA,54HMOV54H,AMOV21H,CMOVA,4BHMOVC,20HSUBBA,4FHMOVC,21HADDCA,53HMOV53H,A;取偏差的高8位;若 FM0,转至U RP6;否则,调XMN;计算新偏差:F-2*X+1;X=X-1RP2:MOVA,49HJBACC.7,RP6ACALLXMNACALLFMM1ACALLDECXRP4:CLRCMOVA
28、,54HSUBBA,#01HMOV54H,AMOVA,53HSUBBA,#00HMOV53H,AORLA,54HJNZRP2ORG8000HENDRP6:ACALLYMP41ACALLFMM2ACALLADDYAJMPRP4XMN:LOOP3:MOVDPTR,#ADXNMOVA,R2MOVCA,A+DPTRMOVDPTR,#7FFDHMOVXDPTR,ACJNEA,#03H,LOOP3MOVR2,#00HSJMPDELAY1INCR2;将控制字表地址赋给DPTH;表首偏移量送A;读取当前步进电机的控制字;PB口地址送DPTR;将步进电机的控制字传送到PB口;若未到表尾,转LOOP3;表首偏移量
29、清零;未到表尾,表首偏移量加1DELAY1:MOVR0,#FFHDJNZDELAY1RETYMP:MOVDPTR,#ADYPMOVA,R3MOVCA,A+DPTRMOVDPTR,#7FFEHMOVXDPTR,ACJNEMOVSJMPLOOP4:INCDELAY2:MOVA,#05H,LOOP4R3,#00HDELAY2R3R0,#FFH;将控制字表地址赋给DPTH;ADY表首偏移量送A;读取当前步进电机的控制字;PC口地址送DPTR;将步进电机的控制字传送到PC口;若未到表尾,转LOOP4表首偏移量清零;未到表尾,表首偏移量加1;延时DJNZDELAY2RETADXN:DB01H;-X方向走一
30、步步进电机控制字表DB05HDB04HDB06HDB02HDB03H;+Y方向走一步步进电机控制字表ADYP:DB01HDB03HDB02HDB06HDB04HDB05HFMM1:F=F-2*X+1CLRCMOVA,4AHSUBBA,52HXCHA,BMOVA,49HSUBBA,51HXCHA,BCLRCSUBBA,52HXCHA,BSUBBA,51HXCHA,BADDA,#01HMOV4AH,AXCHA,BADDCA,#00HMOV49H,ARETDECX:X=X-1CLRCMOVA,52HSUBBA,#01HMOV52H,AMOVA,51HSUBBA,#00HMOV51H,ARETFMM2
31、:F=F+2Y+1MOVA,4AHADDA,50HMOV4AH,AMOVA,49HADDCA,4FHMOV49H,ADJNZR6,FMM2MOVA,4AHADDA,#01HMOV4AH,AMOVA,49HADDCA,#00HMOV49H,ARETADDY:MOVA,50HADDA,#01HMOV50H,AMOVA,4FHADDCA,#00HMOV4FH,ARETNR4:MO/4EH,?;XE的低8位存入4EHMOV4DH,?;XE的高8位存入4DHMOV4CH,?;YE的低8位存入4CHMOV4BH,?;YE的高8位存入4BHMOV52H,?;X的低8位存入52HMOV51H,?;X的高8位存
32、入51HMOV50H,?;Y的低8位存入50HMOV4FH,?;Y的高8位存入4FHMOV4AH,#00H;F的低8位清零MOV49H,#00H;F的高8位清零CLRR3;表ADYP偏移量清零CLRR4;表ADXP偏移量清零MOVR6,#02H;在计算F=F+2*X+1时使用CLRC;计算总步数EMOVA,4EHSUBBA,52H;A=(Xe-X)低位MOV54H,A;(54H)=(Xe-X)低位MOVA,4DHSUBBA,51H;b=(X-Xe)高位MOV53H,A;(53H)=(Xe-X)高位CLRCMOVA,50HSUBBA,4CH;(A)=(Y-Ye)低位MOV20H,C;暂存借位位A
33、DD A,54HMOV 54H,AMOV 21H,CMOV A,4FHMOV C,20HSUBB A,4BHMOV C,21HADDC A,53HMOV 53H,ARP1: MOV A, 49HJB ACC.7, RP5ACALL YMPACALL FMM3ACALL DECYRP3: CLRCMOV A,54HSUBB A,#01HMOV 54H,AMOV A,53HSUBB A,#00HMOV 53H,AORL A,54HJNZ RP1ORG 8000HENDRP5: ACALLXMPACALL FMM4ACALL ADDX;d=a+c;保存E的低位;暂存d=a+G产生的进位位;计算Y-Y
34、e的高位;恢复借位位;(A)=(4BH)-(4FH)即(Ye-Y)高位;恢复低位相加进位位;计算(X-Xe)高位+(Y-Ye)高位;保存E的高位;取偏差的高8位;若FM0,转至URP5;否则,调YMP;计算新偏差:F-2*Y+1;Y=Y-1;E=E-1;+X方向走一步;F=F+2*X+1;X=X+1AJMPRP3YMP:MOVDPTR,#ADYP;将控制字表地址赋给DPTHMOVA,R3;ADY表首偏移量送ALOOP4:MOVCMOVMOVXCJNEMOVSJMPINCDELAY2:MOVDJNZRETXMPA,A+DPTRDPTR,#7FFEHDPTR,AA,#05H,LOOP4R3,#00
35、HDELAY2R3;读取当前步进电机的控制?PC口地址送DPTR将步进电机的控制字传送到PC口若未到表尾,转LOOP4表首偏移量清零未到表尾,表首偏移量加1R0,#FFHDELAY2延时MOVDPTR,#ADXP;将控制字表地址赋给DPTHMOVA,R4;表首偏移量送AMOVCA,A+DPTR;读取当前步进电机的控制字MOVDPTR,#7FFDH;PB口地址送DPTRMOVXDPTR,A;将步进电机的控制字传送到CJNEA,#05H,LOOP5;若未到表尾,转LOOP5MOVR4,#00H;表首偏移量清零SJMPDELAY3INCR2;未到表尾,表首偏移量加1LOOP5:;延时R0,#FFHP
36、B口DELAY3:MOVDJNZR0,DELAY3RETADXP:DB01H;-X方向走一步步进电机控制字表DB03HDB02HDB06HDB04HDB05H;+Y方向走一步步进电机控制字表ADYP:DB01HDB03HDB02HDB06HDB04HDB05HFMM3:F=F-2*Y+1CLRCMOVA,4AHSUBBA,50HXCHA,BMOVA,49HSUBBA,4FHXCHA,BCLRCSUBBA,50HXCHA,BSUBBA,4FHXCHA,BADDA,#01HMOV4AH,AXCHA,BADDCA,#00HMOV49H,ARETDECY:Y=Y-1CLRCMOVA,50HSUBBA,
37、#01HMOV50H,AMOVA,4FHSUBBA,#00HMOV4FH,ARETFMM4:F=F+2X+1MOVA,4AHADDA,52HMOV4AH,AMOVA,49HADDCA,51HMOV49H,ADJNZR7,FMM4MOVA,4AHADDA,#01HMOV4AH,AMOVA,49HADDCA,#00HMOV49H,ARETADDX:MOVA,52HADDA,#01HMOV52H,AMOVA,51HADDCA,#00HMOV51H,ARETINPUTMAIN:MOVR1,9FHMAIN1:输入X、Y的初值暂存于9FH开始的四个单元MOV DPTR,#TAB;LCALL KEY;MOV
38、C A,A+DPTR;MOV P0, AMOV R0,A;INC R0调用键盘扫描程序查表后将值送入累加器送P0口显示将键盘的数输入X、Y对应的单元CJNEA,0D7H,MAIN1RETKEY: LCALL KS;检测按键子程序JNZ K1;有键按下继续AJMP KEY;若无按键按下,返回继续检测K1:LCALLDELAY2LCALLDELAY2;有键按下继续延时去抖动LCALLKS;再一次调用检测按键程序JNZK2;确认有按下,进行下一步AJMPKEY;无按键按下,继续返回检测K2:MOVR2,#0EFH;将扫描值送入R2暂存MOVR4,#00H;R4用于存放列值,并将00H暂存K3:MOVP1,R2;L6:JBP1A0,L1;P1A0等于1跳转到L1MOVA,#00H;将第一行的行值00H送入ACCAJMPLK;跳转到键值处理程序L1:JBP1A1,L2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- ct购销合同范例
- 农业项目招商合同标准文本
- j酒店合同标准文本
- 货物运输合同范本(三方)
- 企业聘用合同标准文本
- 私人股权收购合同标准范本
- 使用合同标准文本优劣
- 出租婚纱电子合同范例
- 农场收购设备合同标准文本
- 购销合同争议诉讼答辩状
- 消防安全隐患排查试题及答案
- 2024年食品安全法管理知识试题库(含答案)
- 2025广西文化产业集团招聘174人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年度画家经纪业务合作协议书模板
- 2025年长春医学高等专科学校单招职业适应性考试题库参考答案
- DB37-T 5310-2025《城镇排水管渠养护维修服务规范》
- 微笑面对挫折(课件)六年级心理健康(苏科版)
- 2024-2030全球细胞治疗制造平台行业调研及趋势分析报告
- 2025届小米全球校园招聘启动(即将笔试)笔试参考题库附带答案详解
- 胆管癌手术护理
- 湖南省长沙市雨花区长沙市华益中学2024-2025学年九年级下学期开学考试英语试题(含答案无听力原文及音频)
评论
0/150
提交评论