Percobaan 3
KOMUNIKASI IIC
1. Kondisi kembali
Sesuai Modul
2. Hardware kembali
Potensiometer
LED
Arduino
3. Rangkaian Percobaan kembali
4. Prinsip Kerja Rangkaian kembali
prinsip kerja rangkaian ini adalah, arduino master akan mengirimkan data dengan bantuan sinyal clock ke slave. data dikirimkan memalui pin SDA dan clock melalui pin SCL. data dari mastr berupa besar tegangan atau nilai potensiometer yanga akan dikirimkan ke slave dan diolah oleh slave sehingga slave akan mengeluarkan output kecepatan motor dc sesuai dengan data dari slave sehingga motor bergerak sesuai keinginan.
5. 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);}
//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. Analisa kembali
1) pada komunikasi IIC, bisakah menggunakan mebih dari satu master?
jawab: tidak karena tidak ada pin slave select
2) jelaskan pengaruh potensiometer terhadap output rangkaian!
jawab:
Tidak ada komentar:
Posting Komentar