久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
基于51單片機的步進電機控制以及仿真
[打印本頁]
作者:
a597507774
時間:
2018-1-8 19:08
標題:
基于51單片機的步進電機控制以及仿真
給你一段簡單的程序代碼,控制步進電機的,不過你要好好看看程序的編寫,以適應你的硬件(主要是連線),你可以在實現這個的基礎上實現你所說的目標,個人覺得你參考這個程序然后自己實現你所說的功能比較好:
#include <reg52.h>
unsigned char code F_Rotation[4]={0x08,0x10,0x20,0x40};//正轉表格
unsigned char code B_Rotation[4]={0x40,0x20,0x10,0x08};//反轉表格
void Delay(unsigned int i)//延時
{
while(--i);
}
main()
{
unsigned char i;
while(1)
{
for(i=0;i<4;i++) //4相
{
P1=F_Rotation[i]; //輸出對應的相 可以自行換成反轉表格
Delay(500); //改變這個參數可以調整電機轉速
}
}
}
復制代碼
我編了一個程序 ,讓單片機發100個脈沖,之后電機就停止轉動。但是把單片機、驅動器、電機連起來,運行的時候,步進電機一直轉,沒有出現預期的停止。我的驅動器的脈沖負接 P1^2,驅動器的脈沖正接+5V。
#include<reg52.h>
#include <intrins.h>
#define VALUE 40
sbit sp = P1^2;
unsigned int a;
void delay(unsigned int i)
{
char j;
for(i; i > 0; i--)
for(j = 200; j > 0; j--);
}
void main()
While(1)
{
a=0;
while(1)
{ sp=0;
delay(10);
sp=1;
delay(10);
a++;
if(a==100)
{
sp=0
break;
}
}
}
復制代碼
電路圖:
程序;
#include <reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar code s[]={ 0x88,0x22,0x44,0x11 };
void delay(uint z)
{ uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{ int i;
while(1)
{ for(i=0;i<4;i++)
{ P2=s[i];
delay(200);
}
}
}
#include<reg51.h>
sbit k1=P1^1; //啟動
sbit k2=P1^0; //正反轉
sbit k3=P1^2; //加速
sbit k4=P1^3; //減速
unsigned int x=50000;
unsigned char i=0;
unsigned char code table[6]={0x01,0x03,0x02,0x06,0x04,0x05};//單雙六拍
void motor();
void main()
{
TMOD=0x01;
TH0=-x>>8; //
TL0=-x%256; //
TCON=0x10;
IE=0x82;
while(1);
}
void time_0 () interrupt 1
{
EA=0;TR0=0;
motor();
if(x<65000&&x>36000) //上下限
{if(!k3) x=x-2000; //加速
else if(!k4) x=x+2000;} //減速
TH0=-x>>8;TL0=-x%256;
TR0=1;EA=1;
}
void motor()
{
if(!k1)
{ if(!k2) //正反轉
{i+=1;
if(i>5) i=0;}
else
{i-=1;
if(i>5) i=5;}
P2=table;
}
else P2=0;
}
復制代碼
51單片機控制的4相步進電機的C語言程序
#include <AT89X51.H>
unsigned char code table[]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9,0x00,0xf1,0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0x00};
unsigned char temp,temp_old;
unsigned char key;
unsigned char i,j,k,m,s;
void delay(int i)
{
for(m=i;m>0;m--)
for(j=250;j>0;j--)
for(k=10;k>0;k--);
}
void saomiao()
{
P3=0xff;
P3_4=0;
temp=P3;
temp=temp&0x0f;
if(temp!=0x0f)
{
for(i=50;i>0;i--)
for(j=200;j>0;j--);
temp=P3;
temp=temp&0x0f;
if(temp!=0x0f)
{
temp=P3;
temp=temp&0x0f;
switch(temp)
{
case 0x0e:
key=1;
break;
case 0x0d:
key=2;
break;
case 0x0b:
key=3;
break;
case 0x07:
key=4;
break;
}
temp=P3;
temp=temp&0x0f;
while(temp!=0x0f)
{
temp=P3;
temp=temp&0x0f;
}
}
}
P3=0xff;
P3_5=0;
temp=P3;
temp=temp&0x0f;
if(temp!=0x0f)
{
for(i=50;i>0;i--)
for(j=200;j>0;j--);
temp=P3;
temp=temp&0x0f;
if(temp!=0x0f)
{
temp=P3;
temp=temp&0x0f;
switch(temp)
{
case 0x0d:
key=5;
break;
case 0x0b:
key=6;
break;
case 0x07:
key=7;
break;
}
temp=P3;
temp=temp&0x0f;
while(temp!=0x0f)
{
temp=P3;
temp=temp&0x0f;
}
}
}
}
void main(void)
{
while(1)
{
saomiao();
if(key==1)
{ P1=0;
P2=0;
saomiao();
}
if(key==2)
{
temp_old=key;
for(s=0;s<8;s++)
{ P2=table[s];
P1_4=0;
delay(13);
saomiao();
if(key!=temp_old)
{
P1_4=1;
break;
}
}
}
if(key==3)
{
temp_old=key;
for(s=0;s<8;s++)
{ P2=table[s];
P1_5=0;
delay(5);
saomiao();
if(key!=temp_old)
{
P1_5=1;
break;
}
}
}
if(key==4)
{
temp_old=key;
for(s=0;s<8;s++)
{ P2=table[s];
P1_6=0;
delay(20);
saomiao();
if(key!=temp_old)
{
P1_6=1;
break;
}
}
}
if(key==5)
{
temp_old=key;
for(s=9;s<17;s++)
{ P2=table[s];
P1_7=0;
delay(13);
saomiao();
if(key!=temp_old)
{
P1_7=1;
break;
}
}
}
if(key==6)
{
temp_old=key;
for(s=9;s<17;s++)
{ P2=table[s];
P1_5=0;
delay(5);
saomiao();
if(key!=temp_old)
{
P1_5=1;
break;
}
}
}
if(key==7)
{
temp_old=key;
for(s=9;s<17;s++)
{ P2=table[s];
P1_6=0;
delay(20);
saomiao();
if(key!=temp_old)
{
P1_6=1;
break;
}
}
}
}
}
復制代碼
步進電機驅動程序.docx
2018-1-8 19:07 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
333.66 KB, 下載次數: 48, 下載積分: 黑幣 -5
步進電機驅動程序(51)
作者:
李成Lic
時間:
2018-1-27 04:31
好資料,51黑有你更精彩
作者:
lindeijun1
時間:
2020-2-15 12:15
謝謝樓主分享。!
作者:
lindeijun1
時間:
2020-2-15 20:15
謝謝樓主分享。。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
99精品久久久
|
国产精品日产欧美久久久久
|
国产精品美女一区二区三区
|
91精品国产一区二区三区
|
亚洲一区欧美
|
欧美日本免费
|
1区2区3区视频
|
亚洲国产成人精品女人久久久
|
不卡的av在线
|
午夜免费观看
|
h网站在线观看
|
久久久久九九九女人毛片
|
欧美久久久久久久
|
一级片免费在线观看
|
亚洲综合在线视频
|
亚洲日日夜夜
|
日本中文字幕在线观看
|
а_天堂中文最新版地址
|
亚洲精品永久免费
|
国产精品久久久久久久久久免费
|
免费视频一区二区
|
成人免费视频在线观看
|
亚洲午夜一区二区
|
麻豆av网站
|
新超碰97
|
国产成人亚洲精品
|
欧美在线综合
|
亚洲电影第1页
|
久久国产精品精品国产色婷婷
|
日韩视频一区二区
|
亚洲福利在线观看
|
三级免费
|
亚洲精品乱码久久久久久黑人
|
h视频免费在线观看
|
日韩久久在线
|
99国产视频
|
久久精品一区二区
|
成人黄色电影免费
|
精品粉嫩aⅴ一区二区三区四区
|
99re国产视频
|
爱操影视
|