我用的雕刻软件是Mach3,控制软件用C51编写的。
传一下控制软件,很简单。
#include "at89x52.h"
void main(void)
{
unsigned int X[8] = {160,32,96,64,80,16,144,128 };//"定义步进电机数组"
unsigned char a=0 ; //"定义数组下标变量,变量必须是字符型变量! "
unsigned int b; //"定义变量并赋值"
P3_1=1;
P3_0=1; //"确定P3.1 P3.0 为接受信号模式,P要大写啊!"
while (1)
{
do
{
;
} while (P3_0==0); //"确认是否有高电平信号"
for( [s:9]3_0==1; ); //"判断是否是步进脉冲信号 "
if (P3_1==1) //"确定正转信号,执行正转"
{ P1=X[a];
if(a<7) a++ ;
else a=0;
}
else if (P3_1==0) //"确认反转信号,执行反转 "
{ if(a>0) a-- ;
else a=7;
P1=X[a];
}
for (b=0; b<750; b++);//"延时"
P1=0;
}
}
传一下控制软件,很简单。
#include "at89x52.h"
void main(void)
{
unsigned int X[8] = {160,32,96,64,80,16,144,128 };//"定义步进电机数组"
unsigned char a=0 ; //"定义数组下标变量,变量必须是字符型变量! "
unsigned int b; //"定义变量并赋值"
P3_1=1;
P3_0=1; //"确定P3.1 P3.0 为接受信号模式,P要大写啊!"
while (1)
{
do
{
;
} while (P3_0==0); //"确认是否有高电平信号"
for( [s:9]3_0==1; ); //"判断是否是步进脉冲信号 "
if (P3_1==1) //"确定正转信号,执行正转"
{ P1=X[a];
if(a<7) a++ ;
else a=0;
}
else if (P3_1==0) //"确认反转信号,执行反转 "
{ if(a>0) a-- ;
else a=7;
P1=X[a];
}
for (b=0; b<750; b++);//"延时"
P1=0;
}
}
200字以内,仅用于支线交流,主线讨论请采用回复功能。