Light Emitting Diode atau sering disingkat dengan LED adalah komponen elektronika yang dapat memancarkan cahaya monokromatik ketika diberikan tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan semikonduktor.
//MASTER
#define button 2//Deklarasi
pin 2 untuk button
void setup() //Semuakodedalamfungsiinidieksekusisekali { pinMode(button,INPUT_PULLUP); Serial.begin(9600);//Set
baud rate 9600 }
void loop()//Semuakodedalamfungsiinidieksekusiberulang { int nilai =
digitalRead(button);
//ditekan if(nilai == 0) { Serial.print("1");
} else { Serial.print("2"); }
delay(200); }
|
//SLAVE
#define led 12//Deklarasi
pin 12 untuk LED
void setup() //Semuakodedalamfungsiinidieksekusisekali { pinMode(led,OUTPUT);//Deklarasi
LED sebagai output Serial.begin(9600);//Set
baud rate 9600 }
void loop() //Semua
program dalamfungsiinidieksekusiberulang { if(Serial.available()>0) { int data = Serial.read(); if(data=='1')//Jika data yang dikirimkanberlogika { digitalWrite(led,HIGH);//LED
menyala } else { digitalWrite(led,LOW);//LED
mati }
} } |
5. Video [kembali]
1. 1.Apa yang terjadi jika komunikasi UART hanya menggunakan 1 kabel saja, yang terhubung TX ke RX ?
Jawab:
Berdasarkan praktikum yang telah dilaksanakan,jika komunikasi UART hanya menggunakan 1 kabel saja, yaitu yang terhubung TX ke RX maka akan terjadi master tidak mengetahui apakah slave telah menerima data atau belum,TX yaitu transmitter dan RX yaitu received.Fungsi dari kabel RX(master) ke TX (slave) adalah memberitahu kalau slave telah menerima dan memproses data.Namun ,jika dilihat pada proteus tidak terlalu terlihat .Pada saat diaplikasikan pada alat ,mungkin akan terlihat dampaknya jika hanya TX dan RX yang digunakan.
2. Apakah pada UART dapat menggunakan banyak master ataupun slave? Jelaskan alasannya
Jawab:
Tidak,dikarenakan UART tidak memiliki pin yang dapat memilih slave dan tidak bisa mengirimkan banyak bit data sehingga hanya bisa menggunakan satu master dan satu slave saja.UART merupakan komunikasi serial,data dari bus dkirimkan secara parallel ke UART 1 lalu ditransmisikan secara serial dari TX UART 1 ke RX UART2 lalu UART 2 mengkonversikan data dan menghapus bit tambahan,kemudian ditransmisikan parallel ke data bus penerima.jadi UART hanya bisa menggunakan satu master dan satu slave.
3. Jika ditambahkan resistor 22k sebelum LED, apa yang akan terjadi?
Jawab:
Jika ditambahkan resistor 22k sebelum LED, maka LED tidak akan menyala saat button ditekan ,hal ini dikarenakan adanya resistor 22k yang menghambat arus sehingga arus dan tegangan tidak cukup untuk menyalakan LED saat button ditekan.Maka kita tidak dapat melihat output yang telah diprogram yaitu ketika button ditekan LED akan menyala dan ketika tidak ditekan LED akan mati.
4. Jelaskan prinsip kerja UART pada rangkaian
Jawab:
Pada rangkaian terdapat dua buah simulino uno yaitu master dan slave ,lalu ada button sebagai data inputnya,dan LED sebagai indikator outputnya.Pin 2 dihubungkan ke button lalu ke ground ,lalu pin 12 slave dihubungkan LED RED dan dihubungkan ke ground.Pin TX master dihubungkan ke pin RX slave dan pin RX master dihubungkan ke TX slave.berikut penjelasan programnya pada program master ,pertama dideklarasikan pin 2 untuk button yaitu #define button 2, lalu dibuat fungsi void setup() dimana semua kode dalam fungsi ini dideklarasikan sekali. Didalam fungsi ini dibuat pinMode(button,INPUT_PULLUP) lalu di set baud rate 9600.Dan dibuat fungsi void loop dimana seluruh dalam fungsi dapat dieksekusi secara berulang.lalu dibuat int nilai = digitalRead(button) karena data input berupa data digital.Terdapat dua kondisi jika if(nilai == 0 ) yaitu Serial.print("1") dan selain itu else yaitu Serial.print("2") dan terdapat delay 200 untuk memulai perulangan.
Selanjutnya pada program slavenya,pertama dideklarasikan pin 12 untuk LED lalu dibuat fungsi void setup dimana semua kode yang berada didalam fungsi ini hanya dieksekusi sekali. Lalu didalam fungsi ini dibuat pinMode(led,OUTPUT) sebagai Deklarasi LED sebagai outputnya ,lalu di set baud rate 9600.selanjutnya dibuat void loop dimana semua program dalam fungsi ini dieksekusi secara berulang. Lalu terdapat if(Serial.available()>0) ,lalu didalamnya dibuat int data = Serial.read().Terdapat kondisi if(data=='1') berarti Jika data yang dikirimkan berlogika 1 maka dibuat digitalWrite(led,HIGH) untuk LED menyala. Namun selain itu else maka digitalWrite(led,LOW) untuk LED mati.
Setelah selesai program maka program dicompile ,lalu dicopykan alamatnya ke dalam simulino unonya baik untuk master maupun slavenya lalu dijalankan.Data input dari button akan diterima oleh master jadi ada dua data yaitu saat button ditekan berlogika 1 dan saat tidak ditekan berlogika 0.saat button ditekan maka data akan ditransmisikan dari master melalui pin TX master ke RX slave secara serial lalu data akan di proses di slave setelah diproses lalu data akan di tampilkan ke output berupa LED RED ini sesuai dengan program yang telah dibuat pada master dan slavenya maka LED nya menyala.lalu juga ada pemberitahuan dari TX slave ke RX master bahwa data telah diterima dan diproses agar komunikasi UART nya dapat berjalan dengan baik .Jika data button tidak ditekan maka data juga sesuai prinsip diatas sehingga LED nya mati.
Tidak ada komentar:
Posting Komentar