ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

基于51单片机的电梯控制系统

2020-06-03 20:43:43  阅读:350  来源: 互联网

标签:temp 原理图 51 单片机 电梯 num keyvalue 按键


这一次的项目是前阵子发布的Altium designer ERROR系列链接
第一篇的项目,实现了51单片机控制电机,从而控制一台六层电梯。

具体说明:系统启动后自动定位到一楼。当外部按键按动时,电梯前往该楼层;内部按键共七个,其中六个对应六层,第七个为报警按键,按下后电梯停止工作,蜂鸣器鸣响报警,同时上行下行显示灯关闭,再次按下恢复正常。为保证电机运行正常和电梯舒适感,每层楼运行时间间隔为三秒。

原理图如下:
原理图
这里采用了L298来驱动电机,使用74LS164驱动数码管显示楼层。在层与层之间默认了电梯运行三秒钟,但是在具体实践中应根据现实楼层高度而定。

同时,由于这次项目更多的是模拟电梯运行,所以,我在PCB设计并没有把各个按键分开,而是画到了一块板子上,如下图:
在ad中,我并没有找到74LS164的芯片原理图,只有芯片封装,所以自己画了个164的芯片。
PCB

部分代码如下所示:

void shangsheng()
{
 int i;
 t=11;
 ledup=0;
 leddown=1;
 for(i=0;i<10;i++)
 {
  stop();
  d11=1,d12=0,d21=0,d22=0;
  delay(5);
  d11=1,d12=1,d21=0,d22=0;
  delay(5);
  d11=0,d12=1,d21=0,d22=0;
  delay(5);
  d11=0,d12=1,d21=1,d22=0;
  delay(5);
  d11=0,d12=0,d21=1,d22=0;
  delay(5);
  d11=0,d12=0,d21=1,d22=1;
  delay(5);
  d11=0,d12=0,d21=0,d22=1;
  delay(5);
  d11=1,d12=0,d21=0,d22=1;
  delay(5);
 }
 t=0;
 leddown=1;
 ledup=1;
}
void xiajiang()
{
 int i;
 t=10;
 ledup=1;
 leddown=0;
 for(i=0;i<10;i++)
 {
  stop();
  d11=0,d12=0,d21=0,d22=1;
  delay(5);
  d11=0,d12=0,d21=1,d22=1;
  delay(5);
  d11=0,d12=0,d21=1,d22=0;
  delay(5);
  d11=0,d12=1,d21=1,d22=0;
  delay(5);
  d11=0,d12=1,d21=0,d22=0;
  delay(5);
  d11=1,d12=1,d21=0,d22=0;
  delay(5);
  d11=1,d12=0,d21=0,d22=0;
  delay(5);
  d11=1,d12=0,d21=0,d22=1;
  delay(5);
 }
 t=0;
 leddown=1;
 ledup=1;
}
void go()
{
 char temp;
 if(keyvalue!=keyvalue01d)
 {
  keyvalue01d=keyvalue;
  temp=nowfloor-keyvalue;
  if(t==0)
  {
   if(temp>0)
   {
    while(temp>0)
    {
     shangsheng();
     num++;
     if(gofloor[num]!=0)
     {
      if(((gofloor[num]&0x01)+(gofloor[num]&0x04))>0);
     }
     temp--;
     SBUF=play[--nowfloor];
     while(!TI);
     TI=0;
    }
    nowfloor=keyvalue;
   }
   if(temp<0)
   {
    while(temp<0)
    {
     xiajiang();
     temp++;
     SBUF=play[++nowfloor];
     while(!TI);
     TI=0;
    }
    nowfloor=keyvalue;
   }
  }
 }
}

富文本编辑器对于edge的适应和shit一模一样,上面三块代码整块粘贴就会卡死,也是醉了。

资源包含:proteus仿真+原理图;keil编写的C语言程序;ad原理图+PCB;产品说明书。
资源链接详见评论区
知识无价,开源万岁!!!

标签:temp,原理图,51,单片机,电梯,num,keyvalue,按键
来源: https://blog.csdn.net/toyjis/article/details/105796865

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有