基于STM32单片机的步进电机控制系统设计

描述

一.系统概

系统内使用按键进行步进电机的控制,可以控制步进电机的启动和关闭,使用按键进行加速和减速以及进行旋转方向的改变。

单片机

 

二.仿真概述

按键1进行减速,按键2进行加速,按键3进行方向改变,按键4进行开启关闭,实时速度以及方向和工作状态都会在显示屏端进行显示。

单片机

 

三.程序设计

 

int main(void)
{  
  u8 dir =0,d=100;  
  static u8 key = 0;
  u8 work=0;
  
  Lcd1602_Init();
  Motor_Init();
  Key_Init();
  
  Lcd1602_Write_String(0x80,sizeof"28BYJ-45  test",(u8*)"28BYJ-45  test");
  Lcd1602_Write_String(0xc0,sizeof"welcome",(u8*)"welcome");
  delay_ms(1000);
  Lcd1602_Write_CD(CMD,0X01);
  
  Lcd1602_Write_String(0x80,3,(u8*)"DIS");
  Lcd1602_Write_String(0x87,1,(u8*)"V");
  Lcd1602_Write_String(0x8c,4,(u8*)"Work");
  
  
  while(1)
  {
    
    Key_0();
    
    if(Key0Flag ==1 )
    {
      key = Key_0();
      Key0Flag=0;
      
      switch (key)
      {
      case 1:
        d = d+30;
        break;
      case 2:
        
        d = d-30;
        break;
      case 3:
        
        dir = ~dir;
        break;
      case 4:
        work = ~work;
        break;
      default:
        break;
 
      }
    }
 
  }  
}
 
 
 

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分