Komunikasi antar Mikro/Arduino dengan menggunakan serial data
sehingga antar mikrokontroller memiliki komunikasi yang bershinambungan dan
saling memiliki keterkaitan, dalam serial slave-master minimal dua
mikrokontroller terhubung, maksimal tak terhingga selama masih terjadinya
komunikasi antar mikrokontroller. Dalam komunikasi slave-master digunnakan
serial komunikasi,serial merupakan komunikasi data dengan pengiriman data
secara satu per satu berurutan dimulai dari LSB (Least Significant Bit) sampai
dengan MSB (Most Significant Bit), dengan menggunakan satu jalur kabel
data dalam satu waktu,untuk lebih jelasnya bisa kalian baca baca di google.
Singkatnya sih master slave itu seperti boss dan anak buah,master itu bossnya sedangkan slave itu anak buahnya,jadi ketika master memanggil anak buah untuk memberikan data maka anak buah tersebut akan segera memberikannya,data data yang sudah diberikan oleh pada anak buah/slave maka akan di tampung pada boss/master kemudian data tersebut akan diolah oleh boss/master untuk berbagai aplikasi,oke kita lanjut aja ke bagian wiring dan programming,oh iya kali ini saya menggunakan arduino untuk aplikasi master slavenya,dan menggunakan proteus untuk simulasinya,mudah mudahan bermanfaat.
TOLONG BACA DENGAN DETAIL !
Siapkan alat dan bahan :
1. Yang pertama kalian wiring master board dan board slave"- Arduino Uno/Nano/Mega (sama saja) (jumlah disesuaikan)
- Push button
- Kabel usb arduino
- Kabel jumper disesuaikan dengan kebutuhan
- Download simulasi proteus
a. Jumlah slave jangan terpacu pada gambar bisa kalian sesuaikan dengan kebutuhan
b. Pastikan hubungan RX TX antara mastre dan slave sudah benar
c. Hasil simulasi dan harware pasti berbeda,jika kaliaan membuatnya langsung pada hardware kalian atur delay pada programnnya (lebih lama)
d. Setelah kalian berhasil membuatnya,budayakan untuk mempelajarinya,jangan hanya copy paste saja,hasil dari usaha sendiri lebih puas meskipun itu sederhana
2. Copy paste sketch/program di bawah ini ke dalam software arduino
Master
Slave 1
Master
char patch; void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,OUTPUT); pinMode(11,OUTPUT); pinMode(10,OUTPUT); pinMode(A0,INPUT_PULLUP); pinMode(A1,INPUT_PULLUP); pinMode(A2,INPUT_PULLUP); pinMode(A3,INPUT_PULLUP); } void loop() { if (!digitalRead(A0))Serial.print('1');delay(5); if (!digitalRead(A1))Serial.print('2');delay(5); if (!digitalRead(A2))Serial.print('3');delay(5); if (!digitalRead(A3))Serial.print('4');delay(5); if (Serial.available() > 0) { patch = Serial.read(); if (patch == '5') { digitalWrite(13,HIGH); } if (patch == '6') { digitalWrite(12,HIGH); } if (patch == '7') { digitalWrite(11,HIGH); } if (patch == '8') { digitalWrite(10,HIGH); } } }
bool send_data = true; bool enable = true; char read_data; int addres = 2; int digital = 1; int adc = 175; void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,OUTPUT); } void loop() { if (Serial.available() > 0) { read_data = Serial.read(); if (read_data == '1') { if (send_data = true) { digitalWrite(13,HIGH); delay(100); Serial.print('5'); send_data = false; enable = false; Serial.end(); digitalWrite(13,LOW); delay(100); Serial.begin(9600); } } else { Serial.print(" "); Serial.end(); delay(100); Serial.begin(9600); } } }3. Verify program arduino,apabila tidak terjadi error lanjut dengan proses upload
4. Upload program,apabila succes akan muncul tulisan done uploading,apabila ada yang belum tahu bagaimana cara upload code/sketch ke board arduino bisa baca disini
5. Sekarang kalian buat rangkaiannya pada software simulasi proteus isis,atau bisa kalian download di atas
Prinsip Kerja
Karena ini adalah program dasar dari aplikasi master slave, jadi saya menggunakan push button untuk trigger memanggil slavenya,pada mode startup kalian di perintahkan untuk menekan salah satu push button pada board master,contoh menekan push button 1,artinya kalian memanggil slave 1,ketika slave 1 sudah menjawab dari panggilan master maka slave 1 akan mengirim data pada master dan master akan mengolah data kiriman dari slave 1 untuk menghidupkan led,begitupun untuk slave slave selanjutnya semoga membantu.
Budayakan mempelajarinya hingga benar benar paham,jika merasa belum paham bisa ajukan pertanyaan di komentar atau contact facebook saya atau email fickrymhd@gmail.com
0 comments:
Posting Komentar