Percobaan 1 kondisi8
tambahlah resistor sebesar 1k ohm sebelum button.
Pada percobaan ini kita menggunakan beberapa komponen diantaranya ada 2 buah arduino (master dan slave), ada button, resistor ,LED dan ground. Pin 2 pada arduino master dihubungkan dengan resistor dan button, lalu pin transmiter master dihubungkan dengan receiver slave dan sebaliknya receiver master dihubungkan dengan transmiter slave, lalu pin 12 pada slave dihubungkan dengan LED. Secara sederhana prinsip kerjanya yaitu, jika button ditekan maka pin 2 master akan menerima nilai lalu master akan memberikan perintah dan slave akan menerima/mengerjakan perintah dari master tersebut.
Listing program master
Prinsip kerja dari program master yaitu, pertama-tama deklarasikan pin 2 untuk button, lalu ada fungsi void setup dimana pada fungsi ini semua kode akan di eksekusi secara sekali. Lalu dalam fungsi void setup ada pinMode(Button,INPUT_PULLUP) berfungsi untuk mendeklarasikan button sebagai input pullup. Maksud input pullup yaitu, ketika button tidak di tekan maka dia akan berlogika 1, sedangkan jika button ditekan dia akan berlogika 0. Selanjutnya ada Serial.beggin(9600) berfungsi untuk mengatur kecepatan pengiriman data melalui port serial.
Lalu ada fungsi void loop yang mana dalam fungsi ini semua kode akan di eksekusi berulang, dalam fungsi ini ada variabel nilai= digitalRead(button) dengan tipe data integer. Selanjutnya jika button ditekan maka nilainya 0 sehingga serial print bernilai (1). Fungsi serial print adalah untuk mengirimkan data ke port serial, lalu jika nilai nya selain 0 (button tidak ditekan) sehingga serial print nya akan bernilai (2), kemudian ada delay(200) yaitu jarak 200ms untuk mengeksekusi program.
Listing program slave
prinsip kerja dari program slave
Pertama tama deklarasikan pin 12 untuk LED,lalu ada fungsi void setup dimana dalam fungsi ini semua kode akan dieksekusi sekali, dalam fungsi ini terdapat syntak pinMode(led,OUTPUT) yaitu untuk mendeklarasikan led sebagai output dan ada Serial.begin(9600) berguna untuk mengatur kecepatan pengiriman data menggunakan port serial.
Selanjutnya ada fungsi void loop dimana dalam fungsi ini semua kode akan dieksekusi secara berulang, dalam fungsi ini terdapat syntak if (Serial.available()>0) yang mana serial.available ini berguna untuk menghasilkan jumlah byte di port serial yang belum terbaca. Lalu ada variable data dengan tipe data integer yang akan membaca satu byte data yang terdapat di port serial. Jika data yang terbaca adalah 1 (saat button button pada master) maka led akan berlogika high sehingga led akan menyala. Sedangkan jika data yang terbaca selain 1 maka led akan berlogika low sehingga led tidak akan menyala.
Tidak ada komentar:
Posting Komentar