Mikrokontroller Serial Slave-Master
Komunikasi antar Mikro dengan menggunakan serial data sehingga antar mikrokontroller memiliki komunikasi yang bershinambungan dan saling memiliki keterkaitan, dalam serial slave-master minimal dua mikrokontroller terhubung, maksimal tak terhingga selama masih terjadinya komunikasi antar mikrokontroller. Dalam komunikasi slave-master digunnakan serial Komunikasi, serial merupakan komunikasi
data dengan pengiriman data secara satu per satu berurutan dimulai dari LSB
(Least Significant Bit) sampai dengan MSB (Most Significant Bit), dengan menggunakan
satu jalur kabel data dalam satu waktu.
Iustrasi komunikasi serial
Pengiriman data secara serial terbagi menjadi dua
modus transmisi yaitu modus Asinkron dan modus Sinkron.
1.
Modus Asinkron
Komunikasi data serial asinkron
(UART) atau biasa disebut sebagai Start
Stop Transmission karena pada sistem ini digunakan start bit sebagai alat
untuk mensinkronisasikan clock antara transmitter
dan receiver . Data yang akan dikirim
berupa kumpulan bit per bit dalam 1 paket karakter dengan jarak antara paket
karakter yang satu dan lainnya adalah tidak tentu. Pada awal tiap paket,
ditambahkan sebuah start bit sedangkan pada akhir karakter tersebut harus di
tambahkan satu atau dua stop bit. Pihak penerima akan dapat mengenal karakter
tersebut berdasarkan referensi start bit yang selalu merupakan space. Dalam
keadaan idle (tidak melakukan apa-apa), pihak pengirim selalu akan mengirim
sinyal pengenal yang konstan yang dikenal dengan nama MARK HOLD.
ilustrasi pengiriman paket data
serial asinkron
Transmisi serial asinkron memiliki kecepatan data yang
bervariasi, olehkarena itu membutuhkan protokol/parameter-parameter yang harus
dimengerti oleh peralatan yang ingin berkomunikasi. Parameter itu adalah:
a. Jumlah bit tiap karakter adalah 5 sampai 8 bit.
b. Parity bit yang digunakan untuk mendeteksi kesalahan
(error) yang berbentuk odd (ganjil), even (genap) atau tanpa parity (no
parity).
c. Jumlah stop bit (1 bit, 1,5 bit, atau 2 bit) dan 1 start
bit.
d. Baud
rate atau kecepatan data (bps).
2. Modus Sinkron
Mode sinkron merupakan mode
komunikasi yang pengiriman tiap bit data dilakukan dengan menggunakan
sinkronisasi clock. Pada saat transmitter hendak mengirimkan
data, harus disertai clock untuk sinkronisasi antara transmitter dengan
receiver.(Wie.2009).
pihak pengirim akan mengirimkan karakter unik yang dikenal sebagai sync
characters, biasanya berupa kode ASCII 16h. Setelah pihak penerima menerima
karakter ini, clock penerima dengan clock pengirim akan disamakan.
ilustrasi paket data dari serial sinkron.
STX (start
of text) dan ETX (end of text)
digunakan untuk memberikan tanda awal dan akhir dari data yang akan dikirimkan.
BCC (block check character) digunakan
untuk mendeteksi kesalahan dari data yang dikirm.Pengiriman setiap data selalu
disertai pemberian sinyal clock, artinya suatu nilai (logika 1 ataupun 0) tidak
akan dianggap suatu data jika belum diberikan sinyal clock. Oleh sebab itu pada
komunikasi serial sinkron harus ada Master dan Slave, yaitu Master sebagai
pemberi clock dan Slave sebagai penerima clock. Pada komunikasi serial sinkron
yang diberikan adalah data terlebih dahulu kemudian disertai clock, Hal ini
dilakukan agar data yang diterima valid dan tidak error.
Model
Komunikasi
Dalam komunikasi data, arah aliran data dapat dibedakan menjadi tiga
bagian yaitu simpex, half duplex, dan full duplex.
1. Simplex
Mode Simplex adalah salah satu
bentuk komunikasi antara dua belah pihak, di mana sinyal-sinyal dikirim secara
satu arah seperti yang ditunjukan pada gambar .Transmisi secara simplex
terjadi di dalam beberapa teknologi komunikasi, seperti siaran televisi atau
siaran radio. (Wikipedia.2010).
2. Half
Duplex
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.
3. Full
Duplex
Full
duplex merupakan sebuah mode komunikasi dimana data dapat di transmisikan atau
diterima secara dua arah pada waktu yang sama, dan umumnya membutuhkan dua
jalur komunikasi.
USART
(Universal Synchronous and Asynchronous
Serial Receiver and Transmitter) merupakan salah fitur yang telah
disediakan mikrokontroler untuk
berkomunikasi secara serial antara mikrokontroler atau dengan periferal lain
seperti komputer, GPS, dan lain-lain . Komunikasi dengan menggunakan USART
dapat dilakukan dengan dua cara yaitu modus asinkron dan modus sinkron.
1. USART
asinkron
Pada
USART asinkron, komunikasi hanya membutuhkan dua jalur interface Rx (penerima) dan Tx (pengirim), tanpa menggunakan clock Master-Slave dikarena memiliki baudrate yang
standar dan umum, serta fullduplex. Jika digunakan untuk
komunikasi banyak perangkat maka setiap perangkat (Slave) diberikan alamat unik
sendiri (unique Address) dengan protokol tertentu yang ditentukan secara
program oleh programmer.
2.
USART Sinkron
Pada
USART AVR mode sinkron, komunikasi data
dan clock telah diatur
secara internal oleh AVR.
Komunikasi USART mode Sinkron pada AVR, RxD
dan TxD
berfungsi sebagai pemberi dan penerima data sedangkan XCK sebagai pembangkit Clock-nya. Beberapa hal
mengenai USART mode serial sinkron pada AVR, antara lain:
·
Sebagai Master atau sebagai Slave.
· Nilai Clock kristal (XTALL)
antara master dan slave minimal sama dan jika tidak sama maka Clock kristal
Slave harus lebih cepat dari Master agar Slave bisa mengikuti Clock Master.
·
Format komunikasi data.
·
Saat IDLE logika pada RxD dan TxD haruslah berlogika 1 (High).