Percobaan 1
Percobaan 1 Komunikasi UART Menggunakan Arduino
1. Prosedur [Kembali]
- Rangkai semua komponen
- Buat program di aplikasi arduino IDE
- Setelah selesai masukkan program ke arduino
- Jalankan program pada simulasi dan cobakan dengan modul
- Lihat hasil LED apakah sesuai dengan warna switch yang ditekan
- Rangkaian Simulasi
4. Prinsip Kerja Rangkaian [Kembali]
- Rangkaian percobaan ini merupakan rangkaian 8x Push Button dan LED. Push button akan mengatur keluaran pada LED. Dimana:
- Ketika push button 1 ON, maka LED 1 ON.
- Ketika push button 2 ON, maka LED 2 ON.
- Dan begitu seterusnya secara berurutan
- Flowchart
Master
Slave
- 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 9bool b1,b2,b3,b4,b5,b6,b7,b8;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 b8 = digitalRead(DS8);int b7 = digitalRead(DS7);int b6 = digitalRead(DS6);int b5 = digitalRead(DS5);int b4 = digitalRead(DS4);int b3 = digitalRead(DS3);int b2 = digitalRead(DS2);int b1 = digitalRead(DS1);// Hidupkan LED sesuai dengan tombol yang ditekanif (b8 == HIGH){Serial.write('8');}else if (b7 == HIGH){Serial.write('7');}else if (b6 == HIGH){Serial.write('6');}else if (b5 == HIGH){Serial.write('5');}else if (b4 == HIGH){Serial.write('4');}else if (b3 == HIGH){Serial.write('3');}else if (b2 == HIGH){Serial.write('2');}else if (b1 == HIGH){Serial.write('1');}delay(20);}
- //SLAVEint 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 == '1'){digitalWrite(led[0], 0);}else if (message == '2'){digitalWrite(led[1], 0);}else if (message == '3'){digitalWrite(led[2], 0);}else if (message == '4'){digitalWrite(led[3], 0);}else if (message == '5'){digitalWrite(led[4], 0);}else if (message == '6'){digitalWrite(led[5], 0);}else if (message == '7'){digitalWrite(led[6], 0);}else if (message == '8'){digitalWrite(led[7], 0);}}delay(20);digitalWrite(led[0], 1);digitalWrite(led[1], 1);digitalWrite(led[2], 1);digitalWrite(led[3], 1);digitalWrite(led[4], 1);digitalWrite(led[5], 1);digitalWrite(led[6], 1);digitalWrite(led[7], 1);}
6. Kondisi dan Analisa [Kembali]
Tidak ada komentar:
Posting Komentar