Anda di halaman 1dari 22

SISTEM MIKROPROSESSOR 1

TEKNIK LISTRIK
POLITEKNIK NEGERI JAKARTA
Universal Synchoronous and
Asynchronous Serial Receiver
and Transmitter(USART) juga
merupakan salah satu mode
komunikasi serial yang dimiliki
oleh ATmega8535.
USART merupakan
komunikasi yang memiliki
fleksibilitas tinggi, yang
dapat digunakan untuk
melakukan transfer data baik
anatar mikrokontroler
maupun dengan modul
eksternal atau PC yang
memiliki fasilitas UART.
Pada ATmega8535, secara umum pengaturan mode komunikasi
baik synchronous maupun asynhcronous adalah sama.
Perbedaannya hanya lah terdapat pada sumber clock. Jika pada
asynhcronous masinh masing periperal memiliki sumber clock
sendiri maka pada synhcronous hanya terdapat satu sumber clock
yang digunakan secara bersama sama.
Duplex adalah sebuah istilah dalam bidang
telekomunikasi yang merujuk kepada komunikasi
dua arah.
Terdapat dua metode duplexing, yakni
Full-duplex
Half-duplex
full-duplex, dua pihak yang saling berkomunikasi
akan mengirimkan informasi dan menerima
informasi dalam waktu yang sama, dan
umumnya membutuhkan dua jalur komunikasi.
Half-duplex merupakan sebuah mode komunikasi di mana data dapat ditransmisikan
atau diterima secara dua arah tapi tidak dapat secara bersama-sama. Contoh paling
sederhana adalah walkie-talkie, di mana dua penggunanya harus menekan sebuah
tombol untuk berbicara dan melepaskan tombol tersebut untuk mendengar.
Fungsi RS232 adalah sebagai driver, yang akan mengkonversi
tegangan dari hardware agar sesuai dengan tegangan pada
computer sehingga data dapat dibaca.
RS232
Logic high (1) = -15V s/d -3V
Logic low (0) = +3V s/d +15V
TTL
Logic high (1) = +2V s/d +5V
Logic low (0) = 0V s/d +0.8V
Contoh
COM1/COM2
pada komputer
1. KOMUNIKASI CEPAT
2. MEMBUTUHKAN BANYAK
PIN
3. DLL
1. KOMUNIKASI LAMBAT
2. PIN LEBIH SEDIKIT
3. DLL
PARALEL USART
Komunikasi ATMEGA ke PC
Komunikasi ATMEGA ke SCADA
Komunikasi ATMEGA ke RFID
Komunikasi ATMEGA ke ATMEGA
DLL
1. ISI SURAT
2. FORMAT PENULISAN
3. ALAMAT YANG DITUJU
4. INFORMASI SURAT TELAH
DITERIMA
1. DATA
2. FORMAT DATA
3. FRAME ERROR,PARITY
ERROR
4. USART TRANSFER
COMPLETE,USART
RECEIVE COMPLETE
SURAT USART
Register UDR digunakan sebagai buffer untuk menyimpan data baik yang
akan dikirimkan maupun yang diterima dalam komunikasi USART.
register UDR memiliki dua register I/O yaitu RXB sebagai buffer untuk
menyimpan data yang diterima dan TXB sebagai buffer untuk menyimpan
data yang akan dikirim.
FE : Frame Error
Digunakan untuk mendeteksi adanya kesalahan dalam penerimaan data. Jika
terjadi eror FE bernilai 1
DOR : Data Over Run
Data over run terjadi jika data pada register RXB penuh atau belum terbaca,
sementara data yang lain sudah datang lagi. Pada kondisi ini DOR bernilai 1.
U2X : Double the USART Transmision speed
Untuk membuat transfer data menjadi 2 kali lebih cepat. Jika U2X bernilai 0 maka
kecepatan transfernya normal,tetapi jika U2X diset 1 maka kecepatan transfernya
menjadi dua kali baudrate yang telah diatur sebelumnya.
PE : Parity Eror
untuk mengetahui adanya parity eror. Bit paritas (parity) merupakan salah satu bit
yang ada dalam satu frame data yang diterima, ini digunakan untuk menunjukkan
berapa banyak bit yang bernilai 1 dalam satu frame data tersebut. Jika terdapat
ketidaksesuaian antara data dan bit paritas maka akan menyebabkan terjadinya
parity eror. Pada kondisi terjadi parity eror ini maka PE bernilai 1
TXC : USART Transmit Complete
Untuk mengetahui proses pengiriman data. TXC bernilai 1 menunjukkan bahwa
data telah selesai dikirimkan.
UDRE : USART Data Register Empty
Untuk mengetahui status isi register UDR. Jika UDRE 1 maka UDR kosong.
Sebaliknya jika UDRE 0 maka UDR masih terdapat data.
MPCM : Multi-processor Communication mode
Digunakan pada mode komunikasi multi prosesor. Pengaturan bit MPCM ini hanya
berpengaruh pada penerimaan data saja dan tidak berpengaruh terhadap
pengiriman data. Pada mode MPCM, format frame data yang diterima harus
memilki informasi alamat sebagai identitas pengirimnya. Jika data yang diterima
tidak dimiliki nya maka akan diabaikan. Untuk melakukan mode ini dilakukan
dengan mengeset bit MPCM (MPCM = 1)
RXC : USART Receive Complete
Untuk mengetahui proses penerimaan data. RXC bernilai 1 menunjukkan bahwa ada
data baru yang diterima di buffer terima RXB dan belum terbaca. Sebaliknya jika data
pada buffer RXB sudah dibaca atau kosong maka RXC bernilai 0.
Bit 7 RXCIE : RX Complete interrupt Enable
RXCIE digunakan untuk mengaktifkan dan menonaktifkan interupsi receive complete
interrupt. Jika RXCIE bernilai 1 berarti Receive complete interrupt aktif.
Bit 6 TXCIE : TX Complete Interrupt Enable
TXCIE digunakan untuk mengaktifkan menon-aktifkan interupsiTransmit complete
interrupt. Jika TXCIE bernilai 1 berarti Transmit complete interupt aktif.
Bit 5 UDRIE : USART Data Register Empty Interrupt Enable
UDRIE digunakan untuk mengaktifkan dan menon-aktifkan interupsi UDR Empty
Interrupt. Jika UDRIE bernilai 1 berarti UDR Empty Interrupt aktif.
Bit 4 RXEN : Receiver Enable
RXEN digunakan untuk mengaktifkan menon-aktifkan USART receiver. Jika RXEN
bernilai 1 maka USART receicer aktif sehingga data serial yang diterima pin RXD
akan diiijinkan masuk ke shift register dan buffer terima RXB.
Bit 3 TXEN : Transmitter Enable
TXEN digunakan untuk mengaktifkan dan menonaktifkan USART transmitter. Jika
TXEN bernilai 1 maka USART transmitter aktif sehingga data serial yang dituliskan ke
buffer trasmit TXB akan dimasukkan ke shift register yang kemudian dikeluarkan
secara serial melalui pin TXD.
Bit 2 UCSZ2 : Character Size
UCSZ2 bersama dengan UCSZ1 dan UCSZ0 yang berada pada register UCSRC
digunakan untuk menentukan ukuran data/karakter dalam satu frame.
Bit 1 RXB8 : Receive Data Bit 8
RXB8 adalah bit ke-9 dari data/karakter yang diterima jika menggunakan
ukuran 9-bit.
Bit 0 TXB8 : Transmit Data Bit 8
TXB8 adalah bit ke 9 dari data/karakter yang dikirim jika menggunakan
ukuran 9-bit.
Bit 7 URSEL : Register Select
Register UCSRC dan register UBBRH menempati lokasi register I/O yang
sama sehingga untuk menentukan apakah register UCSRC atau register
UBRRH yang akan mengakses ditentukan dengan bit URSEL. Jika bit
URSEL bernilai 1 berarti mengakses register UCSRC dan jika bit URSEL
bernilai 0 berarti mengakses register UBRRH.
Bit 6 UMSEL : USART Mode
UMSEL digunakan untuk menentukan mode komunikasi USART. Jika
UMSEL bernilai 0 berarti mode komunikasi asynchronous, dan jika bernilai
0 berarti mode komunikasi synchronous.
Bit 5 : 4 UMP1:0 : Parity Mode
UMP1 dan UMP0 digunakan untuk menentukan mode paritas. Jika UMP1:0
bernilai 00 berarti tidak menggunakan paritas, jika bernilai 10 digunakan
paritas genap dan jika bernilai 11 berarti digunakan paritas ganjil (lihat tabel
berikut)
Bit 3 USBS : Stop Bit Select
USBS digunakan untuk menentukan jumlah stop bit dalam setiap frame. Jika USBS
bernilai 0 berarti panjang stop bit adalah 1-bit dan jika USBS bernilai 1 maka panjang
stop bit adalah 2-bit.
Bit 2 :1 UCSZ1:0 : Character Size
UCSZ1 dan UCSZ0 bersama dengan UCSZ2 yang berada pada register UCSRB
digunakan untuk menentukan ukuran data/karakter satu frame seperti terlihat pada tabel
xx pengaturan ukuran data tiap frame.
Bit 0 UCPOL : Clock Parity
UCPOL digunakan untuk mengatur mode transisi clock pada pengambilan data yang
diterima dan perubahan data yang dikirimkan. Pengaturan Bit UCPOL ini hanya berlaku
untuk mode komunikasi synchronous saja. Efek pengaturan bit UCPOL ini seperti terlihat
pada tabel beriku ini.
UBBRL dan UBBRH atau sering disebut UBBR
merupakan register yang mengatur kecepatan/Baudrate transmisi
data pada komunikasi USART.
Baud adalah symbol per second atau pulses per second
URSEL : Register Select
Jika bit URSEL bernilai 1 berarti mengakses register UCSRC dan jika
bit URSEL bernilai 0 berarti mengakses regsiter UBRRH
Bit 14-12 Tidak digunakan
Bit 11-0 UBRR11-0 : USART Baud Rate Register
UBRR11-0 adalah register dengan lebar 12 bit yang digunakan untuk
menentukan baudrate komunikasi USART.
Untuk memulai klik new
file-project-code wizard.
Kemudian menyeting chip
dan clock sesuai rangkaian
yang digunakan.
Selanjutnya pada setingan
LCD memilih PORT yang
akan digunakan sebagai
interface dengan LCD.
Kemudian pilih receiver dan transmitter. Untuk
settingan Baud Rate , Communication
Parameters dan mode kita defaultkan saja.
Kemudian klik Generate Save and Exit
LCD pada PORTC
akan terhubung
dengan pustaka lcd.h
Membuat variabel data
dan buf dengan jumlah
array 33
Prosedur mengirim
karakter A
Prosedur menerima karakter dari
getchar() ke variabel data,
kemudian menampilkan data
tersebut ke LCD.

Anda mungkin juga menyukai