Laporan Akhir 2 Modul 3 Percobaan 3
[KEMBALI KE MENU SEBELUMNYA]
- Memahami prinsip kerja UART, SPI, dan I2C
- Mengaplikasikan protokol komunikasi UART, SPI, dan I2C pada Arduino
Prinsip Kerja Rangkaian
Pada rangkaian percobaan 3 modul 3 ini, ada beberapa komponen yang digunakan, yaitu Arduino (Master & Slave), Power, Push Button, Resistor, Ground, Driver L293 dan Motor sebagai outputnya. Driver Motor nantinya akan digunakan untuk mengatur arah putaran motor sesuai yang diinginkan.
Sebelum dapat menjalankan rangkaiannya, harus di buat terlebih dahulu listing program untuk masing-masing Master dan Slave seperti pada program diatas. Setelah file ino dimasukkan ke dalam rangkaian, maka rangkaian dapat dijalankan.
Saat file ino telah dimasukkan ke dalam rangkaian, maka sesuai dengan perintah percobaan, maka saat button di tekan, motor akan bergerak searah dengan jarum jam. Sedangkan saat button di posisi awal (tidak ditekan) maka motor akan berhenti.
Analisa M3P3
1. Apakah device master pada komunikasi ini mempunyai alamat/address?
Jawab:
Iya, device master pada komunikasi memiliki alamat/ address agar dapat mengirim data ke device slave. Syntax untuk alama device master adalah #define MASTER_ADDR 9 yang ditambahkan pada listing program master.
2. Apa yang terjadi jika addres pada slave di ganti menjadi 0x70?
Jawab:
Jika address pada slave diganti menjadi 0x70, maka output yang ada pada rangkaian tidak akan bisa berputar karena address pada device slave berubah sehingga data yang dikirim dari master tidak bisa diterima oleh slave. Hal ini karena address slave di listing program slave berbeda dengan listing program master.
Akan tetapi, jika address slave pada listing program device master juga diubah, (menjadi kode ‘Wire.beginTransmission(0x70)’), maka master dapat mengirim data ke slave dan motor dapat berputar/hidup.
3. Apa fungsi sintax 'Wire.onReceive(receiveEvent)' pada slave?
Jawab:
Wire.onReceive berfungsi untuk menerima data yang dikirimkan oleh device master ketika fungsi dipanggil. Fungsi tersebut adalah fungsi receiveEvent () yang digunakan untuk parameter receiveEvent yang merupakan fungsi yang akan dipanggil ketika slave menerima data.
Tidak ada komentar:
Posting Komentar