Laporan Akhir Percobaan 3 Modul 3 up dan um







1. Komponen  [kembali]

1. potensiometer

    2. LED

    3. Arduino
    



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.      Apakah kita dapat mengirim data sebanyak 9 bit? Jelaskan alasannya

Jawab:

Tidak bisa,karena pada komunikasi I2C dalam proses pengriman data jumlah bit yang di transferkan berjumlah 8 bit sedangkan pada bit ke-9, bit tersebut akan dikeluarkan oleh Slave sebagai tanda bahwa data telah diterima oleh receiver (ACK/NACK). Kemudian, Master akan menulis data 8 bit (Data frame) dan bit-9 oleh Slave sebagai sinyal acknowledge / ACK (berlogika 0) yang dikeluarkan Slave kembali untuk dapat menerima data selanjutnya hingga SDA menerima sinyal Not Acknowladge / NACK (berlogika 1) untuk mengakhiri transfer data.

2.      Bagaimana cara master mengirimkan address ke slave? Berapa bit address yang dikirim? Berapa addres unik yang dapat tercipta oleh master?

Jawab:

Pada awalnya, master akan membaca nilai output dari potensiometer yang berupa sinyal digital. Data bit dikirimkan melalui SDA, sedangkan sinyal clock dikirimkan melalui SCL dimana dalam setiap transfer data bit dihasilkan satu sinyal clock. Transfer data bit dianggap valid jika data bit dalam SDA tetap stabil selama sinyal clock high, data bit hanya boleh berubah jika sinyal clock dalam kondisi low. Alamat yang dikirimkan yaitu “SLAVE_ADDR”. Bit address yang dikirimkan yaitu sebanyak 8 bit dengan rentang nilai digital antara 0-255. address unit yang dapat tercipta oleh master sebanyak 9 master, karena pada awal program dideklarasikan SLAVE_ADDR9.



7. Link Download [kembali]


Download Rangkaian - Download

Download Listing Program Master – Download

Download Listing Program Slave – Download

Download Video - Download

Download HMTL - Download




Tidak ada komentar:

Posting Komentar