Laporan Percobaan 2
LAPORAN PERCOBAAN 2
1. Tujuan + Kondisi [Kembali]
- Tujuan
a) Memahami prinsip kerja UART, SPI, dan I2C
b) Mengaplikasikan protokol komunikasi UART, SPI, dan I2C pada Arduino
b) Mengaplikasikan protokol komunikasi UART, SPI, dan I2C pada Arduino
- Kondisi
Mengganti LED dengan Buzzer, sehingga ketika button ditekan maka buzzer akan hidup dengan delay 200ms lalu mati , jika tidak buzzer mati
- Button
Push button switch (saklar tombol tekan) adalah perangkat / saklar sederhana yang berfungsi untuk menghubungkan atau memutuskan aliran arus listrik dengan sistem kerja tekan unlock (tidak mengunci). Sistem kerja unlock disini berarti saklar akan bekerja sebagai device penghubung atau pemutus aliran arus listrik saat tombol ditekan, dan saat tombol tidak ditekan (dilepas), maka saklar akan kembali pada kondisi normal.
Buzzer atau pager adalah perangkat sinyal audio, yang mungkin mekanis, elektromekanis, atau piezoelektrik. Penggunaan khas buzzer dan pager termasuk perangkat alarm, timer, dan konfirmasi input pengguna seperti klik mouse atau keystroke.
- Arduino Uno
Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk menjalankannya.
3. Rangkaian Percobaan + Prinsip Kerja
[Kembali]
- Prinsip Kerja
Saat Rangkaia sudah di rangkaia seperti diatas, maka rangkaian akan ber eksekusi dengan arduino master mengirim kan signal perintah ke arduino slave berdasarkan kondisi yang kita jalani yaitu " mengubah led menjadi buzzer dan hidup dengan delay 200ms, apabila button ditekan , jika tidak buzzer tidak akan menyala.
4. Listing Program + Flowchart [Kembali]
- Listing program
//Listing Program 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);
}
//Listing Program SLAVE
#define buzzer 12 //Deklarasi pin 12 untuk buzzer
void setup() //Semua kode dalam fungsi ini dieksekusi sekali
{
pinMode(buzzer, OUTPUT); //Deklarasi Buzzer 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(buzzer, HIGH); //buzzer menyala
delay(200);
digitalWrite (buzzer,LOW);
delay(200);
}
else
{
digitalWrite(buzzer, LOW); //buzzer mati
}
}
}
1. apakah pin SS bisa diganti dengan pin digital lain?
---> Menurut saya tidak , karna pin SS Arduino hanya terdapat pada pin digital , dan tidak pada pin lain
2. apa yang terjadi jika pin MISO di lepas?
---> Master tidak lagi dapat menerima data dari slave
3. Apakah pada komunikasi ini bisa menggunakan multi master?
---> Menurut saya tidak , karna teori multi master tidak dapat di terapkan di SPI
6. Video [Kembali]
7. Link Download [Kembali]
HTML - Download
Bahan Laporan - Download
Library - Downlaod
Datasheet Arduino UNO - Download File
Comments
Post a Comment