单片机实验报告步进电机控制系统(共6页).doc
精选优质文档-倾情为你奉上信息科学与技术学院单片机及嵌入式课程设计 设计题目:步进电机控制系统 指导老师:林 凡 强姓 名:学 号: 班 级: 二零一二年6月1. 实验要求:(1) 正反转(2) 调速(3) 键盘输入(4) 数码管显示2. 设计要求: (1)、按下不同的键,分别使步进电机实现顺时针和逆时针旋转。 (2)、电机运转状态可以是正反转,加速减速,几种不同速度的组合。3、 设计目的: (1)学习基本电机系统程序编写等 (2)掌握电机的控制方法等4、设计实验设备 硬件: PC机 一台 自制单片机实验仪 一套 其他小工具等 软件: Windows98/XP/2000系统,keil7.0集成开发环境5、 程序: #include"reg51.h"#define uint unsigned int /#define delay_ms 5 /延时sbit W=P36;sbit R=P37;sbit SEND=P30;sbit CLOCK=P31;int delay_ms=30; sbit bu1=P14;sbit bu2=P15;sbit bu3=P16;sbit bu4=P17;uint flag=0;unsigned int table=0x03,0x9F,0x25,0x0D,0x99,0x49,0x41,0x1F,0x01,0x09,0xff;uint h=0; void delay(uint n) /延时程序 uint i,j; for(i=0;i<100;i+) for(j=0;j<n;j+); void zhengzhuan() /正转bu1=bu1;delay(delay_ms);bu1=bu1;bu2=bu2;delay(delay_ms);bu2=bu2;bu3=bu3;delay(delay_ms);bu3=bu3;bu4=bu4;delay(delay_ms);bu1=bu1;void fanzhuan() /反转bu4=bu4;delay(delay_ms);bu4=bu4;bu3=bu3;delay(delay_ms);bu3=bu3;bu2=bu2;delay(delay_ms);bu2=bu2;bu1=bu1;delay(delay_ms);bu1=bu1;void senddata(unsigned int dat) /发送数据程序 unsigned int i=0; for(;i<8;i+) CLOCK=0; SEND=dat>>i&1; ; CLOCK=CLOCK; uint saomiao()/键盘扫描程序 uint i,j,k1,k2=0x01,n; uint A=0xfe,0xfd,0xfb,0xf7; for(i=0;i<4;i+) k2=0x01; W=0; P2=0x60; P0=Ai; delay(1); W=1; P2=0xA0; W=0;/ k1=P0&0x0f;/ if(k1!=0x0f)/ for(j=0;j<4;j+) n=P0&0x0F; if(!(n&k2) return(4*i+j); k2<<=1; / delay(100); return(10);void main() uint m,r;/ W=0;/ P2=0x60;/ P0=0x00;/ ;/ W=1; /锁存P0口输出数据/ P2=0xA0;/ W=0; while(1) W=0; P2=0x60; P0=0xf0; W=1; /锁存P0口输出数据 P2=0xA0; W=0; m=P0&0x0F; if(m!=0x0f) delay(50);m=P0&0x0f;if(m!=0x0f)/flag=!flag;/switch(flag)/case 0: zhengzhuan();/break;/case 1: fanzhuan();/break;/default : ;/ h=saomiao(); senddata(tableh); r=h;if(r=1)zhengzhuan(); if(r=2)fanzhuan();if(r=5)delay_ms+=5;if(delay_ms>100)delay_ms=200;if(r=4)delay_ms-=5;if(delay_ms<=5)delay_ms= 5; 6、 实验心得: 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快 步进电机是一种将电脉冲信号转换成相应的角位移(或线位移)的电磁机械装置1。现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、混合式步进电机(HB)等。 整个实验过程中呢,源程序的编写比较麻烦,调试多次也没有得出理想的结果! 采用提出的步进电机控制系统,步进电机在工作频率内运行平稳,定位精度高。该系统有效,实用,已在无人机器人系统中得到验证,结果有效可行。专心-专注-专业