KOMUNIKASI I2C
//MASTER
#include
#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
#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. Analisa [kembali]
6. Video [kembali]
a.peran potensiometer terhadap kedip LED
potensiometer berfungsi untuk mengatur kedipan dari LED,Jika potensiometer diputar ke kanan yang artinya nilai dari potensiometer diperbesar maka LED akan hidup semakin lama,sedangkan jika potensiometer diputar kekiri yang artinya nilai dari potensiometer diperkecil maka LED akan hidup semakin cepat dan kedipannya pun cepat.potensiometer memiliki 3 kaki dan sebuah tuad,tuas ini yang berfungsi untuk mengatur nilai resistansinya
b. apa yang terjadi jika <wire.h> dihapus?
<wire.h> merupakan library yang digunakan untuk menjalankan dan mendeklarasikan protokol sinkron komunikasi I2C.pin yang digunakan adalah A4 sebagai SDA (Serial Data) dan A5 sebagai SCL (Serial Clock).Jika <wire.h> dihapus maka yang terjadi adalah program tidak berjalan karena tidak ada pendeklarasian komunikasi I2C
6. Video [kembali]



Tidak ada komentar:
Posting Komentar