LA1 M3
Percobaan 1
Komunikasi UART Menggunakan Arduino
1. Rangkai komponen sesuai percobaan dan kondisi yang dipilih.
2. Buat program menggunakan Arduino IDE.
3. Compile program yang telah dibuat lalu Upload ke dalam Arduino Uno.
4. Saat Proses Penguploadan porgram, lepas pin rx tx pada arduino master dengan arduino slave
5. Uji coba program pada rangkaian percobaan sesuai dengan kondisi yang diinginkan.
6. Selesai
2. Hardware dan Diagram Blok [Kembali]
Hardware :
1. Arduino Uno
2. Dip Switch
3. LED
Diagram Blok :
3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Rangkaian Simulasi :
Percobaan 1 merupakan rangkaian komunikasi UART dengan arduino. Pada percobaan ini terdapat 2 arduino yang nantinya dikomunikasikan secara UART. arduino pertama berfungsi sebagai pemberi perintah (master) dan arduino kedua berfungsi sebagai penerima/ pengeksekusi perintah (slave). arduino master terhubung input berupa dip switch. sedangkan pada arduino slave, terdapat output berupa 8 buah LED. untuk komunikasi UART pada arduino, pin RX pada arduino master terhubung pada pin Tx arduino slave, dan pin Tx arduino master terhubung ke pin Rx arduino slave. Pada kondisi awal, semua LED dalam keadaan OFF. ketika salah satudip switch dihidupkan, maka outputnya berupa salah satu lampu LED akan hidup dan jika 4 dipswich hidup maka 3 led akan hidup Untuk power pada arduino, setiap arduino dihubungkan ke kabel USB laptop.
4. Flowchart dan Listing Program [Kembali]
Flowchart :
Master
Listing Program :
//MASTER #define DS1 2 #define DS2 3 #define DS3 4 #define DS4 5 #define DS5 6 #define DS6 7 #define DS7 8 #define DS8 9 void setup() { Serial.begin(9600); pinMode(DS1, INPUT); pinMode(DS2, INPUT); pinMode(DS3, INPUT); pinMode(DS4, INPUT); pinMode(DS5, INPUT); pinMode(DS6, INPUT); pinMode(DS7, INPUT); pinMode(DS8, INPUT); } void loop() { int count = 0; for (int pin = DS1; pin <= DS8; pin++) { count += digitalRead(pin); } if (count == 1) { Serial.write('A'); } else if (count == 4) { Serial.write('B'); } delay(20); }
//SLAVE int led[] = {2, 3, 4, 5, 6, 7, 8, 9}; char message; void setup() { Serial.begin(9600); for (int i = 0; i < 8; i++) { pinMode(led[i], OUTPUT); } } void loop() { if (Serial.available()) { message = Serial.read(); if (message == 'A') { digitalWrite(led[0], 1); } else if (message == 'B') { digitalWrite(led[2], 1); digitalWrite(led[5], 1); digitalWrite(led[7], 1); } } delay(20); digitalWrite(led[0], 0); digitalWrite(led[1], 0); digitalWrite(led[2], 0); digitalWrite(led[3], 0); digitalWrite(led[4], 0); digitalWrite(led[5], 0); digitalWrite(led[6], 0); digitalWrite(led[7], 0); }
5. Video Demo [Kembali]
6. Kondisi [Kembali]
Percobaan 1 (Komunikasi UART Menggunakan Arduino - sesuai rangkaian modul)
7. Download File [Kembali]
Datasheet PushButton klik disini
Datasheet LED klik disini
Komentar
Posting Komentar