1. ALAT DAN BAHAN
-
Arduino Uno R3
-
MIcro Servo
-
Breadboard
-
Push Button Switch
2. SKEMA RANGKAIAN
3. CODE PROGRAM
#include <Servo.h>
// Deklarasi pin dan objek
Servo microServo;
const int buttonPin = 2; // Pin untuk pushbutton
// Variabel status
int buttonState = 0;
bool isServoMoved = false;
void setup() {
// Hubungkan servo ke pin 9
microServo.attach(9);
// Set posisi awal servo ke 0 derajat
microServo.write(0);
// Set pin button sebagai INPUT_PULLUP
// (Pin berlogika HIGH saat tidak ditekan, dan LOW saat ditekan)
pinMode(buttonPin, INPUT_PULLUP);
}
void loop() {
// Baca status tombol
buttonState = digitalRead(buttonPin);
// Jika tombol ditekan (logika LOW)
if (buttonState == LOW) {
if (!isServoMoved) {
// Gerakkan servo ke 90 derajat
microServo.write(90);
isServoMoved = true;
} else {
// Kembalikan servo ke 0 derajat jika ditekan lagi
microServo.write(0);
isServoMoved = false;
}
// Debounce sederhana agar pembacaan tombol tidak 'mentul'
delay(300);
}
}