标题:
四线双极性电机的单片机程序按键没有反应
[打印本页]
作者:
往事不可逆
时间:
2018-9-12 19:12
标题:
四线双极性电机的单片机程序按键没有反应
有没有大神帮我看一下问题出在哪里
插上后 按键没反应
课设要做的
希望哪位朋友给点帮助 不胜感激
下面是原程序:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit K1=P3^0; //定义五个按键
sbit K2=P3^1; //
sbit K3=P3^2; //
sbit K4=P3^3; //
sbit K5=P3^4; //
sbit motoA=P1^0;//四线双极性电机in_A
sbit motoB=P1^1;//in_B
sbit motoC=P1^2;//in_c
sbit motoD=P1^3;//in_d
uchar state=0; //状态变量
uint Time=60; //转速
void delay(uint ms) //Ñóê±£¬óÃóúμ÷Ëù
{
uint t;
while(ms--)
for(t=0;t<120;t++);
}
void motor_zz() //正转
{
while(1){
motoA = 1;
motoB = 1;
motoC = 0;
motoD = 1;
delay(Time);
motoA = 0;
motoB = 1;
motoC = 1;
motoD = 1;
delay(Time);
motoA = 1;
motoB = 1;
motoC = 1;
motoD = 0;
delay(Time);
motoA = 1;
motoB = 0;
motoC = 1;
motoD = 1;
delay(Time);
if(P3==0xfe)
{
break;
}
}
}
void motor_fz() //反转
{
while(1)
{
motoA = 1;
motoB = 0;
motoC = 1;
motoD = 1;
delay(Time);
motoA = 1;
motoB = 1;
motoC = 1;
motoD = 0;
delay(Time);
motoA = 0;
motoB = 1;
motoC = 1;
motoD = 1;
delay(Time);
motoA = 1;
motoB = 1;
motoC = 0;
motoD = 1;
delay(Time);
if(P3==0xfe)
{
break;
}
}
}
void main()
{
P1=0x00;
while(1)
{
while(state==0) //×′ì¬0£¬í£Ö1
{
if(K2==0) //°′ÏÂK2£¬μç»úÕy×a
{
state=1;
break;
}
if(K3==0) //°′ÏÂK3£¬μç»ú·′×a
{
state=2;
break;
}
P0=0x00;
}
while(state==1) //×′ì¬1£¬Õy×a
{
if(K1==0) //°′ÏÂK1£¬μç»ú·′×a
{
state=0;
break;
}
if(K2==0) //°′ÏÂK2£¬μç»úÕy×a
{
state=1;
break;
}
if(K3==0) //°′ÏÂK3£¬μç»ú·′×a
{
state=2;
break;
}
if(K4==0) //°′ÏÂK4£¬μç»ú¼óËù
{
Time=Time-5;
if(Time<20)
Time=20;
while(K4==0);
}
if(K5==0) //°′ÏÂK5£¬μç»ú¼õËù
{
Time=Time+5;
if(Time>100)
Time=100;
while(K5==0);
}
motor_zz(); //×′ì¬1£¬Õy×a
}
while(state==2) //×′ì¬2£¬·′×a
{
if(K1==0) //°′ÏÂK1£¬μç»ú·′×a
{
state=0;
break;
}
if(K2==0) //°′ÏÂK2£¬μç»úÕy×a
{
state=1;
break;
}
if(K3==0) //°′ÏÂK3£¬μç»ú·′×a
{
state=2;
break;
}
if(K4==0) //°′ÏÂK4£¬μç»ú¼óËù
{
Time=Time-5;
if(Time<20)
Time=20;
while(K4==0);
}
if(K5==0) //°′ÏÂK5£¬μç»ú¼õËù
{
Time=Time+5;
if(Time>100)
Time=100;
while(K5==0);
}
motor_fz(); //×′ì¬2£¬·′×a
}
}
}
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1