这一次的项目是前阵子发布的Altium designer ERROR系列链接 具体说明:系统启动后自动定位到一楼。当外部按键按动时,电梯前往该楼层;内部按键共七个,其中六个对应六层,第七个为报警按键,按下后电梯停止工作,蜂鸣器鸣响报警,同时上行下行显示灯关闭,再次按下恢复正常。为保证电机运行正常和电梯舒适感,每层楼运行时间间隔为三秒。 原理图如下: 同时,由于这次项目更多的是模拟电梯运行,所以,我在PCB设计并没有把各个按键分开,而是画到了一块板子上,如下图: 部分代码如下所示: 富文本编辑器对于edge的适应和shit一模一样,上面三块代码整块粘贴就会卡死,也是醉了。 资源包含:proteus仿真+原理图;keil编写的C语言程序;ad原理图+PCB;产品说明书。
第一篇的项目,实现了51单片机控制电机,从而控制一台六层电梯。
这里采用了L298来驱动电机,使用74LS164驱动数码管显示楼层。在层与层之间默认了电梯运行三秒钟,但是在具体实践中应根据现实楼层高度而定。
在ad中,我并没有找到74LS164的芯片原理图,只有芯片封装,所以自己画了个164的芯片。
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; } } } }
资源链接详见评论区
知识无价,开源万岁!!!
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算