Laporan Akhir Percobaan 3 M.3






1. Komponen [kembali] 

Gambar 1. LED

Gambar 2. Bentuk Hardware LED 

Gambar 3. Arduino Master

Gambar 4. Arduino Slave

Gambar 5. Potensiometer

Gambar 6. Bentuk Hardware Potensiometer

Gambar 7. Resistor 220 Kilo Ohm

2. Rangkaian Simulasi [kembali]

Gambar 8. Rangkaian Simulasi I2C

3. Flowchart [kembali]

Gambar 9. Flowchart Program Arduino Master 


Gambar 10. Flowchart Program Arduino Slave

4. Listing Program [kembali]

A. //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();
 
}


B. //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. Analisa [kembali]

Soal :

1.Apakah kita dapat mengirim data sebanyak 9 bit? Jelaskan alasannya?

2.Apa pengaruh potensiometer terhadap output (LED)?

3. Jelaskan prinsip kerja I2C pada rangkaian?

Jawab :

1. Berdasarkan percobaan yang telah dilakukan dapat kita ketahui bahwa pada rangkaian I2C master mengirim data sejumlah 8 bit, dimana 1 bit lagi akan dikeluarkan pada slave sebagai tanda bahwa data telah diterima oleh receiver (ACK/NACK), apabila jumlah datanya 9 bit. Pada master akan ditulis 8 bit dan 1 bit oleh slave sebagai sinyal ACK berlogika 0 yang dikeluarkan slave kembali untuk dapat menerima data selanjutnya hingga SDA menerima sinyal NACK berlogika 1 untuk mengakhiri transfer data. Dikarenakan yang 1 bit tadi berlogika 0 maka bisa mengirim data sebanyak 9 bit.

2. Berdasarkan percobaan yang telah dilakukan dapat dilihat pengaruh dari potensiometer yaitu pada intensitas cahaya LED. Apabila nilai dari tahanan yang terukur pada potensiometer kecil, maka delay juga semakin kecil dan makin cepat LED redup. Apabila nilai tahanan yang terukur pada potensiometer besar, maka delay juga besar dan waktu redup LED semakin lama.

3. Komunikasi I2C merupakan komunikasi 2 arah dengan 2 saluran khusus untuk mengirim maupun menerima data. Terdiri  2 saluran. Prinsip kerja data dikirimkan dalam bentuk sheet dan bisa dikirim 2 arah dari master ke slave atau sebaliknya. Pada rangkaian ada 2 arduino yaitu sebagai  master dan slave. Komponen selanjutnya ada potensiometer dihubungkan ke pin 5v lalu ground, selanjutnya ada resistor pada output dipasang pada kaki 13 sebelum LED. Selanjutnya untuk menjalankan rangkaian maka dibuat program arduino baik itu pada arduino master dan pada arduino slave (seperti pada listing program diatas). Selanjutnya kita masukan program ke program file arduino keduanya baik master maupun slave, lalu kita run. Data dimasukan ke master lalu master mengirim data ke slave lalu slave akan mengolah data kemudian akan dikeluarkan input ke resistor lalu ke led. Disini potensiometer berfungsi untuk mengatur tahanan. Makin besar tahanan makin redup led. Kita coba pada rangkaian dari 0 persen. Pada rangkaian terlihat perubahan keterangan pada led. Mungkin terjadi kesalahan pada program atau rangkaian. Sebenarnya jika potensio benar pada 0% berarti tahanan kecil LED terang jika makin besar LED redup.

7. Link Download [kembali]

Link HTML Download disini
Link Video Download disini 
Link Rangkaian Download disini
Link Program Arduino Master Download disini
Link Program Arduino Slave Download disini





Tidak ada komentar:

Posting Komentar

PRAKTIKUM MIKRO PROSESSOR DAN MIKRO KONTROLER (A) BAHAN UNTUK PRAKTIKUM  MIKRO PROSESSOR DAN MIKRO KONTROLER   2020          Oleh :  DEVARA ...