UART atau Universal Asynchronous Receiver/Transmitter merupakan perangkat keras yang digunakan untuk komunikasi serial antara dua perangkat. Lalu bagaimana cara agar perangkat UART terhubung? Sebenarnya, menghubungkan dua perangkat UART secara bersamaan itu mudah dan sederhana.
Satu kabel untuk mentransmisikan data yang disebut dengan pin TX dan kabel lainnya untuk menerima data yang disebut dengan pin RX. UART bekerja dengan mengubah data menjadi paket untuk mengirim atau membangun kembali data dari paket yang diterima.
Mengirim Data Seri
Perangkat pengirim mengubah byte data menjadi bit terlebih dahulu sebelum perangkat UART bisa mengirim data. Setelah mengubah data menjadi bit, perangkat UART membagi bit tersebut menjadi paket untuk ditransmisikan. Setiap paketnya berisi start bit, parity bit, data frame dan stop bit. Setelah menyiapkan paket, kemudian rangkaian UART mengirimkannya melalui pin TX.
Menerima Data Serial
Perangkat UART yang bertugas sebagai penerima memeriksa kesalahan paket yang diterima melalui pin RX dengan menghitung jumlah 1 dan membandingkannya dengan nilai bit paritas yang ada dalam paket. Jika tidak ada kesalahan dalam transmisi, maka paket akan dilanjutkan dengan strip start bit, stop bit dan parity bit untuk mendapatkan data . Sebelum bisa membangun kembali seluruh byte data dari bingkai data, mungkin perlu menerima beberapa paket terlebih dahulu. Setelah byte berhasil dibangun kembali, kemudian disimpan di buffer UART. Perangkat UART penerima menggunakan bit paritas untuk menentukan apakah ada kehilangan data selama transmisi. Saat sedang ditransmisikan, kehilangan data dalam transmisi terjadi ketika bit statusnya berubah. Bit bisa berubah karena beberapa faktor, antara lain radiasi magnetik, jarak transmisidan baud rate yang tidak cocok.
Parameter UART
Untuk memiliki komunikasi yang baik, UART memiliki pengaturan yang harus sama pada kedua perangkat. Pengaturan UART yaitu panjang data, bit paritas, flow control, jumlah bit stop dan baud rate.
Kecepatan Baud
Baud rate merupakan jumlah bit per detik (bps) yang bisa ditransmisikan atau diterima oleh perangkat UART. Kita perlu mengatur kedua perangkat UART dengan baud rate yang sama untuk memperoleh transmisi data yang tepat. Nilai umum untuk baud rate yaitu 9600, 1200, 2400, 4800, 19200, 38400, 57600 dan 115200 bps.
Panjang Data
Panjang data mengarah pada jumlah bit per byte data.
Bit Paritas
Bit paritasditambahkan sedikit ke data yang dikirimkan dan akan memberi tahu penerima jika angka 1 dalam data yang dikirimkan ganjil atau genap.
• ODD – Jika ada bilangan ganjil 1 dalam bingkai data, maka bit paritas adalah “1”.
• BAHKAN – Jika ada bilangan genap 1 dalam bingkai data, maka bit paritas adalah “0”.
Jumlah Bit Berhenti
Perangkat UART bisa menggunakan none, one atau twostop bit yang berguna untuk menandai akhir dari sekumpulan bit yang ditransmisikan.
Alur Kontrol
Flow kontrol merupakan cara untuk menghindari resiko kehilangan data ketika mengirimkan data melalui UART. Sebagai kontrol aliran, perangkat UART menggunakan karakter khusus untuk memulai atau menghentikan transmisi.
Antarmuka UART Arduino
Pin UART yang dimiliki Arduino tergantung pada papan, bisa satu atau lebih. Pada artikel kali ini, Arduino Indonesia menggunakan Arduino Uno yang hanya memiliki satu antarmuka UART yang ditemukan pada pin 0 (RX0) dan pin 1 (TX0). Selain sebagai pin UART, pin Arduino 0 dan 1 juga digunakan untuk berkomunikasi dengan Arduino IDE melalui USB. Jadi, jika kita akan mengupload sketsa ke Arduino UNO, maka pastikan terlebih dahulu untuk melepaskan semua kabel pada pin 0 dan 1.
Tingkat Logika UART
Produsen memiliki level logika UART yang mungkin berbeda. Misalnya, Arduino UNO memiliki level logika 5-V, namun port RS232 komputer memiliki level logika +/-12-V. Jika langsung menghubungkan Arduino UNO ke port RS232, maka akan merusak Arduino. Jika kedua perangkat UART tidak memiliki level logika yang sama, maka membutuhkan rangkaian konverter level logika yang sesuai untuk menyambungkan perangkat.
0 on: "Komunikasi Data UART dengan Arduino"