Percobaan 3 M3

 




Komunikasi I2C

 
1. Hardware [kembali]


Potensiometer

Motor DC


 Resistor

Arduino

2. Rangkaian Simulasi [kembali]










3. Listing Program [kembali]

//MASTER

#include <Wire.h> 
#define MASTER_ADDR 9

int analogPin = 0; int val = 0;

void setup() { 
  // put your setup code here, to run once:
  Wire.begin();
}

void loop() { 
  // put your main code here, to run repeatedly:
  delay(50);
  val = map (analogRead(analogPin), 0, 1023, 0,255);
  Wire.beginTransmission(MASTER_ADDR);
  Wire.write(val);
  Wire.endTransmission();
}
//SLAVE

#include <Wire.h>
#define SLAVE_ADDR 9

int motor = 13;
int rd;
int br;

void setup() {
  // put your setup code here, to run once:
  pinMode(motor, OUTPUT);
  Wire.begin(SLAVE_ADDR);
  Wire.onReceive(receiveEvent);
}

void receiveEvent(){
    rd = Wire.read();
  }
  
void loop() {
  // put your main code here, to run repeatedly:
  delay(50);

  br = map(rd, 0, 255, 100, 2000);

  if (br == 2000){
    delay(1);
    digitalWrite(motor, HIGH);
  }else if (br == 1000){
    delay(1);
    digitalWrite(motor, LOW);
  }
}
Visual Designer
Flowchart Master
Flowchart Slave



4. Kondisi [kembali]
    Pada Percobaan ini diberi kondisi berupa mengganti led dengan motor DC. Buatlah motor DC berputar searah jarum jam dengan kecepatan maksimum pada saat potensiometer 100% dan kecepatan minimum pada saat potensiometer 50%.
5. Video Simulasi [Kembali]

6. Analisa [Kembali]
    1. Apa yang terjadi jika serial begin slave diubah menjadi 19200?
    Apabisa serial begin pada slave diubah menjadi 19200 maka proses transmisi data akan tetap berjalan dengan kecepatan yang bertambah. Dan motor akan berputar.
    2. Apa fungsu ADDR?
    Fungsi dari ADDR yaitu sebagai alamat yang akan mengirim ataupun menerima data dari master atau slave. Apabila alamat dibuat berbeda maka data yang dikirimkan tidak aka sampai ke master atau slave. Sehingga proses tidak akan berjalan dengan semestinya.
    3. Termasuk komunikasi simplex atau half dulpex?
    Pada percobaan ini proses transmisi data terjadi hanya dari master ke slave. Master akan mengirimkan perintah ke slave. Setelah itu slave akan menjalankan perintah tadi, motor akan berputar. Bisa disimpulkan bahwa ini termasuk komunikasi simpex.


7. Link Download [Kembali]
File HTML - Download
File Proteus - Download
File Program - Download
Video Rangkaian - Download
Datasheet Potensiometer - Download
Datasheet Motor DC - Download
Datasheet Arduino Uno - Download

Tidak ada komentar:

Posting Komentar