找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1414|回復: 0
打印 上一主題 下一主題
收起左側(cè)

arduino步進電機程序仿真

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:28942 發(fā)表于 2018-7-8 07:56 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式


論壇很少有arduino的仿真,對不想買板子的壇友真沒法驗證代碼正確與否,在這里貼個仿真供參考。
ATMEGA328最小系統(tǒng)
程序代碼


#include <Stepper.h>

/*-----( Declare Constants, Pin Numbers)-----*/
//---( Number of steps per revolution ofINTERNAL motor in 4-step mode )---
#define STEPS_PER_MOTOR_REVOLUTION 32   

//---( Steps per OUTPUT SHAFT of gearreduction )---
#define STEPS_PER_OUTPUT_REVOLUTION 32 *64  //2048  


/*-----( Declare objects )-----*/
// create an instance of the stepper class,specifying
// the number of steps of the motor and thepins it's
// attached to
//-------------------------------------------------------------
//The pin connections need to be pins8,9,10,11 connected
// to Motor Driver In1, In2, In3, In4
//-------------------------------------------------------------

// Then the pins are entered here in thesequence 1-3-2-4 for proper sequencing
Steppersmall_stepper(STEPS_PER_MOTOR_REVOLUTION, 8, 10, 9, 11);

/*-----( Declare Variables )-----*/
int Steps2Take;

void setup()   /*----( SETUP: RUNS ONCE )----*/
{
// Nothing (Stepper Library sets pins as outputs)
}/*--(end setup )---*/

void loop()   /*----( LOOP: RUNS CONSTANTLY )----*/
{
Steps2Take  =  STEPS_PER_OUTPUT_REVOLUTION ;  // Rotate CW 1 turn
small_stepper.setSpeed(500);   
small_stepper.step(Steps2Take);
delay(1000);

Steps2Take  =  - STEPS_PER_OUTPUT_REVOLUTION;  // Rotate CCW 1 turn  
small_stepper.setSpeed(500);  //700 a good max speed??
small_stepper.step(Steps2Take);
delay(2000);
}


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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表