arduino 步进电机驱动库_arduino中驱动 步进电机

2018-4-13 21:03 上传

点击文件名下载附件

参考:

/*********************************

功能:驱动28BYJ-48步进电机

设计:凌晨七點半

日期:2018.3.25

连接引脚:分别将28BYJ-48驱动器的IN1 IN2 IN3 IN4连接到

Arduino Uno R3 4 5 6 7引脚 也就是PORTD 4 5 6 7

*********************************/

//定义连接为PD4 PD5 PD6 PD7

#define ROTATE(x) {PORTD|=x;PORTD&=(x|0x0F);}

unsigned long Time;

unsigned long End;

//四相单四拍

const char SinBeat[4]={0x80,0x40,0x20,0x10};

//四相双四拍

const char DulBeat1[4]={0xc0,0x60,0x30,0x90};

//四相双八拍

const char DulBeat2[8]={0x80,0xc0,0x40,0x60,0x20,0x30,0x10,0x90};

//节拍模式选择

#define MODE SinBeat//DulBeat1

void setup() {

pinMode(4,OUTPUT);

pinMode(5,OUTPUT);

pinMode(6,OUTPUT);

pinMode(7,OUTPUT);

Serial.begin(9600);

}

逆时针旋转

//void Anti_Clockwise(int Speed)

//{

//for(int i=0;i

//{

// ROTATE(MODE[i]);//{PORTD|=MODE[i];PORTD&=(MODE[i]|0x0F);}

//delay(Speed);

//}

//}

//顺时针旋转

void Clockwise(int Speed)

{

for(int i=sizeof(MODE);i>=0;i--)

{

ROTATE(MODE[i]);

delay(Speed);

}

}

void loop() {

Time = millis();

do

{

Clockwise(2);

End = millis() - Time;

} while(End < 6000);

delay(25920000); // 一天86400000  三天25920000

//Serial.println("OK...");

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值