快捷搜索:

基于89c2051设计一个简单的激光雕刻机(带C语言程序)

基于89c2051设计一个简单的激光雕刻机(带C语言程序)

  有人用废旧光驱制作的激光雕刻机,他们的驱动板我不懂,我只知道51单片机的一些东西,于是就手头的材料开始了,先上驱动板的原理图

本文引用地址:

基于89c2051设计一个简单的激光雕刻机(带C语言程序)


基于89c2051设计一个简单的激光雕刻机(带C语言程序)


基于89c2051设计一个简单的激光雕刻机(带C语言程序)


基于89c2051设计一个简单的激光雕刻机(带C语言程序)


基于89c2051设计一个简单的激光雕刻机(带C语言程序)


基于89c2051设计一个简单的激光雕刻机(带C语言程序)


基于89c2051设计一个简单的激光雕刻机(带C语言程序)

  驱动板中标注的1,3脚接电脑并口的2,3脚为步进驱动信号。

  驱动板中标注的2,4脚接电脑并口的6,7脚为步进方向信号。

  驱动板中标注的5,6,7,8脚接电机驱动板控制一个轴的步进电机,9,10,11,12脚接电机驱动板控制另一个轴的步进电机。

  电机驱动板是从淘宝上给买的L9110 电机驱动模块

  我用的雕刻软件是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++);//“延时”

您可能还会对下面的文章感兴趣: