Programlama Kodları
//AÇIKLAMA
//Bu uygulamada motorun 1/1, 1/2 ve 1/4 adımlarla sağa dönmesini sağladık
const int DIR = 3;
const int STEP = 4;
const int MS3 = 5;
const int MS2 = 6;
const int MS1 = 7;
int i;
void setup()
{
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
pinMode(MS3, OUTPUT);
pinMode(MS2, OUTPUT);
pinMode(MS1, OUTPUT);
}
void loop()
{
// 1/1(Full Step) Adımlarla Sağa Döndürme. Adım sayısı 1/1 olduğu için motor tam tur atar.
digitalWrite(DIR, HIGH); //sağa döndürme
digitalWrite(MS1, LOW);
digitalWrite(MS2, LOW);
digitalWrite(MS3, LOW);
for (i = 0; i < 96; i++)
{
digitalWrite(STEP, HIGH);
delayMicroseconds(10000); //10ms
digitalWrite(STEP, LOW);
delayMicroseconds(10000); //10ms
}
delay(1000);
// 1/2(Half Step) Adımlarla Sağa Döndürme. Adım sayısı 1/2 olduğu için motor yarım tur atar.
digitalWrite(DIR, HIGH); //sağa döndürme
digitalWrite(MS1, HIGH);
digitalWrite(MS2, LOW);
digitalWrite(MS3, LOW);
for (i = 0; i < 96; i++)
{
digitalWrite(STEP, HIGH);
delayMicroseconds(10000); //10ms
digitalWrite(STEP, LOW);
delayMicroseconds(10000); //10ms
}
delay(1000);
// 1/4(Quarter Step) Adımlarla Sağa Döndürme. Adım sayısı 1/4 olduğu için motor çeyrek tur atar.
digitalWrite(DIR, HIGH); //sağa döndürme
digitalWrite(MS1, LOW);
digitalWrite(MS2, HIGH);
digitalWrite(MS3, LOW);
for (i = 0; i < 96; i++)
{
digitalWrite(STEP, HIGH);
delayMicroseconds(10000); //10ms
digitalWrite(STEP, LOW);
delayMicroseconds(10000); //10ms
}
delay(1000);
}
Devre Şeması

0 comments:
Yorum Gönder