LA1 M3

 




Percobaan 1
 Komunikasi UART Menggunakan Arduino


1. Prosedur 
[Kembali]

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 :


Prinsip Kerja : 

 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


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 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]

HTML                                klik disini
Video Percobaan                klik disini
Listing Program                 klik disini
Datasheet Arduino             klik disini
Datasheet PushButton        klik disini
Datasheet LED                   klik disini

Komentar

Postingan populer dari blog ini

Tugas Besar

Modul 1

Modul I - Gerbang Logika dan Multivibrator