LA 2 M3 uP& uC




Percobaan 3 Komunikasi I2C

1. Komponen [kembali]
1. Arduino Uno

Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital  dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk menjalankannya.

2. LED

Bentuk dan Simbol LED (Light Emitting Diode)

Seperti dikatakan sebelumnya, LED merupakan keluarga dari Dioda yang terbuat dari Semikonduktor. Cara kerjanya pun hampir sama dengan Dioda yang memiliki dua kutub yaitu kutub Positif (P) dan Kutub Negatif (N). LED hanya akan memancarkan cahaya apabila dialiri tegangan maju (bias forward) dari Anoda menuju ke Katoda.

LED terdiri dari sebuah chip semikonduktor yang di doping sehingga menciptakan junction P dan N. Yang dimaksud dengan proses doping dalam semikonduktor adalah proses untuk menambahkan ketidakmurnian (impurity) pada semikonduktor yang murni sehingga menghasilkan karakteristik kelistrikan yang diinginkan. Ketika LED dialiri tegangan maju atau bias forward yaitu dari Anoda (P) menuju ke Katoda (K), Kelebihan Elektron pada N-Type material akan berpindah ke wilayah yang kelebihan Hole (lubang) yaitu wilayah yang bermuatan positif (P-Type material). Saat Elektron berjumpa dengan Hole akan melepaskan photon dan memancarkan cahaya monokromatik (satu warna).

3. Potensiometer

Potentiometer atau potensiometer adalah resistor tiga terminal dengan sambungan geser yang membentuk pembagi tegangan yang nilai resistansinya dapat diatur sesuai keinginan. Potensiometer termasuk salahsatu jenis variable resistor (resistor yang daat diubah-ubah nilai resistansinya). Secara struktur, potensiometer terdiri dari 3 kaki terminal dengan sebuah shaft atau tuas yang berfungsi sebagai pengaturnya. 3 terminal tersebut terbagi menjadi  terminal tetap dan satu terminal geser. Jika hanya dua kaki terminal yang digunakan maka terminal yang digunakan adalah satu terminal tetap dan satu terminal geser.  

2. Rangkaian Simulasi [kembali]


3. Video Simulasi dan Prinsip Kerja [kembali]

Prinsip Kerja

Pada percobaan ini jenis komunikasi yang digunakan adalah I2C, dimana pin yang digunakan pada komunikasi I2C adalah pin A4 dan A5. Pin A4 merupakan SDA yang berfungsi sebagai proses pengirim data dan pin A5 merupakan SCL yang berfungsi sebagai clock. Lalu pin A0 arduino master dihubungkan ke potensiometer sebagai analog input dan pin 13 arduino slave dihubungkan ke LED sebagai outputnya. Lalu dimasukkan listing program sebagai berikut:  

//MASTER

#include <Wire.h>

#define MASTER_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(MASTER_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);

} 

Rangkaian akan berjalan sesuai program yang dimasukkan ke arduino.  

4. Analisa [kembali]
    1. Bagaimana output yang dihasilkan jika kita memutar potensio searah jarum jam             
        maupun berlawanan arah jarum jam? Bagaimana pembacaan pada serial monitor 
        jika potensiometernya diputar?
        Jawab:
Ketika potensiometer diputar searah jarum jam, maka LED akan berkedip dengan delay yang semakin lama. Sedangkan ketika potensiometer diputar berlawan arah jarum jam, maka LED akan berkedip dengan delaynya semakin cepat. Pada serial monitor ditampilkan bilangan desimal dari 1-255. Ketika potensiometer diputar searah jarum jam, maka data akan berubah menuju 255. Sedangkan ketika potensiometer diputar berlawanan arah jarum jan, maka data akan menuju 1.
 
 
    2. Apabila salah satu pin I2C dicabut, baik SDA maupun SCL dicabut, bagaimana             
        output yang dihasilkan? Apakah data tetap terkirim? Mengapa demikian? 
        Jawab:
Saat salah satu pin I2C (SDA & SCL) dicabut, maka proses transfer data tidak ada. Tetapi saat sedang terjadi proses transfer data dan salah satu pin SDA SCL dicabut, LED akan tetap hidup namun delaynya tidak dapat diubah, karena data terakhirnya telah terkirim dari master ke slave, jadi delaynya sesuai dengan data yang masuk sebelum pin SDA SCL dicabut.
SCL berfungsi sebagai clock yang digunakan saat proses transfer data dan SDA berfungsi untuk memilih alamat dan slave, jadi ketika salah satu pin I2C dicabut, maka data tidak akan terkirim. 
 
5. Link Download [kembali]
    Download Rangkaian [disini]
    Download Listing Program [disini]
    Download Video [disini]
    Download Datasheet Arduino Uno [disini]
    Download Datasheet LED [disini]
    Download Datasheet Potensiometer [disini]
    Download HTML [disini]

Tidak ada komentar:

Posting Komentar