找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2792|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

步進電機驅(qū)動器簡單應(yīng)用-自動廣告牌控制51單片機程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:104126 發(fā)表于 2016-1-24 02:50 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include <REG51.H>
/*定義程序中的公共變量參數(shù)*/
unsigned int ti_dis;        //定義時間間隔
unsigned int mot_step;  //定義步數(shù)
unsigned int mo_bc=25;//定義電機所轉(zhuǎn)圈數(shù)的參數(shù),可根據(jù)實際情況修改
unsigned int js=150;      //定義電機速度參數(shù),數(shù)值越小,速度越快,最小為8,小于8可能堵轉(zhuǎn)。根據(jù)實際情況可進行修改。
unsigned int cjs=15;      //定義時間基本控制參數(shù),如無問題不需要修改
/*變量參數(shù)定義結(jié)束*/

/*以下為延時控制過程*/
void delay(unsigned int ti_small,unsigned int ti_base)//ti_small為時間最小單位,ti_base=1000時為10ms,a*ti=mS
{
while(--ti_small!=0)  //循環(huán)開始
   {
      for(ti_dis=0;ti_dis<=ti_base;ti_dis++);  //時間累加器
   }
}
/*時間延時過程結(jié)束*/

/*以下為主程序,執(zhí)行電機的正反轉(zhuǎn),控制速度和延時*/
void main(void)
{
  P1=0xFF;                 //穩(wěn)定信號輸出,防止上電時電機轉(zhuǎn)子因信號不穩(wěn)定抖動
  delay(1000,1000);   //加電10s后再運行主程序,給調(diào)試人員留出足夠準備時間,防止出現(xiàn)事故?筛鶕(jù)實際情況修改,為安全起見建議時間延長
  /*以下程序未控制電機運動方式的主體部分*/
   while(1)  //無限循環(huán)
   {
     for(mot_step=0;mot_step<mo_bc;mot_step++)  //循環(huán)控制旋轉(zhuǎn)圈數(shù),正轉(zhuǎn)
       {
         delay(js,cjs); //每步延時  
       P1=0xF7;        //電機轉(zhuǎn)速,正傳
       delay(js,cjs);   //每步延時  
       P1=0xFB;       //電機轉(zhuǎn)速,正傳
    }
       P1=0x00;          //軟制動,防止機械部件因慣性造成過位
       delay(20,cjs);    //延長制動時間,防止電機拖動的負荷因慣性造成過未,如果需要調(diào)整制動停留時間,數(shù)字20根據(jù)實際情況修改
       P1=0xFF;          //防止停車后電機過熱
       delay(1000,1000); //間隔10s,還行反轉(zhuǎn),可根據(jù)需求進行修改
     for(mot_step=0;mot_step<mo_bc;mot_step++)  //循環(huán)控制旋轉(zhuǎn)圈數(shù),反轉(zhuǎn)
       {
         delay(js,cjs);  //每步延時
       P1=0xFD;        //電機轉(zhuǎn)速,反傳
       delay(js,cjs);    //每步延時
       P1=0xFE;        //電機轉(zhuǎn)速,反傳
    }
       P1=0x00;          //軟制動,防止機械部件因慣性造成過位
       delay(20,cjs);    //延長制動時間,防止電機拖動的負荷因慣性造成過未,如果需要調(diào)整制動停留時間,數(shù)字20根據(jù)實際情況修改
       P1=0xFF;          //防止停車后電機過熱
       delay(1000,1000); //間隔10s,執(zhí)行正傳,可根據(jù)需求進行修改
  }
  /*電機控制主體部分結(jié)束*/
}
/*主程序段結(jié)束*/


評分

參與人數(shù) 1黑幣 +5 收起 理由
DIY電子 + 5 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:100826 發(fā)表于 2016-7-4 23:55 | 只看該作者
謝謝分享  學(xué)習(xí).........
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表