Kendali Flip Flop Berbasis Arduino

Mau tidak mau, suka tidak suka karena resiko profesi harus update terus. Akhirnya… bisa juga membuat Flip Flop yang dikendalikan oleh Arduino, yang sebelumnya sudah membuat Flip Flop berpengendali mikrokontroler dan juga berpengendali PLC.

Pada jejak kali ini akan mencoba membuat pengendali Flip Flop Berbasis Arduino dengan harapan menjadi dasar untuk memahami pemograman untuk pengendali berbasis Arduino yang lainnya.

Seperti biasa sebelum membuat program dibuat dulu flowchart atau diagram alir untuk pengendali Flip Flop Berbasis Arduino. Bentuk Flowchart sama dengan pengendali Flip Flop berbasis mikrokontroler dan yang lainnya yang ditunjukkan gambar di bawah ini.

Diagram Alir Program Pengendali Flip Flop Berbasis Arduino Uno
 

Rangkaian untuk simulasi pengendali Flip Flop Berbasis Arduino yang dibuat pada aplikasi Proteus seperti gambar di bawah ini.

Rangkaian Simulasi Flip Flop
Rangkaian Pengendali Flip Flop Berbasis Arduino
Dari rangkaian di atas dapat terlihat jika tombol Start ditekan maka LED1 dan LED2 akan menyala bergantian terus menerus sampai tombol Stop ditekan. LED1 dan LED2 akan menyala bergantian lagi jika tombol Start ditekan lagi.

Gambar rangkaian pada perangkat lunak Proteus tidak akan berbentuk simulasi tanpa ada program yang dimasukan ke komponen mikrokontroler tersebut. Untuk membuat program sesuai rangkaian yang dibuat bisa menggunakan perangkat lunak Arduino 1.8.7, karena dengan Arduino 1.8.7 bisa menyimpan file dengan format HEX dan dapat diintegrasikan ke perangkat lunak Proteus.

Daftar program untuk sistem di atas menggunakan Bahasa Arduino IDE seperti berikut ini.

// kita buat variabel untuk nomor pin supaya lebih mudah merujuknya

const int pinStart = A0;

const int pinStop = A1;

const int pinLed1 = 12;

const int pinLed2 = 13; // variabel untuk menyimpan nilai input pin button

int nilaiStart = 0;

int nilaiStop = 0;

int i = 0;

 

void setup()

{

// set mode input pada pin untuk button, ga wajib

pinMode(pinStart, INPUT);

pinMode(pinStop, INPUT); // set pin untuk LED ke mode output

pinMode(pinLed1, OUTPUT);

pinMode(pinLed2, OUTPUT);

}

void loop()

{

// baca nilai pin untuk button

nilaiStart = digitalRead(pinStart); // cek apakah button ditekan

if (nilaiStart == LOW)

{

while (i<1)

{

nilaiStop = digitalRead(pinStop); // nyalakan LED

digitalWrite(pinLed1, LOW);

digitalWrite(pinLed2, HIGH);

delay(1000);

if (nilaiStop == LOW) {break;} //Tombol Stop ditekan

digitalWrite(pinLed1, HIGH);

digitalWrite(pinLed2, LOW);

delay(1000);

if (nilaiStop == LOW) {break;} //Tombol Stop ditekan } }

else

{

// kalo nilai pin LOW // matikan LED

digitalWrite(pinLed1, LOW);

digitalWrite(pinLed2, LOW);

}

}

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *