当前位置:文档之家› 电梯控制器设计

电梯控制器设计

单片机原理与应用技术课程设计报告(论文)基于单片机的电梯控制器的设计专业班级:电子132班姓名:耿彦时间:11.30——12.20指导教师:苏珂珂2015 年 12 月 18 日电梯控制器课程设计任务书1.设计目的与要求1.1 基本功能(1)显示:本设计要求实现6层控制,实时显示电梯所在楼层位置。

(2)升降控制:采用一台电动机的正反转来实现电梯的升降。

(3)具备不可逆响应的功能:电梯上升途中只响应上升呼叫,下降途中只响应下降呼叫,任何反方向呼叫均无效。

1.2 扩展功能(1)可增加人性化的按键语音服务功能。

(2)可增加遥控或感应操作功能。

2.设计内容(1)画出电路原理图,正确使用逻辑关系;(2)确定元器件及元件参数;(3)进行电路模拟仿真;(4)SCH文件生成与打印输出;3.编写设计报告写出设计的全过程,附上有关资料和图纸,有心得体会。

4.答辩在规定时间内,完成叙述并回答问题。

基于单片机的电梯控制器设计电子132 耿彦摘要:单片机即单片微型计算机(Single-Chip Microcomputer ),是集CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。

其中52单片机是各种单片机中最为典型和最有代表性的一种,广泛应用于各个领域.电梯是集机械原理应用、电气控制技术、微处理器技术、系统工程学等多学科和技术分支于一体的机电设备,它是建筑中常用的交通工具。

本设计选择AT89C52为核心控制元件,设计了一个六层电梯系统,使用C语言进行编程,实现运送乘客到任意楼层,并且实时显示电梯的楼层和电梯上下情况。

利用单片机控制电梯有成本低,通用性强,灵活性大及易于实现复杂控制等优点。

关键词:电梯、AT89C52 、LED显示、电机正反转控制、楼层显示1 引言随着人们生活水平的不断提高和国名经济的迅速发展。

各大城市建筑物在不断向高层化发展。

因此电梯在我们的生活中起着举足轻重的作用。

电梯已不仅是一种生产环节中的重要设备,更是一种人们频繁乘用的交通运输设备。

因此电梯控制技术也在不断的进步和完善,常用的控制技术主要的有两种技术:基于PLC控制和基于单片机控制两大技术。

用PLC控制的电梯性能可靠、稳定,但是造价太高。

基于单片机控制的电梯可以大大的降低成本而且运行也较可靠,所以现在电梯控制中大多数采用单片机控制。

本文基于单片机89SC51来控制各部分电路,采用单片机构成控制系统,可大大降低成本,而且做成专用控制系统,程序被固化,加强了保密性,提高了可靠性。

2 总体设计方案电梯控制系统由外部呼叫,内部呼叫,电机控制电路,楼层显示部分等组成。

电梯在各楼层的定位本应采用行程开关或者传感器,由于条件限制,采用延时控制。

相邻楼层间升降时间设为5秒。

2.1 设计思路本设计的总思想是,用开关按钮做单片机的控制端来做作为输入信号,说明人在那一层,用七段数码管来显示电梯位置。

当电梯到达要求的楼层时,停止、开门,并继续查询有无呼叫信号,如此循环,同时可以利用单片机外部的复位按钮使电梯复位。

用单片机来控制电机的正反转来运行电梯的上、下,用发光二极管来显示电梯是上升还是下降,并且整体电梯全部采矩阵键盘来实现。

由于设计中有不可逆控制,当上升或下降过程中,只相应同方向的呼叫相应。

2.2 总体设计框图本电路主要由5大部分电路组成:键盘电路、单片机最小系统电路、楼层显示电路、电机状态显示电路、电机控制电路。

其中单片机最小系统主要由复位电路和时钟电路组成。

电路复位后楼层显示数字1 表示电梯此时在一楼,显示电路通过74ls245串入并出驱动8位数码管显示,电梯楼层位置是由延时电路控制的,每层之间通过3秒延时控制即每延时3秒表示电梯走了一层。

电梯状态是通过两个发光管显示的,绿灯亮表示电梯在向上运行,黄灯亮表示电梯在向下运行。

键盘电路采用4×4矩阵键盘(共16个按键),其中10个按键是各层楼外呼按键,6个表示电梯内部的选择键。

电梯的正常工作是通过对单片机写入程序控制的。

总体设计方框图如图一所示:图1 设计方框图3 电梯控制系统原理分析3.1单片机最小系统电路的设计此电路组要是复位电路和时钟电路两部分,其中复位电路采用按键手动复位和上电自动复位组合,电路如图二(右)所示:其中9 脚为单片机的复位端。

时钟电路如图二(左)所示:晶振采用的是12MHZ 的,XATL2和XATL1分别为单片机的18和19脚。

图2 单片机最小系统电路图3.2 控制电路的设计3.2.1 电梯内外部呼叫电路设计AT89C52楼层显示电路键盘电路时钟电路复位电路电机控制电路电机状态显示图3 键盘矩阵由于本电路所需按键较多为了节省单片机的I/O口,故选用行列式键盘矩阵。

本设计采用的是4×4键盘矩阵。

电路如图3-4所示,P1.0~P1.7是接单片机的P1口,单片机采用行列扫描法判断这16个键哪个键按下,并将其标号输入寄存器R0,R1里面,再进行设定公式的计算出相应的键值输入到累加器A中,然后根据累加器A的值来转移到指定的程序,通过单片机控制电梯的运行。

键值说明如表一表一键值定位键位功能键值键位功能键值S1 内部二楼按键0x00 S9 外部二楼向下按键0x18 S2 内部四楼按键0x03 S10 外部三楼向下按键0x1B S3 内部六楼按键0x09 S11 外部四楼向下按键0x1E S4 外部六楼向下按键0x0c S12 外部五楼向下按键0x21 S5 内部一楼按键0x0f S13 外部二楼向上按键0x24 S6 内部三楼按键0x12 S14 外部三楼向上按键0x27 S7 内部五楼按键0x15 S15 外部四楼向上按键0x2A S8 外部一楼向上按键0x16 S16 外部五楼向上按键0x203.2.2 显示楼层电路显示电路的作用是显示电梯所在楼层,用一个七段共阴数码管来实现,本设计用74ls245驱动数码管,其管脚接单片机P0P2口,公共端接地。

电路如图6所示,共阴数码管码值表如表二所示。

图4 显示楼层电路表二数码管码值表显示字型共阴极共阳极显示字型共阴极共阳极03FH C0H 8 7FH 80H106H F9H 9 6FH 90H25BH A4H A 77H 88H34FH B0H B 7CH 83H466H 99H C 39H C6H56DH 92H D 5EH A1H67DH 82H E 79H 86H707H F8H F 71H 8EH3.2.3电梯位置与指示电路在本次设计中为了方便显示电梯上行与下行,所以采用两个发光二极管来表示,如图五所示:用单片机的P3口做输出口,由74LS245驱动发光二极管,其中P3.0表示电梯下行,P3.7表示电梯下行,P3.1-P3.6表示为电梯一楼到六楼。

其中上行下行灯亮则表示电梯的动作,如当上行为亮,下行为灭时,则表示电梯当前状态是上行,反之亦然;楼层指示灯亮则表示电梯现今所在楼层,如当三楼亮,而其他为灭,则表示电梯当前所在楼层为三楼,而其他楼层的状态设定也是如此。

图5 电梯位置与指示电路4 程序流程图4.1主程序流程图图6 主程序流程图调用选择当前要去的楼层子程序停留5s电梯未运行或虽运行但还没停止电梯已到目的层?是否是否启动电梯显示在一楼4.2 选择楼层子程序流程图图7 选择要去的楼层子程序流程图电梯改为上升电梯改为下降电梯到达最顶层电梯到达最底层电梯在下降当前楼层=目的楼层继续下行查找下一个要去的楼层若无下行需求,则反向查询向上查找下一个要去的楼层若无按键需求则停止当前楼层=目的楼层延时等待5s开始是是是是是延时等待5s否否否否5 总结与体会通过这次单片机实习,使我在各方面都有了很大的提高,特别是在单片机编程方面让我有了很大的进步。

以前学习理论知识的时候我就对一些指令的应用不理解,现在自己动手编程了,通过这前两星期查找资料和单片机的实例应用,我对以前的不懂知识进行了全面的复习和新的学习。

这次实习在硬件设计方面我没遇到多大的问题,遇到的主要问题是在软件设计方面,由于刚开始我对编程没一点经验,所以没有很好的设计思路就开始编程了,结果刚编的过程中遇到了很多的问题,最后经过同学的帮助,我的程序才慢慢的编成了。

我设计的电梯自动控制用到了电机我们用二极管模拟,实物出来时,没能成功实现功能,让我们知道了理论与实际的差距,也意识到理论与实际相结合的重要性。

在写程序时需要极大的耐心,一点一点的改正,达到想要的效果,使自己的编程能力不断的提高!参考文献[1] 沈德全.mcs51系列单片机接口电路与应用程序实例[M].北京:北京航空航天大学出版社,2006.8[2] 张毅刚,彭喜元.单片机原理与应用设计[M].北京:电子工业出版社,2008 .4[3] 张大明.单片机微机控制应用技术[M].北京:机械工业出版社,2006.4[4] 刘瑞新.单片机原理及应用教程[M].机械工业出版社, 2003.7[5] 李朝青.单片机原理及接口技术[M].北京:北京航空航天大学出版社,2006.10附录1:图1 总体电路图图2 PCB电路图附录二:电梯控制器设计原程序DOND EQU 23h.0 YILD EQU 23h.1 ERLD EQU 23h.2 SALD EQU 23h.3 SILD EQU 23h.4 WULD EQU 23h.5 LILD EQU 23h.6 UPD EQU 23h.7 PP1 EQU P1PP2 EQU P2PP3 EQU P0PP0 EQU P3N_YIL EQU 20H.0N_ERL EQU 20H.1N_SAL EQU 20H.2N_SIL EQU 20H.3N_WUL EQU 20H.4N_LIL EQU 20H.5 W_ERUP EQU 21H.0 W_SAUP EQU 21H.1 W_SIUP EQU 21H.2 W_WUUP EQU 21H.3 W_YIUP EQU 21H.4 W_ERDO EQU 21H.0 W_SADO EQU 21H.1 W_SIDO EQU 21H.2 W_WUDO EQU 21H.3 W_LIDO EQU 21H.4 YIL EQU 30HERL EQU 31HSAL EQU 32HSIL EQU 33HWUL EQU 34HLIL EQU 35HXJL EQU 36H SHUMA EQU 37H ORG 00HLJMP MAINORG 39HMAIN:MOV SP,#0f2h MOV XJL,#30H MOV SHUMA,#0 MOV P2,#00HMOV P0,#02HMOV P3,#06HSTART:MOV R0,#00HMOV R1,#00HCLR P0.0CLR P0.7MOV P1,#0FHMOV 20H,#00HMOV 21H,#00HMOV 22H,#00HSETB P3.7SCAN:MOV A,P1CPL AANL A,#0FHJZ SCANLCALL DY10MSKEYBOARD:MOV P1,#0FHMOV A,P1ANL A,#0FHC1:CJNE A,#0EH,C2MOV R1,#1JMP ROWC2:CJNE A,#0DH,C3MOV R1,#2JMP ROWC3:CJNE A,#0BH,C4MOV R1,#3JMP ROWC4:CJNE A,#07H,ksendMOV R1,#4ROW:MOV P1,#0F0HNOPMOV A,P1ANL A,#0F0HROW1:CJNE A,#0E0H, ROW2 MOV R0,#1JMP COUNTROW2:CJNE A,#0D0H,ROW3MOV R0,#2JMP COUNTROW3:CJNE A,#0B0H,ROW4MOV R0,#3JMP COUNTROW4:CJNE A,#070H,ksend MOV R0,#4COUNT:DEC R0DEC R1MOV A,R1MOV B,#3MUL ABMOV R1,AMOV B,#12MOV A,R0MUL ABADD A,R1 KSNEW:MOV DPTR,#KEYCODES JMP @A+DPTRNOPNOPKSEND:LJMP START KEYCODES:LJMP ANNIU0LJMP ANNIU1LJMP ANNIU2LJMP ANNIU3LJMP ANNIU4LJMP ANNIU5LJMP ANNIU6LJMP ANNIU7LJMP ANNIU8LJMP ANNIU9LJMP ANNIUALJMP ANNIUBLJMP ANNIUCLJMP ANNIUDLJMP ANNIUELJMP ANNIUF ANNIU0:SETB N_ERLLJMP BIJIA01ANNIU1:SETB N_SILLJMP BIJIA01ANNIU2:SETB N_LILLJMP BIJIA01ANNIU3:SETB W_LIDOMOV A,#LILCJNE A,XJL,KAI6CLR P3.7KAI6:MOV P2,#7DHLCALL DY2SLJMP BIJIA01 ANNIU4:SETB N_YILLJMP BIJIA01 ANNIU5:SETB N_SALLJMP BIJIA01 ANNIU6:SETB N_WULLJMP BIJIA01 ANNIU7:SETB W_YIUPMOV A,#YILCJNE A,XJL,KAI1CLR P3.7KAI1:MOV P2,#06HLCALL DY2SLJMP BIJIA01 ANNIU8:SETB W_ERDOMOV A,#ERLCJNE A,XJL,KAID2CLR P3.7KAID2:MOV P2,#5BhLCALL DY2SLJMP BIJIA01 ANNIU9:SETB W_SADOMOV A,#SALCJNE A,XJL,KAID3CLR P3.7KAID3:MOV P2,#4FhLCALL DY2SLJMP BIJIA01 ANNIUA:SETB W_SIDOMOV A,#SILCJNE A,XJL,KAID4CLR P3.7KAID4:MOV P2,#66hLCALL DY2SLJMP BIJIA01 ANNIUB:SETB W_WUDOMOV A,#WULCJNE A,XJL,KAID5CLR P3.7KAID5:MOV P2,#6DhLCALL DY2SLJMP BIJIA01 ANNIUC:SETB W_ERUPMOV A,#ERLCJNE A,XJL,KAIU2CLR P3.7KAIU2:MOV P2,#5BhLCALL DY2SLJMP BIJIA01 ANNIUD:SETB W_SAUPMOV A,#SALCJNE A,XJL,KAIU3CLR P3.7KAIU3:MOV P2,#4FhLCALL DY2SLJMP BIJIA01 ANNIUE:SETB W_SIUPMOV A,#SILCJNE A,XJL,KAIU4CLR P3.7KAIU4:MOV P2,#66hLCALL DY2SLJMP BIJIA01 ANNIUF:SETB W_WUUPMOV A,#WULCJNE A,XJL,KAIU5CLR P3.7KAIU5:MOV P2,#06DhLCALL DY2SLJMP BIJIA01LJMP STARTBIJIA01:MOV A,#YILSETB P3.7CJNE A,XJL,BIJIA02JBC W_ERUP,QA0JBC W_ERDO,QA0JBC W_SAUP,QA1JBC W_SADO,QA1JBC W_SIUP,QA2JBC W_SIDO,QA2JBC W_WUUP,QA3JBC W_WUDO,QA3JBC W_LIDO,QA4JBC N_ERL,QA0JBC N_SAL,QA1 JBC N_SIL,QA2JBC N_WUL,QA3JBC N_LIL,QA4LJMP BACKQA0:LJMP ANOQA1:LJMP AN1QA2:LJMP AN2QA3:LJMP AN3QA4:LJMP AN4BIJIA02:MOV A,#ERLCJNE A,XJL,BIJIAO3 JBC W_YIUP,QB0JBC W_SAUP,QB1JBC W_SADO,QB1JBC W_SIUP,QB2JBC W_SIDO,QB2JBC W_WUUP,QB3JBC W_WUDO,QB3JBC W_LIDO,QB4JBC N_YIL,QB0JBC N_SAL,QB1JBC N_SIL,QB2JBC N_WUL,QB3JBC N_LIL,QB4LJMP BACKQB0:LJMP BN0QB1:LJMP BN1QB2:LJMP BN2QB3:LJMP BN3QB4:LJMP BN4BIJIAO3:MOV A,#SALCJNE A,XJL,BIJIAO4 JBC W_YIUP,QC0JBC W_ERUP,QC1JBC W_ERDO,QC1JBC W_SIUP,QC2JBC W_SIDO,QC2JBC W_WUUP,QC3JBC W_WUDO,QC3JBC W_LIDO,QC4JBC N_YIL,QC0JBC N_ERL,QC1JBC N_SIL,QC2JBC N_WUL,QC3JBC N_LIL,QC4LJMP BACKQC0:LJMP CN0QC1:LJMP CN1QC2:LJMP CN2QC3:LJMP CN3QC4:LJMP CN4BIJIAO4:MOV A,#SILCJNE A,XJL,BIJIAO5 JBC W_YIUP,QD0JBC W_ERUP,QD1JBC W_ERDO,QD1JBC W_SAUP,QD2JBC W_SADO,QD2JBC W_WUUP,QD3JBC W_WUDO,QD3JBC W_LIDO,QD4JBC N_YIL,QD0JBC N_ERL,QD1JBC N_SAL,QD2JBC N_WUL,QD3JBC N_LIL,QD4LJMP BACKQD0:LJMP DN0QD1:LJMP DN1QD2:LJMP DN2QD3:LJMP DN3QD4:LJMP DN4BIJIAO5:MOV A,#WULCJNE A,XJL,BIJIAO6 JBC W_YIUP,QE0JBC W_ERUP,QE1JBC W_ERDO,QE1JBC W_SAUP,QE2JBC W_SADO,QE2JBC W_SIUP,QE3JBC W_SIDO,QE3JBC W_LIDO,QE4JBC N_YIL,QE0JBC N_ERL,QE1JBC N_SAL,QE2JBC N_SIL,QE3JBC N_LIL,QE4LJMP BACK QE0:LJMP EN0QE1:LJMP EN1QE2:LJMP EN2QE3:LJMP EN3QE4:LJMP EN4BIJIAO6:MOV A,#LILCJNE A,XJL,BACKJBC W_YIUP,QF0JBC W_ERUP,QF1JBC W_ERDO,QF1JBC W_SAUP,QF2JBC W_SADO,QF2JBC W_SIUP,QF3JBC W_SIDO,QF3JBC W_WUUP,QF4JBC W_WUDO,QF4JBC N_YIL,QF0JBC N_ERL,QF1JBC N_SAL,QF2JBC N_SIL,QF3JBC N_WUL,QF4 BACK: LJMP STARTQF0:LJMP FN0QF1:LJMP FN1QF2:LJMP FN2QF3:LJMP FN3QF4:LJMP FN4ANO:SETB UPDSETB ERLDMOV P2,#5BhJBC W_ERUP,ANOJBC W_ERDO,ANOJBC N_ERL,ANOLOOPP12:LCALL JIACJNE R4,#ERL,LOOPP12LCALL DY5SMOV XJL,#ERLMOV SHUMA,#1LCALL QINCHUSHACLR ERLDLJMP KAIMENAN1:SETB UPDSETB SALDMOV P2,#4FhJBC W_SAUP,AN1JBC W_SADO,AN1JBC N_SAL,AN1LOOPP13:LCALL JIACJNE R4,#SAL,LOOPP13LCALL DY5SMOV XJL,#SALMOV SHUMA,#2LCALL QINCHUSHACLR SALDLJMP KAIMENAN2:SETB UPDSETB SILDMOV P2,#066hJBC W_SIUP,AN2JBC W_SIDO,AN2JBC N_SIL,AN2LOOPP14:LCALL JIACJNE R4,#SIL,LOOPP14LCALL DY5SMOV XJL,#SILMOV SHUMA,#3LCALL QINCHUSHACLR SILDLJMP KAIMENAN3:SETB UPDSETB WULDMOV P2,#06DhJBC W_SIUP,AN3JBC W_SIDO,AN3JBC N_SIL,AN3LOOPP15:LCALL JIACJNE R4,#WUL,LOOPP15LCALL DY5SMOV XJL,#WULMOV SHUMA,#4LCALL QINCHUSHACLR WULDLJMP KAIMENAN4:SETB UPDSETB LILDMOV P2,#07DhJBC W_LIDO,AN4JBC N_LIL,AN4 LOOPP16:LCALL JIACJNE R4,#ERL,LOOPP16LCALL DY5SMOV XJL,#LILMOV SHUMA,#5LCALL QINCHUSHACLR LILDLJMP KAIMENBN1:SETB UPDSETB SALDMOV P2,#4FhJBC W_SAUP,BN1JBC W_SADO,BN1JBC N_SAL,BN1LOOPP23:LCALL JIACJNE R4,#SAL,LOOPP23LCALL DY5SMOV XJL,#SALMOV SHUMA,#2LCALL QINCHUSHACLR SALDLJMP KAIMENBN2:SETB UPDSETB SILDMOV P2,#066hJBC W_SIUP,BN2JBC W_SIDO,BN2JBC N_SIL,BN2LOOPP24:LCALL JIACJNE R4,#SAL,LOOPP24LCALL DY5SMOV XJL,#SILMOV SHUMA,#3LCALL QINCHUSHACLR SILDLJMP KAIMENBN3:SETB UPDSETB WULDMOV P2,#06DhJBC W_SIUP,BN3JBC W_SIDO,BN3JBC N_SIL,BN3LOOPP25:LCALL JIACJNE R4,#WUL,LOOPP25LCALL DY5SMOV XJL,#WULMOV SHUMA,#4LCALL QINCHUSHACLR WULDLJMP KAIMENBN4:SETB UPDSETB WULDMOV P2,#07DhJBC W_LIDO,BN4JBC N_LIL,BN4LOOPP26:LCALL JIACJNE R4,#LIL,LOOPP26LCALL DY5SMOV XJL,#LILMOV SHUMA,#5LCALL QINCHUSHACLR WULDLJMP KAIMENCN2:SETB UPDSETB SILDMOV P2,#066hJBC W_SIUP,CN2JBC W_SIDO,CN2JBC N_SIL,CN2LOOPP34:LCALL JIACJNE R4,#SIL,LOOPP34LCALL DY5SMOV XJL,#SILMOV SHUMA,#3LCALL QINCHUSHACLR SILDLJMP KAIMENCN3:SETB UPDSETB WULDMOV P2,#06DhJBC W_SIUP,CN3JBC W_SIDO,CN3JBC N_SIL,CN3LOOPP35:LCALL JIACJNE R4,#WUL,LOOPP35LCALL DY5SMOV XJL,#WULMOV SHUMA,#4LCALL QINCHUSHACLR WULDLJMP KAIMENCN4:SETB UPDSETB LILDMOV P2,#07DhJBC W_LIDO,CN4JBC N_LIL,CN4LOOPP36:LCALL JIACJNE R4,#LIL,LOOPP36LCALL DY5SMOV XJL,#LILMOV SHUMA,#5LCALL QINCHUSHACLR LILDLJMP KAIMENDN3:SETB UPDSETB WULDMOV P2,#06DhJBC W_SIUP,DN3JBC W_SIDO,DN3JBC N_SIL,DN3LOOP45:LCALL JIACJNE R4,#WUL,LOOP45LCALL DY5SMOV XJL,#WULMOV SHUMA,#4LCALL QINCHUSHACLR WULDLJMP KAIMENDN4:SETB UPDSETB LILDMOV P2,#07DhJBC W_LIDO,DN4JBC N_LIL,DN4LOOP46:LCALL JIACJNE R4,#LIL,LOOP46LCALL DY5SMOV XJL,#LILMOV SHUMA,#5LCALL QINCHUSHACLR LILDLJMP KAIMENEN4:SETB UPDSETB LILDMOV P2,#07DhJBC W_LIDO,EN4JBC N_LIL,EN4LOOP56:LCALL JIACJNE R4,#LIL,LOOP56LCALL DY5SMOV XJL,#LILMOV SHUMA,#5LCALL QINCHUSHACLR LILDLJMP KAIMENFN4:SETB UPDSETB WULDMOV P2,#06DhJBC W_WUUP,FN4JBC W_WUDO,FN4JBC N_WUL,FN4LOOP65:LCALL JIACJNE R4,#WUL,LOOP65LCALL DY5SMOV XJL,#WULMOV SHUMA,#4LCALL QINCHUSHACLR WULDLJMP KAIMENFN3: SETB DONDSETB SILDMOV P2,#066HJBC W_SIUP,FN3JBC W_SIDO,FN3JBC N_SIL,FN3LOOP64:LCALL JIANCJNE R4,#SIL,LOOP64LCALL DY5SMOV XJL,#SILMOV SHUMA,#3LCALL QINCHUXIACLR SILDLJMP KAIMENFN2: SETB DONDSETB SALDMOV P2,#04FHJBC W_SIUP,FN2 JBC W_SIDO,FN2JBC N_SIL,FN2LOOP63: LCALL JIANCJNE R4,#SAL,LOOP63 LCALL DY5SMOV SHUMA,#2LCALL QINCHUXIACLR SALDLJMP KAIMENFN1: SETB DONDSETB ERLDMOV P2,#05BHJBC W_SIUP,FN1JBC W_SIDO,FN1LOOP62: LCALL JIANCJNE R4,#ERL,LOOP62 LCALL DY5SMOV XJL,#ERLMOV SHUMA,#1LCALL QINCHUXIACLR ERLDLJMP KAIMENFN0:SETB DONDSETB YILDMOV P2,#06HJBC W_SIUP,FN0JBC W_SIDO,FN0JBC N_SIL,FN0LOOP61: LCALL JIANCJNE R4,#YIL,LOOP61 LCALL DY5SMOV XJL,#YILMOV SHUMA,#0LCALL QINCHUXIACLR YILDLJMP KAIMENEN3:SETB DONDSETB SILDMOV P2,#66HJBC W_SIUP,EN3JBC W_SIDO,EN3JBC N_SIL,EN3LOOP54: LCALL JIANCJNE R4,#SIL,LOOP54LCALL DY5SMOV XJL,#SILMOV SHUMA,#3 LCALL QINCHUXIA CLR SILDLJMP KAIMENEN2:SETB DOND SETB SALDMOV P2,#04FHJBC W_SAUP,EN2JBC W_SADO,EN2JBC N_SAL,EN2 LOOP53:LCALL JIAN CJNE R4,#SAL,LOOP53 LCALL DY5SMOV XJL,#SALMOV SHUMA,#2 LCALL QINCHUXIA CLR SALDEN1:SETB DOND SETB ERLDMOV P2,#05BHJBC W_ERUP,EN1JBC W_ERDO,EN1JBC N_ERL,EN1 LOOP52: LCALL JIAN CJNE R4,#ERL,LOOP52 LCALL DY5SMOV XJL,#ERLMOV SHUMA,#1 LCALL QINCHUXIA CLR ERLDLJMP KAIMENEN0:SETB DOND SETB YILDMOV P2,#06HJBC W_YIUP,EN0JBC N_YIL,EN0 LOOP51: LCALL JIAN CJNE R4,#ERL,LOOP51 LCALL DY5SMOV XJL,#YILMOV SHUMA,#0 LCALL QINCHUXIA CLR YILDLJMP KAIMENDN2:SETB DOND SETB SALDMOV P2,#04FHJBC W_SAUP,DN2JBC W_SADO,DN2JBC N_SAL,DN2 LOOP43:LCALL JIAN CJNE R4,#SAL,LOOP43 LCALL DY5SMOV XJL,#SALMOV SHUMA,#2 LCALL QINCHUXIA CLR SALDLJMP KAIMENDN1:SETB DOND SETB ERLDMOV P2,#05BHJBC W_ERUP,DN1JBC W_ERDO,DN1JBC N_ERL,DN1 LOOP42:LCALL JIAN CJNE R4,#ERL,LOOP42 LCALL DY5SMOV XJL,#ERLMOV SHUMA,#1 LCALL QINCHUXIA CLR ERLDLJMP KAIMENDN0: SETB DOND SETB YILDMOV P2,#06HJBC W_YIUP,DN0JBC N_YIL,DN0 LOOP41: LCALL JIAN CJNE R4,#YIL,LOOP41 LCALL DY5SMOV XJL,#YILMOV SHUMA,#0 LCALL QINCHUXIA CLR YILDLJMP KAIMENCN1:SETB DONDSETB ERLDMOV P2,#05BHJBC W_ERUP,CN1JBC W_ERDO,CN1JBC N_ERL,CN1 LOOP32: LCALL JIAN CJNE R4,#ERL,LOOP32 LCALL DY5SMOV XJL,#ERLMOV SHUMA,#1 LCALL QINCHUXIA CLR ERLDLJMP KAIMENCN0: SETB DOND SETB YILDMOV P2,#06HJBC W_YIUP,CN0JBC N_YIL,CN0 LOOP31: LCALL JIAN CJNE R4,#YIL,LOOP31 LCALL DY5SMOV XJL,#YILMOV SHUMA,#0 LCALL QINCHUXIA CLR YILDLJMP KAIMENBN0:SETB DOND SETB YILDMOV P2,#06HJBC W_YIUP,BN0JBC N_YIL,BN0 LOOP21:LCALL JIAN CJNE R4,#YIL,LOOP21 LCALL DY5SMOV XJL,#YILMOV SHUMA,#0 LCALL QINCHUXIA CLR YILDLJMP START KAIMEN:CLR P3.7 LCALL DY2SLJMP START QINCHUSHA: CLR UPD MOV P2,#00H RETQINCHUXIA: CLR DOND MOV P2,#00HRETJIA:LCALL DY2S MOV R4,XJLINC XJLMOV A,SHUMAMOV DPTR, #TAB_JIA MOVC A,@A+DPTR MOV P0,ALCALL DISPLAYINC SHUMARETJIAN:LCALL DY2S MOV R4,XJLDEC XJLMOV A,SHUMAMOV DPTR,#TAB_JIAN MOVC A,@A+DPTR MOV P0,ALCALL DISPLAYDEC SHUMARETDISPLAY:MOV A,SHUMA MOV DPTR,#TAB MOVC A,@A+DPTR MOV P3,#00HLCALL DY10MSMOV P3,ARETDY10MS: MOV R6,#20 NOPDLPP1: MOV R7,#250 NOPDLPP2:DJNZ R7,DLPP2 DJNZ R6,DLPP1RETDY1S:MOV R5,#100 DY1S1: MOV R6,#40 DY1S2:MOV R7,#123 NOPDJNZ R7,$DJNZ R6,DY1S2DJNZ R5,DY1S1RETDY5S:LCALL DY1SDY4S:LCALL DY1SDY3S:LCALL DY1SDY2S:LCALL DY1SLCALL DY1SRETTAB:DB 06H,5BH,04FH,66H,6DH,7DHTAB_JIA:DB 06H,5BH,04FH,66H,6DH,7DH TAB_JIAN:DB 06H,5BH,04FH,66H,6DH,7DH END。

相关主题