发 帖  
原厂入驻New
[问答] 哪位大神可以帮我注释一下步进电机调速控制的c程序
112 步进电机
分享
#define uchar unsigned char

sbit UpPulse=P3^4;

static uchar step;


void InitTimer(void);

void InitTimer(void)
   TMOD=0x55;
   TL0=0xfe;
   TL1=0xfe;
   ET1=1;
   TR0=1;
}
void InitMAin(void)
   LockPin=1;
   P1=0;
   P3=0xf5;
}
//up pulse
void timer0() interrupt 1 using 1
   EA=0;
   TL0=0xff;
   TL1=0xfd;
   PulseYes=0;

   {
          P1=0x12;                          //0001 0010    P1.7  P1.6 P1.5 P1.4  P1.3 P1.2 P1.1           
   }
   {
          P1=0x0e;                          //0000 1110    P1.7  P1.6 P1.5 P1.4  P1.3 P1.2 P1.1        
   }
   {
          P1=0x12;                           //A->A-  B->B-
   }
   {
          P1=0x70;                           //0111 0000
   }
   {
          P1=0x12;
   }
   {
          P1=0x0e;
   }
   {
          P1=0x12;
   }
   {
          P1=0x70;
   }
}


{
   TH1=0xff;
   TH0=0xff;
   LockPin=0;
   count=0;
   IF(step==6)
      P3=(step|0xf0);
          step=2;
   else if(step==4)
      P3=(step|0xf0);
          step=6;
   else if(step==5)
      P3=(step|0xf0);
          step=4;
   else if(step==1)
      P3=(step|0xf0);
          step=5;
   else if(step==9)
      P3=(step|0xf0);
          step=1;
   else if(step==8)
      P3=(step|0xf0);
          step=9;
   else if(step==0x0a)
      P3=(step|0xf0);
          step=8;
   else if(step==2)
      P3=(step|0xf0);
          step=0x0a;
   EA=1;

{
   for(i=0;i<200;i++)
   InitMAin();
   while(1)
     
          {
          }
             LockPin=1;
          {
                 LockPin=1;
                 TH0=0xff;
                 TH1=0xff;
          }         
   }
}


0
2020-5-23 00:35:29   评论 分享淘帖 邀请回答

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
我要提问
关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表