#include <AccelStepper.h>
// Inisialisasi objek motor stepper
AccelStepper stepper(AccelStepper::DRIVER, 2, 3);
// Inisialisasi pin push button
const int pushButton = 4;
void setup() {
// Set kecepatan motor
stepper.setMaxSpeed(1000);
stepper.setAcceleration(500);
// Mulai serial monitor
Serial.begin(9600);
// Set pin push button sebagai input
pinMode(pushButton, INPUT_PULLUP);
}
void loop() {
// Jika push button ditekan
if (digitalRead(pushButton) == LOW) {
// Putar motor bolak-balik sebanyak 5 kali
for (int i = 0; i < 5; i++) {
Serial.println("Motor bergerak");
// putaran ke 1: sekali berputar setengah putaran ke kanan
//myStepper.setSpeed(200);
stepper.moveTo(100);
while (stepper.distanceToGo() != 0) {
stepper.runToPosition();
}
delay(1000);
// putaran ke 2: sekali berputar setengah putaran ke kiri
//myStepper.setSpeed(-200);
stepper.move(-100);
while (stepper.distanceToGo() != 0) {
stepper.runToPosition();
}
delay(1000);
}
}
// Tampilkan pesan di serial monitor setelah motor berputar bolak-balik sebanyak 5 kali
Serial.println("Motor Diam");
}