1. Potensiometer
2. Arduino
3. LED
4. Listing Program [kembali]
master:
//MASTER
#include <Wire.h>
#define SLAVE_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(SLAVE_ADDR);
Wire.write(val);
Wire.endTransmission();
}
slave:
//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);
digitalWrite(LED, HIGH);
delay(br);
digitalWrite(LED, LOW);
delay(br);
}
5. Video Simulasi [kembali]
6. Prinsip Kerja [kembali]
Inter Integrated Circuit
atau sering disebut I2C adalah standar komunikasi serial dua arah menggunakan
dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem
I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa
informasi data antara I2C dengan pengontrolnya. Setiap bit akan ditransfer pada
kaki SDA dan akan di sinkronisasikan oleh pulsa clock pada SCL. Setiap bit akan
ditransfer pada pin SDA dalam bentuk 8 bit dan 1 bit ditransferkan pada clock
atau SCL. Untuk transfer data pada I2C harus dalam bentuk 8 bit
sehingga semua data yang ditransfer dikonfersi kedalam bentuk 8 bit yaitu 256.
Pada percobaan, potensiometer
kaki ujungnya dihubungkan dengan vcc dan ground dan kaki tengah dihubungkan
dengan input analog arduino master. nilai yang diterima pin analog potensio
akan membaca nilai yang dihasilkan potensiometer yaitu 210. untuk
proses transfer data data maksimal adalah bernilai 255 ( data 8 bit).
Jadi pengaruh potensiometer
pada LED adalah besar nilai yang dihasilkan oleh potensiometer akan
mempengaruhi durasi hidup dan matinya LED. Hal ini karena Ketika nilai potensio
0 maka nilai hasil mapping 255. Hasil tersebut akan dikirmkan ke slave. Dan
slave melakukan mapping dari nilai yang didapatkan sehingga hasilnya 100. Dan
hasil ini akan di delay pada LED maka LED akan hidup 0.1 detik dan mati 0.1
detik dan seterusnya. Dan sebaliknya jika nilai potensio 1023, nanti nilai yang
dimapping oleh slave 1 dan menghasilkan nilai 2000. Dan dapat waktu delay led 2
detik.
Unduh video simulasi DISINI
Unduh HTML DISINI
Tidak ada komentar:
Posting Komentar