Arduino学习(6)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/github_39611196/article/details/83445716

本文介绍Arduino连接并控制步进电机。

连接方式:

代码:

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

//四相单四拍
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 DulBeat2
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<sizeof(MODE);i++)
{
ROTATE(MODE[i]);
delay(Speed);
}
}
//顺时针旋转
void Clockwise(int Speed)
{
for(int i=sizeof(MODE);i>=0;i--)
{
ROTATE(MODE[i]);
delay(Speed);
}
}
void loop() {


Clockwise(50);
delay(500);
Serial.println("OK...");

}

运行结果:

猜你喜欢

转载自blog.csdn.net/github_39611196/article/details/83445716