Laporan Akhir 2 Modul 3

Laporan Akhir Percobaan 3

Komunikasi I2C


1. Kondisi[KEMBALI]

Kondisi yang dipilih sesuai dengan modul percobaan.

2. Alat dan Bahan[KEMBALI]

a. Alat

USB Arduino
Project Board
Jumper

b. Bahan

Resistor 220 Ohm
LED Merah (Output)


Potensiometer 10k Ohm (input)

c. Komponen Lain

Arduino Uno

3. Rangkaian Percobaan[KEMBALI]

Rangkaian Percobaan 3

4. Prinsip Kerja Rangkaian[KEMBALI]

Rangkaian ini terdiri dari 2 buah arduino, 1 buah potensiometer, 1 buah LED merah, dan 1 buah resistor 220 Ohm. Output potensiometer terhubung ke pin A0 MASTER. Pin A4 (SDA) dan A5 (SCL) MASTER  dan SLAVE  terhubung. LED dengan resistor yang terpasang seri terhubung ke output 13 SLAVE. Saat potensiometer diputar, output potensiometer masuk ke MASTER melalui kaki input analog A0 dan diolah sesuai dengan program. Data ditransmisikan melalui pin SDA dengan sinkronisasi clock pada SCL ke SLAVE. Pada SLAVE, data yang ditransmisikan diolah sesuai dengan program dan dikeluarkan melalui output 13 ke LED merah. LED akan menyala berkedip-kedip dengan delay berubah-ubah tergantung persentase potensiometer. Berikut program arduino:

//MASTER

#include <Wire.h>
#define SLAVE_ADDR 9
byte pot = A0;
int analogPin = 0;
int val = 0;

void setup() {
  Wire.begin();
}

void loop() {
  delay(50);
  analogPin = analogRead(pot);
  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 Praktikum[KEMBALI]


6. Analisa[KEMBALI]

a. Pada percobaan I2C, bisakah menggunakan lebih dari 1 MASTER?

Jawab: Sistem yang menggunakan lebih dari satu MASTER pada I2C disebut sebagai multi-MASTER. Multi-MASTER merupakan sistem yang memungkinkan lebih dari 1 MASTER melakukan inisiatif transfer data dalam waktu yang bersamaan tanpa terjadi korupsi data.

b. Jelaskan pengaruh potensiometerterhadap output rangkaian!

Jawab: Pada percobaan I2C, saat potensiometer 0%, LED sebagai output akan berkedip dengan delay yang sama dengan nilai delay yang diprogramkan. Saat potensimoter dinaikkan hingga 100%, LED akan berkedip dengan delay yang semakin singkat. Hal ini dapat dilihat dari program diatas.

7. Link Download[KEMBALI]

Download Video Praktikum [disini]

Download Program Arduino [disini]

Download Datasheet Potensiometer [disini]

Download Datasheet LED [disini]

Download Datasheet Resistor [disini]

Download Datasheet Arduino Uno [disini]

Tidak ada komentar:

Posting Komentar