1. Alat dan Bahan [Kembali]
Alat dan bahan yang digunakan pada percobaan kedua yaitu
Pada rangkaian digunakan 2 Arduino uno, potensiometer, dan LED. Pin 0 master dihubungkan ke potensiometer dan pin 13 slave dihubungkan ke LED.
Kode /Listing Programnya Yaitu :
//MASTER
#include <Wire.h>
#define MASTER_ADDR 9
int analogPin = 0;
int val = 0;
void setup() {
Wire.begin();
}
void loop() {
delay(50);
val = map(analogRead(analogPin), 0, 1023, 255, 1);
Wire.beginTransmission(MASTER_ADDR);
Wire.write(val);
Wire.endTransmission();
}
//SLAVE
#include <Wire.h>
#define SLAVE_ADDR 9
int LED = 13;
int rd;
int br;
void setup() {
pinMode(LED, OUTPUT);
Wire.begin(SLAVE_ADDR);
Wire.onReceive(receiveEvent);
Serial.begin(9600);
Serial.println("I2C Slave demo");
}
void receiveEvent(){
rd = Wire.read();
Serial.println(rd);
}
void loop() {
delay(50);
br = map(rd, 1, 255, 100, 2000);
if(rd == 1){
digitalWrite(LED, HIGH);
delay(br);
}
if(rd == 255){
digitalWrite(LED, LOW);
delay(br);
}
}
Pada program Master, dideklarasikan pin yang akan digunakan 0 untuk potensiometer. Pada void setup, potensiometer diatur menjadi input. Pada void loop, map(analogRead(analogPin), 0, 1023, 255, 1) kemudian di delay 50 ms.
Pada program Slave, dideklarasikan pin yang akan digunakan 13 untuk LED. Pada void setup, LED diatur menjadi output. Serial.begin(9600); digunakan untuk menset baud rate menjadi 9600. Pada void loop, map(rd, 1, 255, 100, 2000); jika rd = 1 maka led akan hidup sedangankan jika rd =255 maka led akan mati dengan delay br
1. Apakah bisa komunikasi UART berjalan jika dipasangkan dengan selain pin 0 dan 1? jelaskan kenapa dan teori sebenarnya
Jawab
Menurut saya tidak bisa dikarenakan UART hanya memiliki 2 pin yaitu Rx dan Tx. yangmana Tx digunakan untuk transmit data sedangkan Rx digunakan untuk recive data.
2. Apa yang terjadi jika baud rate yang digunakan pada program master berbeda dengan slave? jelaskan penyebabnya dan apa solusinya
Jawab
Maka progrsm tersebut tidak akan berjalan dikarenakan baud rate itu semdiri adalah untuk mengindenkasikan banyaknya perubahan data persatuan waktu. jika baud rate tidak sama maka bit antara master dan slave berbeda. solusinya adalah menyamakan baud rate, semakin tinggi baud rate semakin responsif
6. Link Download [Kembali]
Tidak ada komentar:
Posting Komentar