LAPORAN AKHIR 3 






C. KOMUNIKASI I2C

 
1. Hardware 
[kembali]








2. Rangkaian Simulasi Dan Analisa [kembali]



     Kaki input dari potensiometer dihubungkan ke input analog arduino, dengan kedua kaki lainnya masing-masing dihubungkan ke vcc dan ground. Lalu motor DC dihubungkan dengan output pwm (analog) pada arduino. Maka potensiometer disini berfungsi sebagai sisem kontrol untuk mengatur kecepatan motor dc.

Untuk penjelasan listing program, setiap pin dideklarasikan terlebih dahulu. Lalu menset pin transistor sebagai output . Lalu untuk membaca sinyal kontrol dari potensiometer. Setelah dibaca nilai tersebut akan digunakan untuk mengonntrol motor DC.

Pengaruh potensiometer terhadap LED adalah semakin besar nilai potensiometernya maka semakin besar delay atau hambatan pada saaat pengedipan LEDnya. begitu juga dengan sebaliknya. Pengaruh potensiometer dengan LED sangat berpengaruh terhadap kedip lampu LED tersebut. 

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);
}

download video disini

Tidak ada komentar:

Posting Komentar