TUGAS PENDAHULUAN MODUL 3



1. Kondisi[Kembali]
 
    Percobaan 1 (UART) Kondisi 1
    Buatlah kondisi awal LED mati, lalu hidup berkedip dengan delay 500 ms

2.      Rangkaian Simulasi [Kembali]

 

3.      Flowchart[Kembali]

 MASTER

SLAVE

4.  Listing Program[Kembali]

LISTING PROGRAM MASTER

 //MASTER

#define button 2 //Deklarasi pin 2 untuk button

void setup()        //Semua kode dalam fungsi ini dieksekusi sekali
{
  pinMode(button, INPUT_PULLUP);
  Serial.begin(9600); //Set baud rate 9600
}

void loop()         //Semua kode dalam fungsi ini dieksekusi berulang
{
  int nilai = digitalRead(button);

  //Button ditekan
  if (nilai == 0)
  {
    Serial.print("1");
  }
  else
  {
    Serial.print("2");
  }

  delay(500);
}

LISTING PROGRAM SLAVE

//Slave
#define led 12
void setup() {
  // put your setup code here, to run once:
  pinMode(led,OUTPUT);
  Serial.begin(9600);

}

void loop() {
  // put your main code here, to run repeatedly:
  if(Serial.available()>0){
    int data = Serial.read();
    if(data == '1'){
      
      digitalWrite(led,HIGH);
      delay(1000);
      digitalWrite(led,LOW);
      delay(500);
      }else{
        digitalWrite(led,LOW);
        }
    }

}

5. Video Simulasi [Kembali]


prinsip kerja :
UART yaitu komunikasi yang dapat dilakukan 2 objek / 2device yaitu antara PC dengan mikrokontroler atau  mikrokontroler dengan mikrokontroler. Pin komunikasi UART pada arduino terdapat pada Tx pin 1 (transmitter) dan Rx pada pin 0 (receiver). Pada rangkaian terdiri dari arduino uno 2 buah yang mana pada arduino sebelah kiri diberi nama MASTER dan sebelah kanan diberi nama SLAVE, lau LED dan button sebagai indikator / pembuat sinyal dari arduino. Push button dihungkan dengan pin 2 atau boleh pin berapa saja, tetapi disesuaikan dengan program. Kemudian LED akan diberi perintah  oleh arduino kedua (SLAVE). Pin Tx MASTER dihubungkan pada pin Rx SLAVE, sebaliknya pin Rx master dihungkan pada pin Tx SLAVE yang mana disebut hubungan UART menggunakan kabel.

        Pada listing program arduino MASTER, setelah mendeklarasikan pin 2 sebagai input button, pada void setup dideklarasikan button sebagai input pull up. Input pull up membeikan kondisi LOW apabila button ditekan dan kondisi HIGH apabila button dilepas. Selanjutnya, pada void loop digunakan tipe data integer untuk nilai (pembacaan dan button) dan menggunakan kondisi if. Ketika button ditekan, nilai = 0, maka arduino MASTER akan mengirim data ke arduino SLAVE berupa data serial atau bit serial "1". Sebaliknya, jika button dilepas, nilai =/= 0, maka arduino MASTER akan mengirim data ke arduino SLAVE berupa data serial atau bit serial "2". Keadaan tersebut akan berganti terus-menerus dengan selang waktu 500 ms.

        Pada listing program arduino SLAVE, setelah mendeklarasikan pin 12 sebagai input LED, pada void setup dideklarasikan bahwa LED sebagai output. Serial.begin berfungsi untuk melihat serial monitornya. Pada void loop, digunakan kondisi if, jika data serial yang masuk bernilai "1", maka LED akan dalam kondisi HIGH selama 500 ms dan setelahnya LED akan dalam kondisi LOW selama 500 ms. Selanjutnya, jika data atau bit serial yang masuk bernilai "2", maka LED akan dalam kondisi LOW selama 500 ms.


6. Link Download [Kembali]



Tidak ada komentar:

Posting Komentar