Chat
Danh mục
[Share] - Mạch Động Cơ bước dùng 8051

[Share] - Mạch Động Cơ bước dùng 8051

Số lượng:
Thêm vào giỏ
[Share] - Mạch Động Cơ bước dùng 8051 đã được thêm vào giỏ hàng







Code C mã nguồn:

#include <REGX51.H>
#define DC P2
sbit Stop_start = P3^0;
sbit Left_right = P3^1;
sbit One_Loop = P3^2;
sbit H_Loop = P3^3;
sbit One_Step = P3^4;
sbit Up_Speed = P3^5;
sbit DW_Speed = P3^6;
int speed=4,i;
char j=0,status=0,LR =0; //max 50
unsigned char code Thuan[4] = {0x06,0x03,0x09,0x0c};
void delay(long us)
{
while(us--);
}

void keypad()
{
if(Stop_start == 0)
{
delay(1000);
while(Stop_start ==0);
delay(1000);
if(status != 0) status = 0; else status =1;
}

else if(Left_right == 0)
{
delay(1000);
while(Left_right ==0);
delay(1000);

if(LR != 0) LR = 0; else LR =1;
}

else if(One_Loop == 0)
{
delay(1000);
while(One_Loop ==0);
delay(1000);
status = 3; // chay 1 vong
}

else if(One_Step == 0)
{
delay(1000);
while(One_Step ==0);
delay(1000);
status = 4; // chay 1 buoc
}

else if(H_Loop == 0)
{
delay(1000);
while(H_Loop ==0);
delay(1000);
status = 2; // chay nua vong
}

else if(Up_Speed == 0)
{
delay(1000);
while(Up_Speed ==0);
delay(1000);
speed-=2; // Tang toc
if(speed<4) speed=4;
}

else if(DW_Speed == 0)
{
delay(1000);
while(DW_Speed ==0);
delay(1000);
speed+=2; // Giam toc
if(speed>200) speed=200;
}
}


void main()
{


while(1)
{
keypad();
if(status == 1 )  // 0: dung, 1: chay
{
DC=Thuan[j];
delay(speed*10);
if(LR == 0)
{
j++;
if(j==4)j =0;
}
else
{
j--;
if(j<0)j =3;
}
}
else if(status == 4) // chay 1 buoc
{
for(i=0;i<4;i++)
{
DC=Thuan[j];
delay(speed*10);
if(LR == 0)
{
j++;
if(j==4)j =0;
}
else
{
j--;
if(j<0)j =3;
}
status =0;
}
}
else if(status == 2) // chay nua vong
{
for(i=0;i<100;i++)
{
DC=Thuan[j];
delay(speed*10);
if(LR == 0)
{
j++;
if(j==4)j =0;
}
else
{
j--;
if(j<0)j =3;
}
}
status =0;
}

else if(status == 3) // chay nua vong
{
for(i=0;i<200;i++)
{
DC=Thuan[j];
delay(speed*10);
if(LR == 0)
{
j++;
if(j==4)j =0;
}
else
{
j--;
if(j<0)j =3;
}
}
status =0;
}
else DC=0x00;
}
}

 ( Mô phỏng + Keil C biên dịch)
Khi nhấn nút "Tải Về Máy", bạn sẽ vào trang quảng cáo, vui lòng chờ 5 giây. Nút  hiện ra ở góc phải phía trên, nhấn vào để đến trang download
Theo FB Hoi Quan Dien Tu

eChipKool.Com - Chia sẻ kiến thức - Kết nối đam mê điện tử