komunikasi UART



1.   Kelebihan dan kekurangan UART
       Universal Asynchronous Receiver Transmitter ( UART )
          Adalah Suatu perangkat komputer yang digunakan untuk port paralel dan port serial . UART juga dipakai sebagai media untuk mengirim sebuah informasi . Misal jika ingin mengirim informasi dari sebuah PC(A) ke PC(B) . Maka UART akan menggunakan Clock. Clock tadi harus sama karena setiap byte informasi yang dikirim tadi saling menggunakan clock tersebut dan agar informasi yang dikirim PC(A) ke PC(B) tadi tersampaikan . 
      UART juga terdapat sebuah “START dan STOP “ , yaitu digunakan untuk memberi sebuah kode / informasi tentang data tadi . Dan UART Juga menggunakan satu kabel transmisi yang dapat digunakan untuk mengirim data ,  karena menggunakan satu kabel transmisi itu merupakan salah satu keuntungan dari UART ini . tetapi Sistem UART ini apabila digunakan untuk mengirim informasi informasi yang letak nya jauh maka Kecepatan Transfer informasi tadi akan lambat atau bisa terjadi tabrakan data ( kerusakan data ) .

      

2. Hardwarre[kembali]
a. Button




b.LED


3. Rangkaian Simulasi [kembali]



4. Prinsip kerja rangkaian [kembali]
Prinsip kerja rangkaianya adalah , Terdpat 2 buah arduino, yang dapat kita sebut sebagai Master dan Slave , disini menggunakan sistem input pull up. Master disini sebagai pengirim informasi dan slave sebagai penerima informasi. 

5. Video [kembali]




6. Flowchart [kembali]


7. Listing [kembali]
//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(200);
}

//SLAVE

#define led 12 //Deklarasi pin 12 untuk LED

void setup()    //Semua kode dalam fungsi ini dieksekusi sekali
{
  pinMode(led, OUTPUT); //Deklarasi LED sebagai output
  Serial.begin(9600);           //Set baud rate 9600
}

void loop()                          //Semua program dalam fungsi ini dieksekusi berulang
{
  if (Serial.available() > 0)
  {
    int data = Serial.read();
    if (data == '1') //Jika data yang dikirimkan berlogika
    {
      digitalWrite(led, HIGH); //LED menyala
    }
    else
    {
      digitalWrite(led, LOW); //LED mati
    }

  }
}

VIDEO
HTML

Tidak ada komentar:

Posting Komentar