标题:
51单片机步进电机控制源程序
[打印本页]
作者:
luozhao
时间:
2019-11-23 22:04
标题:
51单片机步进电机控制源程序
Snipaste_2019-11-23_22-03-55.png
(41.47 KB, 下载次数: 90)
下载附件
2019-11-23 22:04 上传
单片机源程序如下:
#include<reg52.h>
sbit KEY0=P0^0;
sbit KEY1=P0^1;
sbit KEY2=P0^2;
sbit KEY3=P0^3;
sbit KEY4=P0^4;
unsigned char a[]={0x01,0x02,0x04,0x08};
unsigned char b[]={0x08,0x04,0x02,0x01};
unsigned char c[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8}; //共阳数码管
unsigned char i,s=0,f=0;
unsigned char k=200;
unsigned char l=4;
void delay(unsigned int t)
{
unsigned char j,b;
b=t;
while(b--)
{
for (j=0;j<125;j++);
}
}
void key()
{P0=0x1f;
if(P0!=0x1f)
{
delay(30);
if(P0!=0x1f)
{delay(30);
if(KEY0==0){s=1;}
if(KEY1==0){f=1;}
if(KEY4==0){s=0;f=0;}
if(KEY2==0)
{if(l>1)l--;}
if(KEY3==0)
{if(l<7)l++;}
}
}
}
void speed()
{
switch(l)
{ case 7:k=50;P1=c[l];break;
case 6:k=100;P1=c[l];break;
case 5:k=150;P1=c[l];break;
case 4:k=200;P1=c[l];break;
case 3:k=250;P1=c[l];break;
case 2:k=300;P1=c[l];break;
case 1:k=350;P1=c[l];break;
}
}
void main()
{
while(1)
{
key();
while(s>0)
{speed();
for(i=0;i<4;i++)
{
P2=b[i];
delay(k);
key();
}
delay(100);
key();
}
while(f>0)
{
speed();
for(i=0;i<4;i++)
{
P2=a[i];
delay(k);
key();
}
delay(100);
key();
}
}
}
复制代码
所有资料51hei提供下载:
步进电机.zip
(43.11 KB, 下载次数: 85)
2019-11-23 22:02 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1