《C616型普通车床改造为经济型数控车床.doc》由会员分享,可在线阅读,更多相关《C616型普通车床改造为经济型数控车床.doc(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上一、设计任务设计题目 C616型普通车床改造为经济型数控车床。1.1 设计要求由于是对原有机床进行经济型数控机床改造,因而在考虑具体方案时,基本原则是在满足使用要求的前提下,降低成本。根据C616车床有关资料,确定总体方案。采用控制器进行控制,控制选择电机的输出经齿轮减速后,带动滚珠丝杆转动,从而实现纵向、横向进给运动。图1 C616车床1.2 主要设计参数及技术指标主要设计参数及技术指标如下。机械部分:工作台重量:W=960N时间常数:T=30ms滚珠丝杆基本导程:L0=9mm行程:X=660mm Y=320mm脉冲当量:p=5m/step步进角:a=0.850/s
2、tep步进电机通电方式:四相八拍快速进给速度:Vmax=2m/min控制部分:采用单片机轨迹控制采用数字积分法(DDA)步进电机的控制二、总体方案设计2.1 数控系统运动控制方式的确定按照完成的加工制造任务,数控系统可分为点控制系统、点位直线控制系统和连续控制系统。于由要求C616车床能加工复杂轮廓零件,所以数控系统应该设计成连续路径控制型。2.2 伺服进给系统的选择 数控机床的伺服进给系统有开环、闭环之分。因为开环控制具有结构简单、设计制造容易、控制精度较好、容易调试、价格便宜、使用维修方便等优点。所以,本设计决定采用开环控制系统。 图2 开环控制系统2.3 控制器的选择 由于C616普通数
3、控机床经数控化改造后,实现控制性能的要求的控制算法不是很复杂。所以以MCS-51系列的8位单片机作为控制器,外扩存储器、D/A转换器、I/O接口电路、键盘、显示器等组成改造后机床的控制系统。2.4 进给传动机构 纵向进给机构的改造:拆去原有机床的溜板箱、光杠、丝杠以及安装机座,选用摩擦力小、传动效率和传动精度高的滚珠丝杠副,且由步进电机驱动。横向进给也是换以步进电机驱动的滚珠丝杠副。2.5 主传动系统保留主传动系统,即保留原有的主传动机构和变速操纵机构。但是主轴的正转、反转和停止由计算机控制。为了使机床能够加工螺纹,需要安装能够检测主轴位置的编码器。编码器既可以与主轴同轴安装,即安装在主轴的后
4、端,也可以通过1:1的同步带轮与主轴连接。 三、机械部分设计与计算3.1纵向进给系统的设计计算纵向进给已知参数: 工作台重量: W=960N时间常数: T=30ms滚珠丝杠基本导程: L0=9mm行程: S=640mm脉冲当量: p=5=0.005mm/step步进角: =0.85/step快速进给速度: Vmax=2mm/min3.1.1切削力计算 由机床设计手册和相关资料可知,切削功率式中 N电机功率,查机床说明书,N=4KW; 主传动系统总效率,一般为0.60.7取=0.65; K进给系统功率系数,取为K=0.96。则: 又因为 所以 式中 v切削线速度,取v=100m/min,即v=1
5、.67m/s,有主切削力 由机床设计手册中可知,在一般外圆车削时: FX =(0.10.6)FZ FY=(0.150.7) FZ取: 3.1.2 滚珠丝杠设计计算计算进给率引力()综合导轨车床丝杠的轴向力: 式中 K=1.15,f=0.150.18,取为0.16。则 计算最大动载荷负荷C 滚珠丝杠导程初选;取;T按15000h计算;取,;L以转为一单位。 寿命值 最大动负荷为 滚珠丝杠螺母的选型 根据滚珠丝杠的相关数据,可采用外循环螺纹调整预紧的双螺母滚珠丝杠副1列2.5圈,其额定动载荷为10700N,精度取3级,公称直径32mm,所以强度足够用。其结构如图3所示。图3 滚珠丝杠螺母结构传动效
6、率计算 传动效率按式计算,取;摩擦角取10,滚动摩擦因数一般为0.0030.004,则带入数据计算得 刚度验算丝杠的拉伸或压缩变形量。滚珠丝杠受工作负载引起的导程的变化量按式计算,式中,取A为,带入数据计算得滚珠丝杠受扭矩引起的导程变化量很小,可以忽略。 有效行程为,所以 由于两端采用推力球轴承,丝杠又进行了预拉伸,故其拉压刚度可以提高四倍,其实际变形量引起丝杠总的变形量 滚珠与螺纹滚道间接触变形。查阅资料可知,外循环螺纹,1列2.5圈滚珠和螺纹滚道接触变形量为,因进行了预紧,有 支撑滚珠丝杠轴承的轴向接触变形。采用51105型推力球轴承,滚动体直径,滚动体数量Z=14,轴向力,由公式可知,单
7、位需换算成kgf,则,代入计算: 因施加预紧力,故 根据以上计算: 已知精度等级为3级。行程为660mm,查表知,允许丝杠行程变动量偏差为15,所以刚度足够。稳定性计算 由于机床丝杠直径为30mm,现选用的丝杠直径为32mm,支承的方式不变,为一端固定、一端径向支承,丝杠固定端安装两个8105型推力球轴承和一个305型球轴承(外径要和原装配孔一致),支撑端安装一个3305型双列角接触球轴承,所以稳定性不存在问题,故不再验算。通常还需适当加大和机床结合部件的接触面积,以提高螺母座的局部刚度和接触强度,新设计的机床在工艺条件允许时,常常把螺母座或支承座与机床本体做成整体来增加刚度。3.1.3 齿轮
8、及转矩有关计算 步矩角,导程,脉冲当量,齿轮传动比:可选定的齿数为取=21,=50,=25,=45 表3-1齿轮传动参数 (单位:mm)齿数z21502545模数m2齿宽b20分度圆421005090齿顶圆461045494齿根圆37955585中心距7170转动惯量计算 齿轮的转动惯量:工作台质量折算到丝杠轴上的转动惯量:电动机的转动惯量很小可以忽略。因此,总的转动惯量: 所需转动力矩计算 快速空载启动时所需力矩:最大切削负载时所需力矩:快速进给时所需力矩:式中 Mamax 空载启动时折算到电机轴上的加速度力矩; Mf 折算到电机轴上的摩擦力矩; M0 由于丝杠预紧所引起,折算到电机轴上的附
9、加摩擦力矩; Mat 切削时折算到电机轴上的加速度力矩; Mt 折算到电机轴上的切削负载力矩。当,时 ,有 当,时,有 当时预加载荷,则:轴向最大切削力为向切削力,有所以,快速空载启动时所需力矩为最大切削负载时所需力矩为快速进给时所需力矩为=16.85 N由以上分析计算可知:所需最大力矩Mmax发生在快速启动时。3.2 横向进给系统的设计计算 横向进给已知参数 工作台重量: W=960N时间常数: T=30ms滚珠丝杠基本导程:L0=9mm行程: S=320mm脉冲当量: p=5=0.005mm/step步进角: =0.85/step快速进给速度: Vmax=2mm/min3.2.1切削力计算
10、横向进给量为纵向的1/31/2,取1/2,则切削力约为纵向的1/2。按经验公式取:3.2.2 滚珠丝杠设计计算计算进给率引力()燕尾导轨取K=1.4,f取0.2,G=320N,代入数据计算得 计算最大动载荷负荷C 滚珠丝杠导程初选;取;T按15000h计算;取,;L以转为一单位。代入数据计算得最大动负载为滚珠丝杠螺母的选型 跟据滚珠丝杠的相关数据,可采用外循环螺纹调整预紧的双螺母滚珠丝杠副1列2.5圈,其额定动载荷为8800N,精度取3级,公称直径20mm。传动效率计算 传动效率按式计算,取;摩擦角取10,滚动摩擦因数一般为0.0030.004,则带入数据计算得刚度验算丝杠的拉伸或压缩变形量。
11、滚珠丝杠受工作负载引起的导程的变化量按式计算,式中,取A为,带入数据计算得滚珠丝杠受扭矩引起的导程变化量很小,可以忽略。有效行程为,所以由于采用推力球轴承,丝杠又进行了预拉伸,故其拉压刚度可以提高四倍,其实际变形量珠与螺纹滚道间接触变形。查阅资料可知,外循环螺纹,1列2.5圈滚珠和螺纹滚道接触变形量为,因进行了预紧,有支撑滚珠丝杠轴承的轴向接触变形。采用51105型推力球轴承,滚动体直径,滚动体数量Z=14,轴向力,由公式可知,单位需换算成kgf,则,代入计算因施加预紧力,故根据以上计算: 已知精度等级为3级。行程为320mm,查表知,允许丝杠行程变动量偏差为12,所以刚度足够。稳定性计算 由
12、于机床改造后的滚珠丝杠直径与原来的丝杠直径相同,而支承方式由原来的一端固定、一端悬挂变为一端固定(采用51104)、一端径向支承(采用3304型双列角接触球轴承),稳定性增大,多以不再验算。3.2.3 有关齿轮计算 步矩角,导程,脉冲当量,齿轮传动比:可选定的齿数为取=21,=50,=25,=45 表3-2 齿轮传动参数 (单位:mm)齿数z21502545模数m2齿宽b20分度圆421005090齿顶圆461045494齿根圆37955585中心距7170转动惯量计算 齿轮的转动惯量:工作台质量折算到丝杠轴上的转动惯量:电动机的转动惯量很小可以忽略。因此,总的转动惯量:所需转动力矩计算 快速
13、空载启动时所需力矩:最大切削负载时所需力矩:快速进给时所需力矩:式中 Mamax 空载启动时折算到电机轴上的加速度力矩; Mf 折算到电机轴上的摩擦力矩; M0 由于丝杠预紧所引起,折算到电机轴上的附加摩擦力矩; Mat 切削时折算到电机轴上的加速度力矩; Mt 折算到电机轴上的切削负载力矩。当,时 ,有当,时,有当时预加载荷,则:轴向最大切削力为向切削力,有所以,快速空载启动时所需力矩为最大切削负载时所需力矩为快速进给时所需力矩为由以上分析计算可知:所需最大力矩Mmax发生在快速启动时。3.3步进电机的选择步进电机的选择的基本原则合理选用步进电机是比较复杂的问题,需要根据电机在整个系统中的实
14、际工作情况,经过分析后才能正确选择。现仅就选用步进电机最基本的原则介绍如下:步距角步距角应满足:式中 i传动比 min系统对步进电机所驱动部件的最小转角。精度步进电机的精度可用步矩误差或积累误差衡量。积累误差是指转子从任意位置开始,经过任意步后,转子的实际转角与理论转角之差的最大值。用积累误差衡量精度比较实用。所以选用不进电机应满足Qis式中 Q步进电机的积累误差; s系统对步进电机驱动部件允许的角度误差。转矩为了使步进电机正常运行(不失步、不越步),正常启动并满足对转速的要求,必须考虑:1)启动力矩 一般启动力矩选取为:式中 Mq电动机启动力矩; ML0电动机静负载力矩。根据步进电机的相数和
15、拍数,启动力矩选取如下表所示。Mjm为步进电机的最大静转矩,是步进电机技术数据中给出的。表3-3 步进电机相数、拍数、启动力矩表运行方式相数33445566拍数3648510612Mg /Mjm0.50.8660.7070.7070.8090.9510.8660.8662)在要求的运行频率范围内,电动机运行力矩应大于电动机的静载力力矩与电动机转动惯量(包括负载的转动惯量)引起的惯性矩之和。启动频率 由于步进电机的启动频率随着负载力矩和转动惯量的增大而降低,因此相应负载力矩和转动惯量的极限启动频率应满足:ftfcpm式中 ft极限启动频率; fcpm要求步进电机最高启动频率。步进电动机最高工作频
16、率3.3.1纵向进给系统步进电机的确定对于工作方式为四相八拍的步进电动机根据步进电动机型号,以及为了便于设计和采购选择70BF004型步进电动机,具体性能参数如下表:综合考虑能满足使用要求。3.3.2横向进给系统步进电机的确定对于工作方式为四相八拍的步进电动机根据步进电动机型号,以及为了便于设计和采购选择70BF004型步进电动机,具体性能参数如下表:综合考虑能满足使用要求。四、单片机控制系统硬件电路设计4.1微机控制系统硬件的选择根据任务书的要求,设计控制系统的硬件电路时主要考虑以下功能:(1) 接收键盘数据,控制LED显示(2) 接受操作面板的开关与按钮信息;(3) 接受车床限位开关信号;
17、(4) 接受编码器信号;(5) 控制横纵向步进电动机的驱动器;(6) 控制主轴的正转,反转与停止;(7) 其它。考虑到通用性以及普遍性,选择MCS-51系列中的8031芯片。8031芯片属于8位单片机。它是集CPU、I/O口及部分RAM等一体的控制器,价格低,但功能全,编程灵活性大,硬件资源丰富。由于8031单片机内部无ROM,128字节的RAM也无法满足要求,所以需要外扩程序存储器和数据存储器。根据控制要求,还需要有键盘、数码显示器、D/A转换器以及一些I/O接口。现采用8255A和2764、6264作为I/O接口和存储器扩展芯片。显示器采用LED数码显示。延时可以利用8255的定时器/计数
18、器。4.2 8031单片机8031各引脚功能简要介绍如下:图4-1 80314.2.1源引脚Vss:电源接地端。Vcc:+5v电源端。4.2.2输入/输出(I/O)口线8031单片机有P0、P1、P3、P4四个端口,每个端口8根I/O线。当系统扩展外部存储器时,P0口用来输出低8位并行数据,P2口用来输出高8位地址,P3口除可作为一个8位准双向并行口外,还具有第二功能。在进行第二功能操作前,对第二功能的输出锁存器必须由程序置1。4.2.3信号控制线RST/VPD:RST为复位信号线输入引脚,在时钟电路工作以后,该引脚上出现两个机器周期以上的高电平,完成一次复位操作。Vpp:当EA为高电平且PC
19、值小于0FFFH时CPU执行内部程序存储器中的程序。当EA为低电平时,CPU仅执行外部程序存储器中的程序。XTAL1:振荡器的反相放大器输入,使用外部震荡器时必须接地;XTAL2:振荡器的反响放大器输出,使用外部振荡器时,接受外围震荡信号;4.3 8255A可编程并行I/O口扩展芯片8031单片机共有4个8位并行I/O接口,但供用户使用的只有P1口及部分P3口线,因此要进行I/O口的扩展。8255A与微机接口较简单,是微机系统广泛使用的接口芯片。根据功能需求,选择两片8255A,一片扩展接口主要完成步进电动机的脉冲输出、限位及键盘输入等信号处理,另外一片8255A扩展接口完成手动调整、刀架控制
20、及螺纹信号的输出、输入信号的处理。8255A可编程并行I/O口扩展芯片可以直接与MCS系列单片机系统总线连接,它具有三个8位的并行I/O口,具有三种工作方式,通过编程能够方便地采用无条件传送、查询传送、中断传送方式完成CPU与外围设备之间的信息交换。8255A引脚图如下: 图4-2 8255A引脚图8255A的结构:8255A的内部结构包括三个8位并行数据I/O口,两个工作方式控制电路,一个读写控制逻辑电路和一个8位数据总线缓冲器。三个8位并行I/O口A、B、CA口:具有一个8位数据输出锁存/缓冲器和一个8位数据输入锁存器,可编程为8位输入、或8位输出、或8位双向寄存器。B口:具有一个8位数据
21、输出锁存/缓存器和一个8位输入或输出寄存器,但不能双向输入/输出。C口:具有一个8位数据输出锁存/缓存器和一个8位输入缓冲器,C口可分为两个4位口,用于输入或输出,也可作为A口和B口选通方式工作时的状态控制信号。8255扩展I/O口如图 4-3所示。图4-3 8255扩展I/O口4.4 外部EPROM电路单片机外部扩展常用的程序存储器扩展芯片是EPROM,其掉电后信息不会丢失,且只有在紫外线的照射下,存储器的单元信息才可以擦除。考虑到程序存储器的容量,本设计扩展芯片采用2764EPROM,扩展28KB的程序存储容量。2764芯片28引脚,其主要有16根地址线,8根数据线,片选端,输出允许端等。
22、由于EPROM一般不含有地址锁存器,因此8031的P0口要经过机制锁存器74LS373与EPROM低8位地址端相连,P2口与2764高8为地址端相连。数据线有8031的P0口直接与2764的8位数据端相连。控制线的链接。2764的OE端与8031的PSEN相连。ALE与74LS373的OC端相连。图4-4 扩展2764EPROM4.5 外扩RAM电路数据存储器扩展主要用于存储现场采集的原始数据。运算结果等。所以扩展的外部数据存储器应能随机读/写,通常由半导体静态随机读/写存储器RAM组成。本设计扩展芯片采用一片6264,扩展8KB的数据存储容量。6264芯片为28引脚,主要有15个地址端(A0
23、A14)、8个双向三态数据端、片选端、读选通端、写允许端等。地址连接:8031的低八位地址经P0口通过74LS373与6264的低八位地址端相连,高位地址线只用7根与6264的高7为地址端相连。在数据线链接上,同2764芯片一样,P0口直接与6264数据端相连。控制端链接,片选端应接8031的P2.7端,OE、WE分别于8031的RD、WE端相连接来控制6264的读写。4-5扩展6264电路4.6四行四列矩阵式键盘图4-6是矩阵式键盘原理图,图中键盘为四行四列共16个键,行扫描线分别接到8031单片机的P1.0P1.3口上;列扫描线分别接到8031单片机的P1.4P1.7口上。第一行按键从左到
24、右对应数字79和代码G,第二行按键从左到右依次对应数字46和ENTER(确认),第三行按键从左到右对应数字13和START(开始),第四行按键从左到右依次为X(表示X坐标)、数字0、Y(表示Y坐标)和(负号)。图4-6 四行四列矩阵式键盘原理图4.7 显示器图4-7 6位数码管显示电路使用的是6位数码管如图4-7所示,引脚A、B、C、D、E、F、G和DP是数码管的段驱动信号输入端口;引脚1、2、3、4、5和6分别是数码管的位选择信号输入端口。该显示器能及时的显示键盘电路输入的指令。4.8 X-Y向步进电机控制电路分析图4-8 X/Y向步进电机控制电路模拟图图4-8为X/Y向步进电机控制电路模拟
25、图,从图中我们可以看到四相八拍步进电机通过8255A的PC0PC3口分别向X向步进电机输入脉冲信号,PC4PC7则分别向Y向步进电机输入脉冲信号。四相八拍步进电机的正转相序是AABBBCCCDDDA,反转相序是DADCDCBCBBAA;表4-1将给出X向步进电动机正转时PC口各引脚输出电平与X向电机相位关系;表4-2将给出Y向步进电动机正转时PC口各引脚输出电平与Y向电机相位关系;而反转时,控制的方式只需把从上往下循环改为从下往上循环即可。表4-1 X向步进电动机正转时PC口各引脚输出电平与X向电机相位关系X向步进电机相位可编程控制器8255A的PC口各引脚的电平PC口输出的16进制数PC0P
26、C1PC2PC3PC4PC5PC6PC7A100000000x01AB110000000x03B010000000x02BC011000000x06C001000000x04CD001100000x0cD000100000x08DA100100000x09表4-2 Y向步进电动机正转时PC口各引脚输出电平与Y向电机相位关系Y向步进电机相位可编程控制器8255A的PC口各引脚的电平PC口输出的16进制数PC0PC1PC2PC3PC4PC5PC6PC7A000010000x10AB000011000x30B000001000x20BC000001100x60C000000100x40CD00000
27、0110xc0D000000010x80DA000010010x90五、软件设计5.1系统控制功能分析系统控制功能包括:(1)系统初始化。如对I/O接口8255A进行必要的初始化工作,预置接口工作方式控制字。(2)工作台复位。开机后工作台应该自动复位,亦可手动复位。(3)输入和显示加工程序。(4)监视按键,键盘及开关。如监视紧急停机键及行程开关,键盘扫描等功能。(5)工作台超程显示与处理。工作台位移超过规定值时应该立即停止工作台的运动,并显示相应的指示字符。(6)工作台的自动控制。(7)工作台的手动控制。(8)工作台的联动控制。5.2系统管理程序控制管理称许是系统的主程序,开机后即进入管理程序
28、。其主要功能是接受和执行操作者的命令。在设计管理程序时,应确定接收命令的形式,系统的各种操作功能等。数控X-Y工作台的基本操作功能有:输入加工程序,自动加工,刀位控制,工作台位置控制,手动操作,紧急停机等。根据以上分析,设计管理程序流程图如下所示:图5-1管理程序流程5.3自动加工程序设计(1)机床在自动加工时的动作顺序:工作台移动到位刀具快速进给加工退刀工作台运动到下一位置;(2)计算机在加工过程中的操作:读取刀具轨迹,控制机床完成加工;(3)由以上分析,设计自动加工程序框图如下所示:图5-2自动加工程序流程5.4 电机的控制电机与8255引脚的接线简图如图所示图5-3电机与8255引脚的接
29、线简图X、Y电机对应的内存地址如下8255控制控制口地址为4BH,PC口地址为48H。正转X电机电机状态Y电机反转内存地址状态内容内存地址状态内容08H00H15H00H09H01HA16H10H0AH03HAB17H30H0BH02HB18H20H0CH06HBC19H60H0DH04HC1AH40H0EH0CHCD1BHC0H0FH08HD1CH80H10H09HDA1DH90H11H00H1FH00H5.5程序清单MAIN:MOV SP,#60H ;主程序开始 MOV R0,#4BH ;8255初始化 MOV A,#80H ;设置A、C口方式0输出 MOVX R0,A MOV R5,#0
30、8H MOV R6,#17H CLR A ;位清零使表头表尾为0 MOV 08H,A MOV 10H,A MOV 17H,A MOV 1FH,A MOV R0,#09H ;装X电机状态码到内存 MOV R0,#01H INC R0 MOV R0,#03H INC R0 MOV R0,#02H INC R0 MOV R0,#06H INC R0 MOV R0,#04H INC R0MOV R0,#0CHINC R0MOV R0,#08HINC R0MOV R0,#09H MOV R0,#16H ;装Y电机状态码到内存 MOV R0,#10H INC R0 MOV R0,#30H INC R0 M
31、OV R0,#20H INC R0 MOV R0,#60H INC R0 MOV R0,#40H INC R0 MOV R0,#C0HINC R0 MOV R0,#80HINC R0 MOV R0,#90HLOR4:MOV 28H,#0C8H ;Xe MOV 29H,#0C8H ;Ye MOV 2AH,#00H ;X MOV 2BH,#00H ;Y MOV 2EH,#00H ;F MOV 70H,#0AH ;电机初始状态LOP3:MOV A,2EH ;偏差送到A口 JB ACC.7,LOP1 ;F0跳到LOP1Y转 MOV A,70H SETB ACC.0 ;D0=1X转 CLR ACC.2
32、;D2=0Y不转 MOV 70H,A ;送控制字 LCALL MOTR ;X方向走一步 MOV A,2EH ;偏差送到A SUBB A,29H ;F-Ye INC 2AH ;X+1 AJMP LOP2 ;跳转到LOP2进行偏差判断LOP1:MOV A,70H SETB ACC.2 ;D2=1Y转 CLR ACC.0 ;D0=0X不转 MOV 70H,A ;送控制字 LCALL MOTR ;Y方向走一步 MOV A,2EH ;偏差送到A ADD A,28H ;F+Xe INC 2BH ;Y+1LOP2:MOV 2EH,A ;将A的偏差送到2EH单元 MOV A,28H CJNE A,2AH,LO
33、P3 ;Xe=X? MOV A,29H CJNE A,2BH,LOP3 ;Ye=Y? AJMP STMOTR:MOV A,70H ;MOTR子程序,查看控制字 JNB ACC.0,Y ;D0=!1,X不转,则执行Y(Y转) X:JNB ACC.1,XF ;D1=!1,X不转,则执行XF XZ:INC R5 ;X正转地址指针R5+1 MOV A,R5 ;从代码表中取R5指向的代码到A MOV R0,A MOV A,R0 CJNE A,#00H,LP1 ;判断是否到表底,不是则执行LP1 MOV R5,#09H ;到表底则重新指向表首 MOV A,R5 ;从代码表中取R5指向的代码到A MOV R
34、0,A MOV A,R0 LP1:MOV R1,#48H ;PC口输出 MOVX R1,A MOV A,#08H LCALL YANS ;延时两行 RET XF:DEC R5 ;X正转地址指针R5-1 MOV A,R5 ;从代码表中取R5指向的代码到A MOV R0,A MOV A,R0 CJNE A,#00H,LP2 ;判断是否到表头,不是则执行LP2 MOV R5,#10H ;到表头则重新指向表底 MOV A,R5 ;从代码表中取R5指向的代码到A MOV R0,A MOV A,R0 LP2:MOV R1,#48H ;PC口输出 MOVX R1,A MOV A,#08H LCALL YAN
35、S ;延时两行 RETY: JNB ACC.3,YF ;D3=!1,X不转,则执行X(X转) YZ:INC R6 ;Y正转地址指针R6+1 MOV A,R6 ;从代码表中取R5指向的代码到A MOV R0,A MOV A,R0 CJNE A,#00H,LP3 ;判断是否到表底,不是则执行LP3 MOV R6,#16H ;到表底则重新指向表首 MOV A,R6 ;从代码表中取R5指向的代码到A MOV R0,A MOV A,R0 LP3:MOV R1,#48H ;PC口输出 MOVX R1,A MOV A,#15H LCALL YANS ;延时 RET YF:DEC R6 ;Y正转地址指针R6-
36、1 MOV A,R6 ;从代码表中取R6指向的代码到A MOV R0,A MOV A,R0 CJNE A,#00H,LP4 ;判断是否到表头,不是则执行LP4 MOV R6,#26H ;到表头则重新指向表底 MOV A,R6 ;从代码表中取R5指向的代码到A MOV R0,A MOV A,R0 LP4:MOV R1,#48H ;PC口输出 MOVX R1,AMOV A,#15H ;延时LCALL YANS RETYANS: PUSH 02H ;延时子程序LOS3:PUSH 02HLOS2:PUSH 02HLOS1:DJNZ R2,LOS1 POP 02H DJNZ R2,LOS2 POP 02H DJNZ R2,LOS3 POP 02H DJNZ R2,YANS RETST:MOV R1,#48H MOV A,#00H MOVX R1,A ;电机掉电 MOV R0,#4BH ;关8255 MOV A,#00H MOVX R0,A