Laporan Akhir M3 Percobaan 1 (UART)
[Menuju Akhir]
1. Hardware
[Back]
|
Arduino Uno |
|
Button |
|
LED |
2. Rangkaian Simulasi
[Back]
|
Rangkaian percobaan |
|
Pada Proteus |
3. Flowchart
[Back]
4. Listing Program
[Back]
//MASTER
#define button 2 //Deklarasi pin 2 untuk button
void setup() //Semua kode dalam fungsi ini dieksekusi sekali
{
pinMode(button, INPUT_PULLUP);
Serial.begin(9600); //Set baud rate 9600
}
void loop() //Semua kode dalam fungsi ini dieksekusi berulang
{
int nilai = digitalRead(button);
//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() //Semua kode dalam fungsi ini dieksekusi sekali
{
pinMode(led, OUTPUT); //Deklarasi LED sebagai output
Serial.begin(9600); //Set baud rate 9600
}
void loop() //Semua program dalam fungsi ini dieksekusi berulang
{
if (Serial.available() > 0)
{
int data = Serial.read();
if (data == '1') //Jika data yang dikirimkan berlogika
{
digitalWrite(led, HIGH); //LED menyala
}
else
{
digitalWrite(led, LOW); //LED mati
}
}
}
|
5. Prinsip Kerja Rangkaian
[Back]
Pertama upload program yang telah sudah di compile pada arduino sketch.
Ketika program telah dimasukan, arduino akan melakukan pendeklarasian pin-pin pada arduino tersebut ke LED dan Button, selain itu Master dan Arduino dihubungkan dengan komunikasi UART (RX TX). Arduino akan melakukan looping sesuai dengan perintah yang terdapat pada void loop di program, dengan demikian ketika tombol ditekan maka Arduino Master akan mendapatkan perintah dan mengirimnya melalui pin RX TX dan dari slave akan dikerjakan dengan keluaran Lampu LED, SEHINGGA LED hidup.
6. Video
[Back]
7. Analisa
[Back]
a.
Analisa pengaruh baudrate terhadadp LED
Ø
Baud rate mengindikasikan
seberapa cepat data dikirim melalui komunikasi serial. Baud rate biasanya
diberi satuan bit-per-second (bps), nilai
bps dapat berbeda dengan nilai baud rate. Asumsi saat ini kita fokus pada
komunikasi serial, dimana setiap detak menyatakan transisi satu bit keadaan.
Jika kita menginverskan nilai bps ini, kita dapat memperoleh keterangan berapa lama waktu
yang dibutuhkan untuk mengirim 1 bit terhadap LED, sehingga Baudrate
yang terlalu kecil akan menyebabkan waktu tunda sehingga nyala LED menjadi delay.
b.
Mengapa ketika button ditekan, LED
menyala?
Ø Button
bersifat sebagai pullup, yaitu akan aktif bila kondisi LOW. LED
aktif disebabkan oleh kondisi Serial. Kondisi tersebut dipicu dari pembacaan
data melalui serial.
c.
Jelaskan prinsip kerja rangkaian
Ø
Dalam
percobaan yang sebenarnya adalah ketika button belum ditekan maka lampu dalam
keadaan mati, dan ketika button ditekan lampu akan berkedip. Namun, karena
kesalahan dari pemasangan rangkaian pada billboard ada yang salah, maka lampu
tersebut mengalami gangguan.
Ø Namun saya akan membahas apabila
rangkaian tersebut terpasang benar dan lampu akan bekerja. Jadi ketika sebelum
button ditekan adalah maka kondisi nya adalah HIGH, dan lampu mati, lalu ketika
button ditekan maka kondisi button tersebut berubah menjadi LOW yang berarti
lampu akan menyala dan berkedip. Untuk pengiriman datanya dengan cara ketika
button ditekan maka serial akan membaca datanya, dengan
membaca data tersebut maka data dari serial akan berkurang satu, dan lampu pun
akan hidup yang menandakan data ada yang terkirim.
[Menuju Awal]
No comments:
Post a Comment