找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

帖子
查看: 2957|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)步進(jìn)電機(jī)正反轉(zhuǎn)控制

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
#include<reg51.h>
sbit S1=P1^4;
sbit S2=P1^5;
sbit S3=P1^7;
unsigned char keyval;
unsigned char ID;
void delay(void)
{
unsigned char i,j;
for(i=0;i<150;i++)
for(j=0;j<150;j++)
;
}
void motor_delay(void)
{
unsigned int i;
for(i=0;i<2000;i++)
;
}
void forward()
{
P2=0xef;
motor_delay();
P2=0xcf;
motor_delay();
P2=0xdf;
motor_delay();
P2=0x9f;
motor_delay();
P2=0xbf;
motor_delay();
P2=0x3f;
motor_delay();
P2=0x7f;
motor_delay();
P2=0x6f;
motor_delay();
}
void backward()
{
P2=0x6f;
motor_delay();
P2=0x7f;
motor_delay();
P2=0x3f;
motor_delay();
P2=0xbf;
motor_delay();
P2=0x9f;
motor_delay();
P2=0xdf;
motor_delay();
P2=0xcf;
motor_delay();
P2=0xef;
motor_delay();
}
void stop(void)
{
P2=0xff;
}
void main(void)
{
TMOD = 0x01;
EA=1;
ET0=1;
TR0=1;
TH0=(65536-500)/256;
TL0=(65536-500)%256;
keyval=0;

ID=0;
while(1)
{
switch(keyval)
{
case 1:forward();
break;
case 2:backward();
break;
case 3:stop();
break;
}
}
}
void Time0_serve(void) interrupt 1 using 1
{
TR0=0;
if((P3&0xf0)!=0xf0)
{
delay();
if((P3&0xf0)!=0xf0)
{
if(S1==0)
keyval=1;
if(S2==0)
keyval=2;
if(S3==0)
keyval=3;
}
}
TH0=(65536-200)/256;
TL0=(65536-200)%256;
TR0=1;
}

I_@$LILCG5XT41KNIEI%$9W.png (109.2 KB, 下載次數(shù): 111)

I_@$LILCG5XT41KNIEI%$9W.png

I_@$LILCG5XT41KNIEI%$9W.png (109.2 KB, 下載次數(shù): 114)

I_@$LILCG5XT41KNIEI%$9W.png

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表