Arsitektur AVR ATMega32 Konfigurasi Pin ATMega32

18

2.6.5. Komunikasi Serial USART

Komunikasi data adalah perpindahan data antara satu atau lebih piranti, perpindahan tersebut dapat dilaksanakan secara parallel atau seri. Komunikasi seri dapat dibedakan menjadi dua macam yaitu, komunikasi data seri sinkron dan asinkron. Suatu komunikasi dapat dikatakan sinkron jika sisi pengirim dan penerima dipicu clocked oleh pemicu clock yang sama, satu sumber pemicu, data dikirim beserta pemicu. Sedangkan suatu komunikasi dikatakan asinkron jika sisi pengirim dan penerima dipicu oleh pemicu yang terpisah dengan frekuensi yang hampir sama, data dikirim disertai informasi sinkronisasi. Pada proses inisialisasi ini setiap perangkat yang terhubung harus memiliki baudrate yang sama. Beberapa fasilitas yang disediakan USART AVR adalah sebagai berikut: a Operasi full duplex mempunyai register receive dan transmit yang terpisah b Mendukung kecepatan multiprosesor c Mode kecepatan berorde Mbps d Operasi asinkron atau sinkron e Operasi master atau slave clock sinkron f Dapat menghasilkan baud-rate laju data dengan resolusi tinggi g Modus komunikasi kecepatan ganda pada asinkron Inisialisasi USART Pada mikrokontroler AVR untuk mengaktifkan dan mengeset komunikasi USART dilakukan dengan cara mengaktifkan register-register yang digunakan untuk komunikasi USART. Register-register yang digunakan untuk komunikasi USART antara lain: USART IO Data Register UDR UDR merupakan dua buah register 8 bit dengan alamat yang sama, yang digunakan sebagai tempat untuk menyimpan data yang akan dikirimkan TXB atau tempat data diterima RXB sebelum data tersebut dibaca, seperti yang terlihat pada gambar 2.13 berikut ini. Gambar 2.13. Register UDR PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19 USART Control and Status Register A UCSRA Gambar 2.14. Register UCSRA Penjelasan bit penyusun UCSRA: a Bit 7 - RXC USART Receive Complete Bit ini akan berlogika 1 ketika data yang masuk ke dalam UDR belum terbaca dan akan berlogika 0 ketika sudah dibaca. Flag ini digunakan untuk membangkitkan interupsi RX jika diaktifkan dan akan berlogika 0 secara otomatis bersamaan dengan eksekusi vektor interupsi yang bersangkutan. b Bit 6 - TXC USART Transmit Complete Bit ini akan berlogika 1 ketika data yang dikirim telah keluar. Flag ini akan membangkitkan interupsi TX jika diaktifkan dan akan clear secara otomatis bersamaan dengan eksekusi vektor interupsi yang bersangkutan. c Bit 5 - UDRE USART Data Register Empty Flag ini sebagai indikator isi UDR. Jika bernilai 1 maka UDR dalam keadaaan kosong dan siap menerima data berikutnya, jika flag bernila 0 berarti sebaliknya. d Bit 4 - FE Frame Error Bit ini sebagai indikator ketika data yang diterima error, misalnya ketika stop bit pertama data dibaca berlogika 0 maka bit FE bernilai 1. Bit akan bernilai 0 ktika stop bit yang diterima berlogika 0. e Bit 3 - DOR Data OverRun Bit ini berfungsi untuk mendeteksi jika ada data yang tumpang tindih. Flag akan bernilai 1 ketika terjadi tumpang tindih data. f Bit 2 - PE Parity Error Bit yang menentukan apakah terjadi kesalahan paritas. Bit ini akan berfungsi jika ada kesalahan paritas. Bit ini akan berlogika 1 jika terjadi bit parity error apabla bit paritas digunakan. g Bit 1 - U2X Double the USART Transmission Speed Bit yang berfungsi untuk menggunakan laju data menjadi dua kalinya. Hanya berlaku untuk modus asinkron, untuk mode sinkron bit ini diset 0. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI