Percobaan 3 Komunikasi I2C


[KEMBALI KE MENU SEBELUMNYA]





1. Komponen [Kembali]


Arduino





LED



Potensiometer


2. Rangkaian Simulasi [Kembali]





3. Flowchart  [Kembali]






4. Listing Program [Kembali]


//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

 

#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);

}



6. Kondisi [Kembali]

1. Bagaimana pengaruh potensiometer pada led? Jelaskan

Jawab: Potensiometer berfungsi untuk mempengaruhi nilai tahanan, pada rangkaian ini nilai tahanan berbanding lurus dengan kecepatan kedap-kedip LED. Semakin besar nilai hambatannya maka LED akan berkedip semakin cepat, sebaliknya semakinkecil nilai tahannya LED akan berkedip semakin lambat pula.

Rangkaian terdiri atas potenisometer yang dihubungkan dengan vcc dan ground , llu kaki tengah dihubungkan dengan arduino master. Sebuah pin analog akan membaca nilai yang dihasilkan potensiometer.

Untuk proses transfer data maksimal ialah bernilai 1-255 (dari program arduino) oleh karena itu dilakukan mapping untung mengubah data dari rentang 0-1023 menjadi 1-255. Nilai hasil mapping lalu akan dikirimkan ke arduino slave setelah dikirm oleh pin komunikasi  I2C. Kemudian terdapat proses mapping untuk mengatur kecepatan kedap-kedip lampu dengan pengaturan delay dari rentang 100-2000. Saat nilai potensio besar maka akan menghasilkan input analog(ditulis rd) yg besar pula dan jika diolah oleh mapping(pada program ditulis br) sehingga  kedap-kedip LEDv menjadi cepat. Saat nilai potensio kecil maka akan menghasilkan input analog(ditulis rd) yg kecil pula dan jika diolah oleh mapping(pada program ditulis br) sehingga  kedap-kedip LED menjadi lambat.


Tidak ada komentar:

Posting Komentar

Bahan Presentasi Untuk Matakuliah  Elektronika  Dosen Pengampu :  Darwison, MT  OLEH : FITRAH HUSEINI AZIZI (181095...