欢迎来到天天文库
浏览记录
ID:33984697
大小:5.22 MB
页数:17页
时间:2019-03-03
《基于步进电机的电梯设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、基于步进电机的电梯设计学号:********姓名:xx班级:电子信息工程(1)班目录目录21.设计题目:32.设计目的:33.设计任务34.设计思路35.硬件电路原理图和连接图4(1)步进电机原理图4(2)单片机连接图4(3)数码管显示连接图5(4)流程框图56.主要程序6C文件:6H文件:77、实物图:128、过程总结:171.设计题目:基于步进电机的电梯设计2.设计目的:通过完成实训项目要求学生能够更好的理解单片机系统的组成及其各个组成部分的功能,了解单片机和外部电路的接口电路,掌握单片机系统的设计方法。利用mi
2、ni80e升级版的自带步进电机驱动模块可直接驱动6线步进电机,并通过单片机控制达到电梯设计效果。3.设计任务设计电梯控制,利用步进电机达到升降效果,并实现在楼层的升降同时在数码管上显示当前楼层和目标楼层。4.设计思路由于mini80e升级版上的自带的4×4矩阵键盘,可以设定其中0键---3键作为一层到四层的外部电梯呼应按键、C键---F键作为电梯内部的楼层按键,通过按键来达到人机对话。5.硬件电路原理图和连接图(1)步进电机原理图此次实训的步进电机为六线电机,六根线分别是(黑,红,棕),(红,黄,橙)两组。其中红线为
3、电源输入线,橙线为A线,黑线为B线,黄线为C线,棕线为D线(2)单片机连接图(3)数码管显示连接图(4)流程框图6.主要程序C文件:#include#include<步进电机.h>#defineucharunsignedchar#defineuintunsignedint//unsignedcharFlag;//定义正反转和停止标志位voidmain(){chushihua();while(1){stopxs();key=keyscan();//调用键盘扫描,jiansf();//进行键释放程序if
4、(key==0xee
5、
6、key==0x7e){nextfloor=1;}if(key==0xed
7、
8、key==0x7d)//0x7B--1{nextfloor=2;}if(key==0xeb
9、
10、key==0x7b){nextfloor=3;}if(key==0xe7
11、
12、key==0x77){nextfloor=4;}if(nextfloor>nowfloor){Flag=0;chencha=nextfloor-nowfloor;bujindianji();}if(nextfloor13、chencha=nowfloor-nextfloor;bujindianji();}}}H文件:#include#defineucharunsignedchar#defineuintunsignedintsbitKEY=P3^3;unsignedcharFlag;//定义正反转和停止标志位bittimeflag=0;bitfloorflag=0;bitstopflag=0;intnum;intsum;intchencha=0;intnowfloor=1;intnextfloor=1;intzjflo14、or=1;ucharkey;unsignedcharcodeF_Rotation[4]={0x03,0x09,0x0c,0x06};//正转表格unsignedcharcodeB_Rotation[4]={0x06,0x0c,0x09,0x03};//反转表格unsignedcharidatatable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管编码/**********************************************15、********************//*延时函数*//******************************************************************/voiddDelay(unsignedinti)//延时{while(--i);}/*------------------------------------------------延迟ms级程序------------------------------------------------*/voiddellayms(uin16、txms){uinth,g;for(g=xms;g>0;g--)for(h=10;h>0;h--);}/*------------------------------------------------键盘扫描程序------------------------------------------------*/ucharkeyscan()//
13、chencha=nowfloor-nextfloor;bujindianji();}}}H文件:#include#defineucharunsignedchar#defineuintunsignedintsbitKEY=P3^3;unsignedcharFlag;//定义正反转和停止标志位bittimeflag=0;bitfloorflag=0;bitstopflag=0;intnum;intsum;intchencha=0;intnowfloor=1;intnextfloor=1;intzjflo
14、or=1;ucharkey;unsignedcharcodeF_Rotation[4]={0x03,0x09,0x0c,0x06};//正转表格unsignedcharcodeB_Rotation[4]={0x06,0x0c,0x09,0x03};//反转表格unsignedcharidatatable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管编码/**********************************************
15、********************//*延时函数*//******************************************************************/voiddDelay(unsignedinti)//延时{while(--i);}/*------------------------------------------------延迟ms级程序------------------------------------------------*/voiddellayms(uin
16、txms){uinth,g;for(g=xms;g>0;g--)for(h=10;h>0;h--);}/*------------------------------------------------键盘扫描程序------------------------------------------------*/ucharkeyscan()//
此文档下载收益归作者所有