Ketika Anda mempelajari komunikasi data dan interfacing, maka Anda akan diperkenalkan dengan istilah UART dan USART. Sebenarnya apa perbedaan UART dan USART? Bagaimana cara kerja UART dan USART? Semoga ulasan di bawah ini memberikan gambaran tentang fungsi dan perbedaan antara UART dan USART.
UART (Universal Asincrhounus Recivier Transmiter)
UART merupakan protokol komunikasi yang umum digunakan dalam pengiriman data serial antara device satu dengan yang lainnya. Sebagai contoh komunikasi antara sesama mikrokontroler atau mikrokontroler ke PC. Dalam pengiriman data, clock antara pengirim dan penerima harus sama karena paket data dikirim tiap bit mengandalkan clock tersebut. Inilah salah satu keuntungan model asynchronous dalam pengiriman data karena dengan hanya satu kabel transmisi maka data dapat dikirimkan.
Berbeda dengan model synchronous yang terdapat pada protokol SPI (Serial Peripheral Interface) dan I2C (Inter-Integrated Circuit) karena protokol membutuhkan minimal dua kabel dalam transmisi data, yaitu transmisi clock dan data. Namun kelemahan model asynchronous adalah dalam hal kecepatannya dan jarak transmisi. Karena semakin cepat dan jauhnya jarak transmisi membuat paket-paket bit data menjadi terdistorsi sehingga data yang dikirim atau diterima bisa mengalami error.
Model asynchronous memungkinkan untuk mentransmisikan data tanpa harus mengirimkan sinyal clock ke penerima. Tapi pengirim dan penerima harus mengatur parameter waktu di awal dan ada bit khusus yang ditambahkan untuk setiap data yang digunakan guna mensinkronkan unit pengiriman dan penerimaan.
Ketika sebuah data dikirimkan dengan transmisi Asynchronous, Start Bit ditambahkan pada setiap awal data yang akan ditransmisikan. Start Bit digunakan untuk memberikan peringatan kepada penerima bahwa data akan segera dikirimkan, dan memaksa bit-bit sinyal di penerima agar sinkron dengan bit-bit sinyal di pengirim. Kedua bit ini harus akurat agar tidak memiliki penyimpangan frekuensi dengan lebih dari 10% selama transmisi.
Setelah Start Bit, kemudian diikuti dengan bit-bit data yang dikirim. Setiap bit dalam transmisi ditransmisikan sama dengan jumlah bit lainnya. Penerima mendeteksi apakah bit yang diterima adalah 1 atau 0. Misalnya, jika dibutuhkan dua detik untuk mengirim setiap bit, maka penerima akan memeriksa sinyal untuk menentukan apakah itu adalah 1 atau 0 setelah satu detik berlalu. Selanjutnya penerima akan menunggu dua detik dan kemudian memeriksa nilai bit berikutnya, dan seterusnya.
Tipe-tipe UART
- 8250 UART pertama pada seri ini. Tidak memiliki register scratch, versi 8250A merupakan versi perbaikan dari 8250 yang mampu bekerja dengan lebih cepat;
- 8250A UART ini lebih cepat dibandingkan dengan 8250 pada sisi bus. Lebih mirip secara perangkat lunak dibanding 16450;
- 8250B Sangat mirip dengan 8250;
- 16450 Digunakan pada komputer AT dengan kecepatan 38,4 Kbps, masih banyak digunakan hingga sekarang;
- 16550 Generasi pertama UART yang memiliki penyangga, dengan panjang 16-byte, namun tidak bekerja (produk gagal) sehingga digantikan dengan
- 16550A, yaitu 16550A UART yang banyak digunakan pada komunikasi kecepatan tinggi, misalnya 14,4 Kbps atau 28,8 Kbps; Sedangkan 16650 UART baru, memiliki penyangga FIFO 32-byte, karakter Xon/Xoff terprogram dan mendukung manajemen sumber daya;
- 16750 Diproduksi oleh Texas Instrument, memiliki FIFO 64-byte!
USART (Universal Synchronous-Asynchronous Receiver/Transmitter)
USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART. USART bisa digunakan untuk transmisi data synchronous maupun asynchronous sehingga USART masih kompatibel dengan USART. USART disebut juga Synchronous UART.
Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronousharus 3 pin yaitu TXD, RXD dan XCK.
Kesimpulan
UART dan USART merupakan protokol komunikasi data antara satu device ke device lainnya, atau lebih dikenal dengan komunikasi serial. Perbedaan UART dan USART adalah : UART hanya mendukung komunikasi Asinkron, sedangkan USART mendukung komunikasi Sinkron dan Asinkron.
0 komentar:
Posting Komentar