⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 judge_dir.c

📁 基于Cortex-M3的全自动焊接机
💻 C
字号:
if(1==motor3_exe_step)//如果是启动阶段
    {   
        switch(DirStep) 
        {
          case 0:                                               /*  第0步                       */
              if ( !GPIOPinRead(Motor_Enco_PORT3, Motor3_Enco_A))   /* A相为低电平                */
              {    
                  TimerLoadSet(TIMER1_BASE, TIMER_A, timerloadvalue);   /*  复位定时器1               */
                  DirStep ++;                                   /*  下一步                      */
              }
              break;
    
          case 1:                                               /*  第1步                       */
              if ( !GPIOPinRead(Motor_Enco_PORT3, Motor3_Enco_B))   /*  B相低电平                */
              {               
                  Dir_T1 = TimerValueGet(TIMER1_BASE, TIMER_A);       /*  读出第一个A相下降沿和
                                                                                   B相下降沿之间的时间     */
                  TimerLoadSet(TIMER1_BASE, TIMER_A, timerloadvalue);                                                                
                  DirStep ++; 
              }
              break;
    
          case 2:                                             /*  第2步                       */
              if ( !GPIOPinRead(Motor_Enco_PORT3, Motor3_Enco_A)) /*  A相低电平                */
              {               
             
                  Dir_T2 = TimerValueGet(TIMER1_BASE, TIMER_A);       /*  读出B相下降沿和第二个
                  //可以考虑关B相中断  暂时先不关中断,这样实时性都满足                                                             SPEED1下降沿之间的时间      */
                  //那就什么实时性问题都不存在了
                  DirStep = 0;
                  if (Dir_T1 > Dir_T2) 
                  {
                      //这个赋值不合适
                      palced_magor[2].dir = 1;                       /*  A相在前 */
                  } 
                  else 
                  {         
                      palced_magor[2].dir = 0;                       /*  B相在前*/
                  }           
              }
              break;
            
            default:
                DirStep = 0;
                break;
        } 
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -