1. Kondisi [Kembali]
2. Hardware [Kembali]
3. Rangkaian Simulasi [Kembali]
4. 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, 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() { // put your setup code here, to run once: pinMode(LED, 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, 1, 255, 100, 2000);
if (br == 570){ delay(1000); digitalWrite(LED, HIGH); }else if (br == 1330){ delay(1000); digitalWrite(LED, LOW); }}
5. Analisa [Kembali]
1. Jelaskan bagaimana cara menghubungkan rangkaian I2C
dengan slave lebih dari satu, dan jelaskan bagaimana komunikasi antara master
dan slavenya.
Jawab :
I2C
merupakan komunikasi serial yang singkronous dengan menggunakan jalur transfer
data half duplex yang dirancang terdiri dari dua pin (SCL & SDA). Dari
gambar diatas dapat dilihat cara menghubungkan I2C dengan n slave yaitu pin SCL pada master dihubungkan secara
parallel masing-masing ke pin SCL slave. Sedangkan pin SDA master juga
dihubungkan dengan parallel ke masing-masing slave. Pada koumunikasi antara
master dan slave I2C master mengontrol jalur sinyal SCL(Shared Clock) dan SDA
(Shared Data) untuk membaca atau menulis data dari perangkat. Untuk mengirimkan
data sinyal clock di bangkitkan oleh SCL yang sekaligus memulai sinyal start
dimana sinyal start terjadi perubahan logika HIGH menuju LOW lalu data
dikirimkan melalui SDA sampai terjadi sinyal stop dimana perubahan logika LOW
menuju HIGH.
6. Video Simulasi [Kembali]
Jawab :
I2C
merupakan komunikasi serial yang singkronous dengan menggunakan jalur transfer
data half duplex yang dirancang terdiri dari dua pin (SCL & SDA). Dari
gambar diatas dapat dilihat cara menghubungkan I2C dengan n slave yaitu pin SCL pada master dihubungkan secara
parallel masing-masing ke pin SCL slave. Sedangkan pin SDA master juga
dihubungkan dengan parallel ke masing-masing slave. Pada koumunikasi antara
master dan slave I2C master mengontrol jalur sinyal SCL(Shared Clock) dan SDA
(Shared Data) untuk membaca atau menulis data dari perangkat. Untuk mengirimkan
data sinyal clock di bangkitkan oleh SCL yang sekaligus memulai sinyal start
dimana sinyal start terjadi perubahan logika HIGH menuju LOW lalu data
dikirimkan melalui SDA sampai terjadi sinyal stop dimana perubahan logika LOW
menuju HIGH.
Tidak ada komentar:
Posting Komentar