📄 motor.c
字号:
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2);
}
////////////////////////////////////////////
if(n==11)
{
if(timeF2==0)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2); }
if(timeF2==1)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(14,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2);}
}
///////////////////////////////////////
if(n==12)
{
if(timeF2==0)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2); }
if(timeF2==1)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(13,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2);}
}
////////////////////////////////////////////
if(n==13)
{
if(timeF2==0)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2); }
if(timeF2==1)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(12,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2);}
}
/////////////////////////////////////////////
if(n==14)
{
if(timeF2==0)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2); }
if(timeF2==1)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(18,q);
dingshi1ms(2);}
}
//////////////////////////////////////////
if(n==15)
{
if(timeF2==0)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2); }
if(timeF2==1)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(17,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2);}
}
///////////////////////////////////////
if(n==16)
{
if(timeF2==0)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(6,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2); }
if(timeF2==1)
{
displayxy(1,i);
dingshi1ms(2);
displayxy(2,j);
dingshi1ms(2);
displayxy(3,k);
dingshi1ms(2);
displayxy(4,m);
dingshi1ms(2);
displayxy(5,x);
dingshi1ms(2);
displayxy(16,y);
dingshi1ms(2);
displayxy(7,z);
dingshi1ms(2);
displayxy(8,q);
dingshi1ms(2);}
}
}
//-------------------------------------------------------------------------------------------------------
////////////////////////////////////////////////////////////////////////
void control(void)
{
setX_value=0;
setY_value=0;
setX_Z_value=0;
setY_Z_value=0;
displayXY_data(0,g,h,p,0,t,u,r,0);
while(setX_F==1||setY_F==1||setX_value==1||setY_value==1)
{
set_sure_F=0;
displayXY_data(0,a,b,c,0,d,e,f,0);
////////////////////////////////////////////////////////////////
//XY轴速度设置
////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////设X轴速度
if(setX_F==1)
{ flagx=1;
setX_value=0;
set_sure_F=0;
setX_F=0;
while(1)
{ flagx=1;
displayXY_data(1,a,b,c,0,d,e,f,11);///////////////////循环闪射个位加一
if(set_add_F==1)
{
set_add_F=0;
c+=1;
if(c>9)
c=0;
}
else if(setX_F==1)
{
setX_F=0;
while(1)
{flagx=1;
displayXY_data(1,a,b,c,0,d,e,f,12);//////////////循环显示闪动十位加一
if(set_add_F==1)
{
set_add_F=0;
b+=1;
if(b>9)
b=0;
}
else if(setX_F==1)
{
setX_F=0;
while(1)
{ flagx=1;
setX_value=1;
displayXY_data(1,a,b,c,0,d,e,f,13);////////循环显示百位加一
if(set_add_F==1)
{
set_add_F=0;
a+=1;
if(a>9)
a=0;
//电机X速度设置完标志位
}
else if(set_sure_F==1) //确认键按下退出底层循环
break;
}
}
else if(setX_value==1||set_sure_F==1) //退出第二层循环
break;
}
}
else if(setX_value==1||set_sure_F==1) //退出第三层循环
break;
}
}
/////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////设Y轴速度
else if(setY_F==1)
{
setY_value=0;
set_sure_F=0;
setY_F=0;
while(1)
{ flagy=1;
displayXY_data(0,a,b,c,2,d,e,f,14);/////////////个位加一
if(set_add_F==1)
{
set_add_F=0;
f+=1;
if(f>9)
f=0;
//flagx=0;
}
else if(setY_F==1)
{
setY_F=0;
while(1)
{flagy=1;
displayXY_data(0,a,b,c,2,d,e,f,15);/////////////十位加一
if(set_add_F==1)
{
set_add_F=0;
e+=1;
if(e>9)
e=0;
//flagx=0;
}
else if(setY_F==1)
{
setY_F=0;
while(1)
{ flagy=1;
setY_value=1;
displayXY_data(0,a,b,c,2,d,e,f,16);/////////百位加一
if(set_add_F==1)
{
set_add_F=0;
d+=1;
if(d>9)
d=0;
//flagx=0;
}
else if(set_sure_F==1)
break;
}
}
else if(setY_value==1||set_sure_F==1)
break;
}
}
else if(setY_value==1||set_sure_F==1)
break;
}
}
else if(setX_Z==1||setY_Z==1||start==1||back==1)
break;
}
//////////////////////////////////////////////////////////////
//XY坐标轴设置
////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////设X轴坐标
while(setX_Z==1||setY_Z==1||setX_Z_value==1||setY_Z_value==1)
{
set_sure_F=0;
displayXY_data(0,g,h,p,0,t,u,r,0);
if(setX_Z==1)
{ FX=1;
setX_Z_value=0;
set_sure_F=0;
setX_Z=0;
while(1)
{ FX=1;
displayXY_data(1,g,h,p,0,t,u,r,11);
if(set_add_F==1)
{
set_add_F=0;
p+=1;
if(p>9)
p=0;
}
else if(setX_Z==1)
{
setX_Z=0;
while(1)
{ FX=1;
displayXY_data(1,g,h,p,0,t,u,r,12);
if(set_add_F==1)
{
set_add_F=0;
h+=1;
if(h>9)
h=0;
}
else if(setX_Z==1)
{
setX_Z=0;
while(1)
{ FX=1;
displayXY_data(1,g,h,p,0,t,u,r,13);
setX_Z_value=1;
if(set_add_F==1)
{ XE=g*100+h*10+p;
set_add_F=0;
g+=1;
if(g>9)
g=0;
}
else if(set_sure_F==1)
break;
}
}
else if(setX_Z_value==1||set_sure_F==1)
break;
}
}
else if(setX_Z_value==1||set_sure_F==1)
break;
}
}
/////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////设Y轴坐标
else if(setY_Z==1)
{
FY=1;
setY_Z_value=0;
set_sure_F=0;
setY_Z=0;
while(1)
{FY=1;
displayXY_data(0,g,h,p,2,t,u,r,14);
if(set_add_F==1)
{
set_add_F=0;
r+=1;
if(r>9)
r=0;
}
else if(setY_Z==1)
{
setY_Z=0;
while(1)
{ FY=1;
displayXY_data(0,g,h,p,2,t,u,r,15);
if(set_add_F==1)
{
set_add_F=0;
u+=1;
if(u>9)
u=0;
}
else if(setY_Z==1)
{
setY_Z=0;
while(1)
{ FY=1;
displayXY_data(0,g,h,p,2,t,u,r,16);
setY_Z_value=1;
if(set_add_F==1)
{ YE=t*100+u*10*r;
set_add_F=0;
t+=1;
if(t>9)
t=0;
}
else if(set_sure_F==1)
break;
}
}
else if(setY_Z_value==1||set_sure_F==1)
break;
}
}
else if(setY_Z_value==1||set_sure_F==1)
break;
}
}
else if(setX_F==1||setY_F==1||start==1||back==1)
break;
}
/////////////////////////////////////////////////////////单独运行X电机
while(start==1&&flagx==1&&flagy==0&&FX==0&&FY==0) //当启动键按下和电机X速度设完标志为一和
{ //电机Y未设速度同时满足时进入电机X单独直线运行
start=0;
runX();
break;
}
////////////////////////////////////////////////////////////单独运行Y电机
while(start==1&&flagx==0&&flagy==1&&FX==0&&FY==0) //当启动键按下和电机Y速度设完标志为一和
{ //电机X未设速度同时满足时进入电机Y单独直线运行
start=0;
runY();
break;
}
///////////////////////////////////////////////////////////差补运行
while(start==1&&flag==0&&flagx==1&&flagy==1&&FX==1&&FY==1) //当启动键按下与回零标志位为0与速度,坐标都设置
{ //完整时进入步进电机插补运行
flag=1;
start=0;
chabu();
}
//////////////////////////////////////////////////////////回零运行
while(back==1&&flag==1) //回零键按下与回零标志为一时进入回零运行
{
flag=0;
back=0;
runback();
g=0;
h=0;
p=0;
t=0;
u=0;
r=0;
}
/////////////////////////////////////////////////////////////
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -