电梯模拟控制Word文档下载推荐.docx
《电梯模拟控制Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《电梯模拟控制Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
P3.4定时器0
P3.5定时器1
堆栈栈底为50H
内部RAM:
30H当前位置值
31H第一呼叫值
32H第二呼叫值
35H~37H软件延时的计数值
38H辅助闪烁值
20H.0呼叫值的方向标志位
20H.1判断呼叫次数的标志位
20H.2软件计数溢出位
四、软件系统设计
定时器中断略
2.程序清单
PREEQU30H
NEQU31H
MEQU32H
TIME1EQU35H
TIME2EQU36H
TIMESEQU37H
LEDMASKEQU38H
QBIT20H.0
SIGNBIT20H.1
TIMEOUTBIT20H.2
ORG0000H
AJMPMAIN
ORG000BH
AJMPTT0
ORG0013H
AJMPRING
ORG001BH
AJMPTT1
MAIN:
MOVPRE,#0;
置初始位置
ACALLLIGHT;
灯亮
CLRSIGN;
呼叫标志位清零
START:
MOVSP,#50H
SETBP3.3
SETBIT1
SETBEA
WAIT:
SETBEX1
CLRSIGN
WAIT1:
JNBSIGN,WAIT1;
等待第一呼叫
RING_N:
MOVA,N
CJNEA,PRE,CON1;
判是否到打第一呼叫位
LCALLSPARK;
到站灯闪烁
AJMPWAIT
CON1:
MOVA,N
CJNEA,PRE,3+$;
判上行或下行
JCDOWN1
INCPRE
ACALLLIGHT
ACALLDEL
MOVA,N
CJNEA,PRE,BREAK;
判是否查询第二呼叫
LCALLSPARK
DOWN1:
DECPRE
AJMPCON1+9
BREAK:
JBSIGN,CON1;
第二呼叫子程序
MOVA,M
A_M:
CJNEA,PRE,COMP1
SETBSIGN
LCALLSPARK
AJMPCON1
COMP1:
MOVR0,#0;
比较第二呼叫是否与行车方向同向
JBQ,COMP3
COMP2:
JCCOMP4
AJMPCOMP5
COMP3:
INCR0
AJMPCOMP2
COMP4:
COMP5:
CJNER0,#0,COMP6
AJMPCON2
COMP6:
CJNER0,#2,CLRS
CLRS:
SETBSIGN
SETBEX1
CON2:
JBQ,M_N_D
M_N_U:
MOVA,M;
上行时比较M、N
CJNEA,N,3+$
JCM_U1
N_U1:
INCPRE;
上行先到N
CJNEA,PRE,N_U1
ACALLSPARK
M_U2:
上行后到M
ACALLLIGH
CJNEA,PRE,M_U2
M_U1:
INCPRE;
上行先到M
CJNEA,PRE,M_U1
N_U2:
上行后到N
CJNEA,PRE,N_U2
M_N_D:
下行比较M、N
JCN_D1
M_D1:
DECPRE;
下行先到M
CJNEA,PRE,M_D1
N_D2:
下行后到N
CJNEA,PRE,N_D2
N_D1:
下行先到N
CJNEA,PRE,N_D1
M_D2:
下行后到M
CJNEA,PRE,M_D2
LIGHT:
MOVA,PRE;
位置灯亮
CJNEA,#0,6+$
MOVP1,#11111110B
CJNEA,#1,6+$
MOVP1,#11111101B
CJNEA,#2,6+$
MOVP1,#11111011B
CJNEA,#3,6+$
MOVP1,#11110111B
CJNEA,#4,6+$
MOVP1,#11101111B
CJNEA,#5,6+$
MOVP1,#11011111B
CJNEA,#6,6+$
MOVP1,#10111111B
CJNEA,#7,6+$
MOVP1,#01111111B
RET
RING:
CLREA;
外部中断1子程序
PUSHACC
PUSHPSW
PUSH00H
ACALLRINGS
POP00H
POPPSW
POPACC
RETI
RINGS:
MOVA,P3
ANLA,#7
CPLSIGN
JNBSIGN,TO_M
MOVN,A
TOTO:
LCALLLED
TO_M:
MOVM,A;
第二呼叫转入此处
CLREX1
CJNEA,N,7+$
CJNEA,PRE,3+$
MOVQ,C
AJMPTOTO
LED:
MOVA,#1;
LCD显示
MOVDPTR,#0FF21H
MOVX@DPTR,A
INCDPTR
JNBSIGN,L_M
DL3:
ADDA,#4
MOVCA,@A+PC
ACALLDLAY
DB0C0H,0F9H,0A4H,0B0H,99H
DB92H,82H,0F8H,80H,90H
DLAY:
MOVR7,#02H;
软件延时子程序
DL1:
MOVR6,#0FFH
DL2:
DJNZR6,DL2
DJNZR7,DL1
L_M:
MOVA,M
AJMPDL3
SPARK:
MOVTMOD,#01H;
闪烁子程序
MOVTH0,#0F6H
MOVTL0,#3CH
MOVTIME1,#20
MOVTIME2,#10
MOVA,P1
CPLA
MOVLEDMASK,A
MOVTIMES,#5
SETBET0
SETBTR0
CLRTIMEOUT
L1:
JNBTIMEOUT,L1
CLRTR0
TT0:
PUSHPSW;
定时器0子程序
DJNZTIME1,TO_2
MOVA,LEDMASK
XRLP1,A
DJNZTIME2,TO_2
DJNZTIMES,TO_2
SETBTIMEOUT
TO_2:
MOVTH0,#0F6H
DEL:
MOVTMOD,#10H
MOVTH1,#0F6H
MOVTL1,#3CH
MOVTIME2,#20
SETBET1
SETBTR1
L11:
JNBTIMEOUT,L11
CLRTR1
TT1:
定时器1子程序
DJNZTIME1,TO_22
DJNZTIME2,TO_22
TO_22:
MOVTH1,#0F6H
END
五.不足之处和改进方法:
有时当遇非紧急事件时也可能引起电梯的停机。
六.自评分和收获体会:
通过老师的耐心讲解和同学们的热心帮助使我真正掌握里这个设计的本质并使我对单片机有了更深层次的了解和认识,在获取知识的同时也增进了同学间的友谊。
同时我发现了自己的许多不足之处,发现了自己的知识的缺陷,另外,通过这个设计,使我对单片机在实际中的应用有了更深刻的了解