找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32單片機(jī)控制步進(jìn)電機(jī)正反轉(zhuǎn)和加減速源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:577601 發(fā)表于 2019-7-4 15:21 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
本次上傳附件為STM32單片機(jī)控制步進(jìn)電機(jī)正反轉(zhuǎn)和加減速的內(nèi)容

單片機(jī)源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "usart.h"
  5. #include "key.h"
  6. #include "usmart.h"
  7. #include "driver.h"



  8. int main(void)
  9. {
  10.         u8 i;
  11.         u8 keyval;
  12.         NVIC_Configuration();
  13.         delay_init();                     //延時(shí)函數(shù)初始化          
  14.         uart_init(115200);                 //串口初始化為115200
  15.         usmart_dev.init(72);         //初始化USMART                                        
  16.         LED_Init();                                //初始化與LED連接的硬件接口
  17.         KEY_Init();                                //初始化按鍵
  18.         Driver_Init();                //驅(qū)動器初始化
  19.         TIM8_OPM_RCR_Init(999,72-1); //1MHz計(jì)數(shù)頻率  單脈沖+重復(fù)計(jì)數(shù)模式          
  20.         TIM_Init();  
  21.         TIM5_Init();
  22.        
  23.         while(1)
  24.         {                           
  25.                 keyval=KEY_Scan(0);
  26.                 if(keyval==WKUP_PRES)
  27.                 {
  28.                         Pulse_Control(500,10000); //500us(2kHZ)
  29.                   delay_ms(1000);
  30.                         Pulse_number(500,10000);       
  31.                         delay_ms(1000);
  32.                 }else if(keyval==KEY0_PRES)
  33.                 {
  34.                        
  35.                         Locate_Rle(10000,2000,CW);//按下KEY0,以2000Hz的頻率 順時(shí)針發(fā)10000脈沖
  36.                         delay_ms(1000);
  37.                   Pulse_number(500,10000);        //PA3
  38.                         delay_ms(1000);
  39.                         Pulse_Control(500,10000); //500us(2kHZ) PC6
  40.                   delay_ms(1000);
  41.                        
  42.                 }else if(keyval==KEY1_PRES)
  43.                 {
  44.                         Locate_Rle(10000,5000,CCW);//PC7 按下KEY1,以5000Hz的頻率 逆時(shí)針發(fā)10000脈沖
  45.                  
  46.                 }                                       
  47.                 delay_ms(10);
  48.                 i++;
  49.                 if(i==50)       
  50.                 {       
  51.                         i=0;
  52.                         LED1=!LED1;
  53.                 }       
  54.         }                                                                                            
  55. }       



復(fù)制代碼


速度+位置控制 可控三個(gè)電機(jī).7z

226.12 KB, 下載次數(shù): 147, 下載積分: 黑幣 -5

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

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2019-7-4 20:16 | 只看該作者
本帖需要重新編輯補(bǔ)全電路原理圖,源碼,詳細(xì)說明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復(fù)

使用道具 舉報(bào)

板凳
ID:620272 發(fā)表于 2019-12-10 21:31 | 只看該作者
f407的板子可以控制么?
回復(fù)

使用道具 舉報(bào)

地板
ID:819075 發(fā)表于 2020-9-15 10:25 來自手機(jī) | 只看該作者
加減速程序是不是沒有呢?
回復(fù)

使用道具 舉報(bào)

5#
ID:861681 發(fā)表于 2021-6-18 23:08 來自手機(jī) | 只看該作者
有protues電路圖嗎
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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