1. 程式人生 > >STM32103驅動28BYJ48步進電機

STM32103驅動28BYJ48步進電機

軟體的實現  使用STM32F103控制電機

下面是正轉翻轉的編碼 根據技術要求。如圖用的單雙八拍。

unsigned char F_Rotation[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09} ;  //FAN

unsigned char B_Rotation[8]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08} ;  //ZHENG

此函式兩個引數,第一個引數是圈數。第二個引數是方向也就是選擇正轉和翻轉

void motorNCircle(int n,bool position)

{

   int i=0;

   int  j=0;

   int k=0;

   for(j=0;j<n;j++)

   {

      for(i=0;i<64*8;i++)     

      {

          for(k=0;k<8;k++)

          {

              if(TRUE == position)

                 SetMotor(F_Rotation[k]);  

             else

                 SetMotor(B_Rotation[k]);  

             Delay(20000);       

          }

      }

    }

}

下面就是SetMotor函式,根據傳的資料不同,控制的4個IO pin輸出不同。

void SetMotor(unsigned char InputData)

{

    if(InputData & 0x08)

    {

        GPIO_ResetBits(GPIOC, GPIO_Pin_6 );   

    }

    else

   {

        GPIO_SetBits(GPIOC, GPIO_Pin_6);

    }

    if(InputData & 0x04)

    {

        GPIO_ResetBits(GPIOC, GPIO_Pin_7 );   

    }

   else

    {

        GPIO_SetBits(GPIOC, GPIO_Pin_7);

    }

    if(InputData & 0x02)

    {

        GPIO_ResetBits(GPIOC, GPIO_Pin_8 );   

    }

    else

   {

        GPIO_SetBits(GPIOC, GPIO_Pin_8);

    }

   if(InputData & 0x01)

   {

       GPIO_ResetBits(GPIOC, GPIO_Pin_9 );   

   }

   else

  {

       GPIO_SetBits(GPIOC, GPIO_Pin_9);

  }

}

相關推薦

STM32103驅動28BYJ48電機

軟體的實現  使用STM32F103控制電機 下面是正轉翻轉的編碼 根據技術要求。如圖用的單雙八拍。 unsigned char F_Rotation[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09} ;  //FAN unsigned char B_Rota

【常用晶片】ULN2003工作原理及中文資料(例項:STM32驅動28BYJ48電機

ULN2003的基本介紹ULN2003的概述ULN2003是高耐壓、大電流複合電晶體陣列,由七個矽NPN 複合電晶體組成。一般採用DIP—16 或SOP—16 塑料封裝。ULN2003的主要特點:ULN2003 的每一對達林頓都串聯一個2.7K 的基極電阻,在5V 的工作電壓

28BYJ48電機 4拍、8拍驅動相序表 C51程式程式碼

值得參考的資料推薦(新手建議先閱讀,因為本文直接跳過了概念介紹): http://blog.sina.com.cn/s/blog_6035432c0100ha1f.html http://blog.csdn.net/feiyinzilgd/article/details/5743730 http:/

A4988驅動42電機

操作 got 左移 find 連接 edi mos hsv period A4988步進電機驅動器驅動控制42步進電機速度,步進電機調速,調節驅動電流 1 A4988步進電機驅動器簡介 方

MicroPython TPYBoard v102 驅動28BYJ-48電機

發送 角度 數值 () back delay img 啟動 rst 實驗目的 了解步進電機的工作原理 學習步進電機的驅動方法 實驗器材 TPYBoard v102 1塊 微型步進電機(28BYJ-48) 1個 步進電機驅動板(ULN200

【膜摸摸】網紅電機驅動A4988和DRV8825的對比和區別及選用實踐 for 四軸CNC雕刻/3D列印

【轉自】http://blog.csdn.net/ling3ye/article/details/47001251 用Arduino驅A4988驅動電機對於DIY3D印表機: 材料清單BOM: Arduino uno *1A4988      

Arduino ULN2003驅動模組+28BYJ-48電機

步進電機,由於其獨特的設計,可以沒有任何反饋機制而控制到一個高度的準確性。一個步進電機的軸,安裝有一系列的磁鐵,是由一系列的電磁線圈控制,這些線圈按一個特定的序列排列正負極,尤其是向前或向後移動一小“步”。 有兩種型別的步進電機,單極型和雙極型電晶體,而且知道你正在使用哪種

電機 28BYJ-48介紹和驅動及程式設計

28BYJ-48步進電機: 步進電機是一種將電脈衝轉化為角位移的執行機構。通俗一點講:當步進驅動器接收到一個脈衝訊號,它就驅動步進電機按設定的方向轉動一個固定的角度(及步進角)。您可以通過控制脈衝個來控制角位移量,從而達到準確定位的目的;同時您可以通過控制脈衝頻

[嵌入式Linux驅動]S5PV210的電機Linux驅動程式

#include <asm/io.h> #include <asm/uaccess.h> #include <linux/fs.h> #include <linux/delay.h> #include <linux/module.h> #inclu

海思電機驅動

hisi_motor.c#include <linux/module.h> //所有模組都需要的標頭檔案 #include <linux/kernel.h> #include <linux/fs.h> //檔案系統有關的,結構體file_o

使用ULN2803驅動28BYJ-48電機

uln2803則是解決驅動問題,微控制器達不到驅動電流,使用也很方便,1—8引腳是輸入,9接地,10接VCC,11到18輸出,輸入高電平,輸出低電平,輸出高,則無法驅動電機,這裡的電機正極接電源,負極接uln2803輸出埠,這裡有一個問題,樓主使用的時候,用的是uln2803

兩相四線電機驅動

說明:STM32、L298、TB6612、步進電機。 一:L298驅動步進電機 1.關於L298 原理:電機驅動模組內部有H橋的電路,包括4個三極體和1個電機,要使電機運轉,必須導通對角線上的一對三極體。根據不同三極體對的導通情況,電流可能會從左至右或從右

28BYJ-48電機+ULN2003驅動模組

步進電機的操作倒是簡單,只需要引用Stepper.h庫檔案操作即可。 關鍵點: 1、網上買的步進電機,很多接線順序都不對。經過不懈努力查資料,終於找到了能用的接線方式: 電機上的12345針腳,對應著接線端子的42135。 2、ULN2003步進

電機驅動晶片選型指南

1、系統常識: 步進電機和步進電機驅動器構成步進電機驅動系統。步進電機驅動系統的效能,不但取決於步進電機自身的效能,也取決於步進電機驅動器的優劣。對步進電機驅動器的研究幾乎是與步進電機的研究同步進行的。 2、系統概述: 步進電機是一種將電脈衝轉化為角位移的

TMC260/TMC2660/TMC262電機驅動

1.TMC260   TCM260是德國TRINAMIC公司產的步進電機驅動晶片,綜合性能應該是步進電機驅動晶片中排前列的,當然價格也是。TMC260程式上相容TMC2660、TMC262,其中TMC2660是比較新的型號,驅動電流也比TMC260要大;TMC

2相四線,四相五線,四相六線電機接線及驅動方法

步進電機原理 按照常理來說,步進電機接線要根據線的顏色來區分接線。但是不同公司生產的步進電機,線的顏色不一樣。特別是國外的步進電機。 那麼,步進電機接線應該用萬用表打表。 步進電機內部構造如下圖: 通過上圖可知,A,~A是聯通的,B和~B是聯通。那麼,A和~A是一

張高興的 Windows 10 IoT 開發筆記:使用 ULN2003A 控制電機

uln2003 zhang windows iot ges 開發 ima dem win   GitHub:https://github.com/ZhangGaoxing/windows-iot-demo/tree/master/ULN2003A   張高興的 Wind

28BYJ-48電機

通過 b- 步進電機 加速 color 定位 col spa -a 28BYJ-48步進電機:1、步進電機是一種將電脈沖轉化為角位移的執行機構。 2、通俗一點講:當步進驅動器接收到 一個脈沖信號,它就驅動步進電機按設定的方向轉動一個固定的角度(及步進角)。 3、通過控制脈沖

閉環電機與伺服電機對比

決定 使用 image 設備 log 良好的 定性 問題 觀察 市場上常見3D打印機電機選用的是開環步進電機,出於成本、體積、控制算法實現難以程度,開環步進電機可以達到acceptable的控制效果。 伺服電機是被現在的工程師們所推崇和津津樂道的,提到運動控制不談伺服電機幾

伺服電機電機的區別

采樣 標準 通過 本質 工作 方式 中大 tar wdk 步進電機和交流伺服電機性能比較 步進電機是一種離散運動的裝置,它和現代數字控制技術有著本質的聯系。在目前國內的數字控制系統中,步進電機的應用十分廣泛。隨著全數字式交流伺服系統的出現,交流伺服電機也越來越多地應用於數字