1. Komponen[kembali]
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).
2. Rangkaian Simulasi[kembali]
3. Flowchart[kembali]
A. Master
B. Slave
4. Listing Program[kembali]
A. Master
#include <Wire.h>
#define MASTER_ADDR 9
//0-127 alamat 12c
int analogPin = A0;
int val = 0;//dari mapping
void setup() {
Wire.begin();//siap mengirimkan data
}
void loop() {
delay(50);
val = map(analogRead(analogPin), 0, 1023, 255, 1);//pembacaan potensiometer, prubahan poten, proses adc
//0-123adc
//1-255pwm
Wire.beginTransmission(MASTER_ADDR);//memulai transmisi
Wire.write(val);//dituliaskan sesuai dg value y didapatkan
Wire.endTransmission();//berhenti
}
B. 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);
}
void receiveEvent() {
rd = Wire.read();
}
void loop() {
delay(50);
br = map(rd, 1, 255, 100, 2000);
if (br >= 0.3*2000 && br <= 0.7*2000){
delay(100);
digitalWrite(LED, HIGH);
delay(100);
digitalWrite(LED, LOW);
}else{
delay(100);
digitalWrite(LED, LOW);
}
}
5. Video[kembali]
6. Kondisi[kembali]
Percobaan 3 kondisi 4:
Rangkailah 2 buah led, kemudian buatlah keduanya berkedip bersamaan ketika potensiometer 30%-70%.
Analisa:
1. Jelaskan bagaimana cara menghubungkan rangkaian I2C dengan slave lebih dari satu, dan jelaskan bagaimana komunikasi antara master dan slavenya!
Jawab:
Jika slave lebih dari satu, maka kita harus mengubah rangkaian dan programnya. Jadi jika slave bertambah, maka dua pin pada master harus terhubung ke 2 pin pada tiap-tiap slave. Misalkan slave ada 3 buah maka dua pin master terhubung langsung ke dua pin tiap-tiap slave tersebut. Jadi total pada satu pin master ada 3 cabang.
Cara master untuk membedakan masing-masing slave yaitu dengan memberi alamat yang unik pada tiap-tiap slave. Jadi satu slave memiliki satu alamat yang berbeda dengan slave lainnya sehingga master dapat mengatur slave mana yang akan diaktifkan. Dan pada master, dibuat program yang menginisialisasi alamat masing-masing slave. Dan pada masing-masing slave, dibuat progran yang berisi inisial address sehingga slave dapat mengenali saat master melakukan pemanggilan.
7. Link Download[kembali]
Rangkaian proteus disini
Video simulasi disini
Flowchart master disini
Flowchart Slave disini
File listing program master disini
File listing program slave disini
Library arduino disini
Datasheet arduino disini
HTML disini
Tidak ada komentar:
Posting Komentar