电子设计大赛训练设计报告-基于at89c52单片机的电梯控制模型系统设计内容摘要:

check()。 X=0。 S=1。 TR1=0。 TR2=0。 if(in_call[1]||up_call[1]) { TR1=1。 } else { TR2=1。 } display(gf,disnum/10,disnum%10,nf)。 } if(in_call[1]||up_call[1]) { TR1=0。 stop()。 in_call[1]=0。 up_call[1]=0。 } while(nf==2) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 TR1=0。 TR2=0。 if(in_call[2]||up_call[2]) { TR1=1。 } else { TR2=1。 } display(gf,disnum/10,disnum%10,nf)。 } if(in_call[2]||up_call[2]) { TR1=0。 stop()。 in_call[2]=0。 up_call[2]=0。 } while(nf==3) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 TR1=0。 TR2=0。 if(in_call[3]||up_call[3]) { TR1=1。 } else { TR2=1。 } display(gf,disnum/10,disnum%10,nf)。 } if(in_call[3]||up_call[3]) { TR1=0。 stop()。 in_call[3]=0。 up_call[3]=0。 } } /*从 2 楼 3 楼开始的电梯向上工作方式 */ if(nf==2amp。 amp。 gf==4) { vKeyProcess(ucKeyScan())。 check()。 while(nf==2) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 if(in_call[2]||up_call[2]) { TR1=1。 } else { TR2=1。 } display(gf,disnum/10,disnum%10,nf)。 } if(in_call[2]||up_call[2]) { TR1=0。 stop()。 in_call[1]=0。 up_call[1]=0。 } } if(nf==2amp。 amp。 gf==5) ///电梯从二楼去 5 楼看 4 楼是否有人顺路 { vKeyProcess(ucKeyScan())。 check()。 while(nf==2) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 if(in_call[2]||up_call[2]) { TR1=1。 } else { TR1=2。 } vKeyProcess(ucKeyScan())。 display(gf,disnum/10,disnum%10,nf)。 } if(in_call[2]||up_call[2])//三楼有响应 { TR1=0。 stop()。 in_call[2]=0。 up_call[2]=0。 } while(nf==3) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 TR1=0。 TR2=0。 if(in_call[3]||up_call[3]) { TR1=1。 } else { TR1=1。 } vKeyProcess(ucKeyScan())。 display(gf,disnum/10,disnum%10,nf)。 } if(in_call[3]||up_call[3])////四楼有响应 { TR1=0。 stop()。 in_call[3]=0。 up_call[3]=0。 } } if(nf==3amp。 amp。 gf==5) { vKeyProcess(ucKeyScan())。 check()。 while(nf==3) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 if(in_call[3]||up_call[3]) { TR1=1。 } else { TR2=1。 } display(gf,disnum/10,disnum%10,nf)。 } if(in_call[3]||up_call[3]) { TR1=0。 stop()。 in_call[3]=0。 up_call[3]=0。 } } TR1=0。 TR2=0。 //////////////////////////////////// while(nf!=gf) { vKeyProcess(ucKeyScan())。 check()。 X=0。 S=1。 TR1=1。 display(gf,disnum/10,disnum%10,nf)。 } TR1=0。 } stop()。 } //下降程序 void downer() { X=1。 TR0=1。 flag=0。 while(nf!=gf) { vKeyProcess(ucKeyScan())。 check()。 S=0。 X=1。 display(gf,disnum/10,disnum%10,nf)。 if(nf==5amp。 amp。 gf==1) //5 楼去 1 楼看 4 是否有顺路 { vKeyProcess(ucKeyScan())。 check()。 while(nf==5) { vKeyProcess(ucKeyScan())。 check()。 if(in_call[3]||up_call[3]) { TR1=1。 } else { TR2=1。 } X=1。 display(gf,disnum/10,disnum%10,nf)。 } if(down_call[3]||in_call[3]) { TR1=0。 stop()。 down_call[3]=0。 in_call[3]=0。 } while(nf==4) { vKeyProcess(ucKeyScan())。 check()。 TR1=0。 TR2=0。 if(in_call[2]||up_call[2]) { TR1=1。 } else { TR2=1。 } X=1。 display(gf,disnum/10,disnum%10,nf)。 } if(down_call[2]||in_call[2]) { TR1=0。 stop()。 down_call[2]=0。 in_call[2]=0。 } while(nf==3) { vKeyProcess(ucKeyScan())。 check()。 TR1=0。 TR2=0。 if(in_call[1]||up_call[1]) { TR1=1。 } else { TR2=1。 } X=1。 display(gf,disnum/10,disnum%10,nf)。 } if(down_call[1]||in_call[1]) { TR1=0。 stop()。 down_call[1]=0。 in_call[1]=0。 } } if(nf==5amp。 amp。 gf==2)//5 楼到 2 楼过程中看 3, 4 楼是否有顺路 { vKeyProcess(ucKeyScan())。 check()。 while(nf==5) { vKeyProcess(ucKeyScan())。 check()。 if(in_call[3]||up_call[3]) { TR1=1。 } else { TR2=1。 } X=1。 display(gf,disnum/10,disnum%10,nf)。 } if(down_call[3]||in_call[3]) { TR1=0。 down_call[3]=0。 in_call[3]=0。 stop()。 }。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。