KOMUNIKASI I2C










1. Hardware [kembali]







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


5.Video [kembali]





6. Analisa
[kembali]
1.Peran Potensiometer terhadap kedip LED
Potensiometer (POT) adalah salah satu jenis Resistor yang Nilai Resistansinya dapat diatur sesuai dengan kebutuhan Rangkaian Elektronika ataupun kebutuhan pemakainya.  ketika potensiometer diputar ke kanan maka lama durasi LED hidup lebih lama,dan ketika potensiometer diputar kekiri maka LED akan berkedip-kedip.

2. Apa yang terjadi jika <wire.h> dihapus?

<wire.h> berfungsi untuk mendeklarasikan library untuk mempermudah komunikasi I2C. ketika <wire.h> dihapus maka listing program tidak berjalan karena tidak ada pendeklarasian komunikasi I2C sehingga harus menambahkan setiap barisnya. oleh karena itu fungsi dari <wire.h> adalah mempersingkat waktu untuk pendeklarasiain program.



7.Link Download [kembali]

Tidak ada komentar:

Posting Komentar