Anda di halaman 1dari 5

Nama Nim

Josua Ricardo Siagian 14S17012

1. Jelaskan prinsip UART dan USART


UART (Universal Asynchronous Receiver Transmitter) adalah bagian perangkat keras komputer yang
menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi
yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat periperal. UART
sekarang ini termasuk di dalam beberapa mikrokontroler.
UART atau Universal Asynchronous Receiver Transmitter adalah 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.
Asynchronous memungkinkan transmisi mengirim data tanpa sang pengirim harus mengirimkan sinyal
detak ke penerima. Sebaliknya, pengirim dan penerima harus mengatur parameter waktu di awal dan bit
khusus ditambahkan untuk setiap data yang digunakan untuk mensinkronkan unit pengiriman dan
penerimaan. Saat sebuah data diberikan kepada UART untuk transmisi Asynchronous, “Bit Start”
ditambahkan pada setiap awal data yang akan ditransmisikan. Bit Start digunakan untuk memperingatkan
penerima yang kata data akan segera dikirim, dan memaksa bit-bit sinyal di receiver agar sinkron dengan
bit-bit sinyal di pemancar. Kedua bit ini harus akurat agar tidak memiliki penyimpangan frekuensi dengan
lebih dari 10% selama transmisi bit-bit yang tersisa dalam data. (Kondisi ini ditetapkan pada zaman
teleprinter mekanik dan telah dipenuhi oleh peralatan elektronik modern.)
Setelah Bit Start, bit individu dari data yang dikirim, dengan sinyal bit terkecil yang pertama
dikirim. Setiap bit dalam transmisi ditransmisikan serupa dengan jumlah bit lainnya, dan penerima
mendeteksi jalur di sekitar pertengahan periode setiap bit untuk menentukan apakah bit adalah 1 atau 0.
Misalnya, jika dibutuhkan dua detik untuk mengirim setiap bit, penerima akan memeriksa sinyal untuk
menentukan apakah itu adalah 1 atau 0 setelah satu detik telah berlalu, maka akan menunggu dua detik
dan kemudian memeriksa nilai bit berikutnya , dan seterusnya.
Cara kerja UART :
UART memiliki tugas mengubah data yang diterima dari komputer melewati sirkuit paralel menjadi bit
stream serial untuk dikirimkan ke perangkat keras, dan sebaliknya. UART juga berfungsi menambahkan
bit parity untuk melindungi data dari kesalahan, menambahkan start bit dan stop bit pada waktu
pengiriman data, serta menangani interrupt dari perangkat keras.

USART (Universal Synchronous – Asynchronous Receiver Transmitter) 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 memungkinkan transmisi data baik secara syncrhronous maupun asyncrhronous, sehingga
dengan memiliki USART pasti kompatibel dengan 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.
Komunikasi serial data antara master dan slave pada SPI diatur melalui 4 buah pin yang terdiri dari
SCLK, MOSI, MISO, dan SS sebagai berikut :
 SCLK dari master ke slave yang berfungsi sebagai clock
 MOSI jalur data dari master dan masuk ke dalam slave
 MISO jalur data keluar dari slave dan masuk ke dalam master
 SS (slave select) merupakan pin yang berfungsi untuk mengaktifkan slave

Cara kerja USART :


Pada transimi sinkron (USART) pengirim akan mengirimkan clock / timing signal sehingga device
penerima tahu kapan membaca bit data berikutnya. Transimisi asinkron (UART) mengijinkan pengirim
tidak memberikan clock sinyal pada penerima, sebagai gantinya untuk memulai transmisi pengirim
mengirimkan start bit pada tiap byte data yang dikirimkan dan diakhiri dengan stop bit.
Komunikasi dengan menggunakan USART dapat dilakukan dengan dua cara yaitu dengan mode sinkron
dimana pengirim data mengeluarkan pulsa/clock untuk sinkronisasi data, dan yang kedua dengan mode
asinkron, dimana pengirim data tidak mengeluarkan pulsa/clock, tetapi untuk proses sinkronisasi
memerlukan inisialisasi, agar data yang diterima sama dengan data yang dikirimkan. Pada proses
inisialisasi ini setiap perangkat yang terhubung harus memiliki baud rate (laju data) yang sama. Pada
mikrokontroler AVR untuk mengaktifkan dan mengeset komunikasi USART dilakukan dengan cara
mengaktifkan register2 yang digunakan untuk komunikasi USART.

2. Jelaskan cara kerja SPI (Serial Peripheral Interface)

SPI (Serial Peripheral Interface) adalah salah satu bentuk komunikasi serial yang disediakan dalam
AVR sehingga memang direkomendasikan menggunakan SPI karena dari datasheet. SPI merupakan
sebuah bus komunikasi serial sinkron, artinya transmitter dan receiver yang terlibat dalam komunikasi
SPI harus menggunakan clock yang sama untuk mensinkronkan pendeteksian bit pada receiver.
Normalnya bus SPI digunakan untuk  komunikasi dengan jarak yang sangat pendek dengan perangkat
atau mikrokontroler lain yang terletak pada papan rangkaian yang sama atau setidaknya dalam hardware
yang sama. Ini berbeda dari UART, yang digunakan untuk komunikasi pada jarak yang lebih jauh, seperti
antara sebuah mikrokontroler dan PC. Bus SPI dikembangkan untuk menyediakan bentuk komunikasi
yang memiliki kecepatan yang relatif tinggi pada jarak dekat dengan menggunakan jumlah pin kontroler
yang minimum. Komunikasi SPI terdiri dari sebuah master dan slave. Keduanya mengirim dan menerima
data secara simultan, tapi master adalah yang bertanggung jawab untuk menyediakan sinyal clock untuk
proses transfer data. Dengan cara ini masterlah yang mengatur kecepatan transfer data, dan karenanya,
adalah yang mengendalikan transfer data. Gambar di bawah menunjukkan koneksi antara unit master dan
slave dalam komunikasi SPI. Master menyediakan clock dan data 8 bit, yang dikirimkan ke pin MOSI
(master out slave in) pada master. Data 8 bit yang sama dikirim ke unit slave, satu bit per pulsa clock ke
pin MOSI pada slave. Ketika 8 bit data dikirim keluar dari master ke slave, 8 bit data juga dikirim dari
slave ke masternya melalu pin MISO (master in slave out) ke pin MISO pada master. Karena itu
komunikasi SPI pada dasarnya adalah berbentuk melingkar di mana 8 bit data mengalir dari master ke
slave dan himpunan 8 bit yang berbeda mengalir dari slave ke master. Dengan cara ini master dan slave
dapat saling bertukar data dalam satu komunikasi tunggal.
Sangat memungkinkan untuk menghubungkan beberapa perangkat sekaligus menggunakan bus
SPI, karena semua pin MOSI dan pin MISO dapat disambungkan sekaligus. Perangkat manapun dalam
jaringan ini dapat menjadi master hanya dengan memutuskan untuk mengirimkan data. Sebuah perangkat
dalam jaringan ini dapat menjadi slave ketika pin SS(slave select) digroundkan. Biasanya pin SS dari para
slave ini dihubungkan entah dengan port parallel pada master atau dengan sebuah decoder yang akan
menentukan perangkat mana yang akan menjadi slave. SPCR (SPI control register) mengendalikan
operasi pada interface SPI. Definisi bit pada SPCR ditunjukkan pada gambar di bawah. Dalam cara yang
sama dengan control register yang telah dibahas di atas, ada bit yang digunakan untuk mengenable
interface SPI dan interup yang berhubungan dengan SPI, dan ada bit yang digunakan untuk
mengendalikan kecepatan komunikasi. Juga ada bit yang digunakan untuk menentukan perangkat mana
yang bertindak sebagai master, MSTR.

3. Jelaskan cara kerja I2C.

Inter Integrated Circuit atau sering disebut I2C adalah standar komunikasi serial dua arah
menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem I2C
terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C
dengan pengontrolnya. Piranti yang dihubungkan dengan sistem I2C Bus dapat dioperasikan
sebagai Master dan Slave. Master adalah piranti yang memulai transfer data pada I2C Bus dengan
membentuk sinyal Start, mengakhiri transfer data dengan membentuk sinyalStop, dan membangkitkan
sinyal clock. Slave adalah piranti yang dialamati master.
Sinyal Start merupakan sinyal untuk memulai semua perintah, didefinisikan sebagai perubahan
tegangan SDA dari “1” menjadi “0” pada saat SCL “1”. Sinyal Stop merupakan sinyal untuk mengakhiri
semua perintah, didefinisikan sebagai perubahan tegangan SDA dari “0” menjadi “1” pada saat SCL “1”.
Kondisi sinyal Start dan sinyal Stop seperti tampak pada Gambar 1.

Gambar 1 Kondisi sinyal start dan stop


Sinyal dasar yang lain dalam I2C Bus adalah sinyal acknowledge yang disimbolkan dengan ACK
Setelah transfer data oleh master berhasil diterima slave, slave akan menjawabnya dengan mengirim
sinyal acknowledge, yaitu dengan membuat SDA menjadi “0” selama siklus clock ke 9. Ini menunjukkan
bahwa Slave telah menerima 8 bit data dari Master. Kondisi sinyalacknowledge seperti tampak pada
Gambar 2.

Gambar 2 Sinyal ACK dan NACK

Dalam melakukan transfer data pada I2C Bus, kita harus mengikuti tata cara yang telah
ditetapkan yaitu:
Transfer data hanya dapat dilakukan ketikan Bus tidak dalam keadaan sibuk.
Selama proses transfer data, keadaan data pada SDA harus stabil selama SCL dalam keadan tinggi.
Keadaan perubahan “1” atau “0” pada SDA hanya dapat dilakukan selama SCL dalam keadaan rendah.
Jika terjadi perubahan keadaan SDA pada saat SCL dalam keadaan tinggi, maka perubahan itu dianggap
sebagai sinyal Start atau sinyal Stop.

Gambar 3 Trasfer Bit pada I2C bus

Mode Pengoperasian Transfer Data


Tergantung kondisi bit R/W, 2 jenis transfer dimungkinkan, yaitu :

1. Data transfer from a master transmitter to a slave receiver.


Byte pertama yang dikirimkan oleh master adalah alamat slave, setelah itu master mengirimkan
sejumlah byte data. Slave atau receiver mengirimkan sinyal acknowledge setiap kali menerima 1-byte
data. Pada tiap byte, bit pertama yang dikirim adalah MSB.
2. Data transfer from a slave transmitter to a master receiver.
Meskipun master berperan sebagai receiver, byte pertama dikirimkan oleh master berupa alamat
slave. Setelah itu slave mengirimkan bit acknowledge, dilanjutkan dengan pengiriman sejumlah byte dari
slave ke master. Master mengirimkan bit acknowledge untuk setiap byte yang diterimanya, kecuali byte
terakhir. Pada akhir byte, master mengirimkan sinyal ‘not acknowledge’, setelah itu master mengirimkan
sinyal STOP.

Anda mungkin juga menyukai