Dalam transfer
data parallel, 8 buah (atau lebih) saluran (kabel) bersama-sama digunakan untuk mentransfer data ke peralatan lain, yang jaraknya hanya beberapa centimeter. Contoh
tranfer data parallel adalah printer jarum (kuno) dan harddisk (IDE/PATA) yang mana
menggunakan kabel yang berisi beberapa kabel di dalamnya. Namun, hubungan parallel
jenis ini walaupun dapat mentransfer data dengan cepat, jarak menjadi masalah karena
tidak mungkin menggunakannya dengan jarak yang panjang atau jauh. Dan untuk
mentransfer data dengan jarak yang sangat jauh, maka metode serial kemudian
digunakan. Dalam komunikasi serial ini, data dikirim bit demi bit. Komunikasi serial pada
8051 adalah topik dari bab ini. 8051 memiliki kemampuan komunikasi serial yang sudah
ada di dalamnnya, sehingga dapat mentranfer data dengan cepat hanya dengan
menggunakan beberapa kabel saja.
Dalam bab ini kita pertama mendiskusikan dasar-dasar komunikasi serial. Pada SubBAB
10.2, menghubungkan 8051 ke konektor RS232 melalui chip driver MAX232 adalah
bahasan kita. Sedang pemrograman komunikasi serial pada 8051 akan kita diskusikan
pada SubBAB berikutnya.
berada diantara bit start dan bit stop. Bit start selalu satu bit, tapi stop bit bisa satu bit
atau dua bit. Start bit selalu 0 (low) dan stop bit selalu 1 (high). Contohnya, lihat pada
gambar 10-3 yang dimana karakter A (01000001 biner) dikemudian dibingkai (dikurung)
oleh start bit dan satu stop bit. Harap dicatat, LSB dikirim terlebih dahulu.
Standar RS232
Untuk mendapatkan keserba-cocokan (compatibility) dari beberapa peralatan komunikasi
data dari berbagai pabrik, diciptakanlah standar tatap-muka (interfacing) yang
dinamakan RS232. Standar ini dipublikasikan oleh EIA(Electronics Industries Association)
pada 1960. Dan pada 1963 standar itu dimodifikasi dengan nama RS232A. RS232B dan
RS232C ditetapkan pada tahun masing-masing 1965 dan 1969. Pada buku ini kita akan
mengacu pada standar RS232 paling dasar. Sekarang Standar RS232 masih menjadi
standar dunia mengenai standar tatap-muka I/O komunikasi serial. Bahkan standar ini
masih dipakai dan digunakan pada komputer PC kita.
Karena standar ini sudah dupublikasikan jauh lebih lama dari standar TLL, standar yang
diciptakan saat komputer masih dibuat dari tansistor, relay dan tabung hampa, sehingga
standar ini sama sekali tidak kompatibel dengan standar keluarga logika TTL yang
diciptakan belakangan. Pada RS232, 1s (high) direpresentasikan dengan tegangan -3 s/d
-25V, dan 0s (low) direpresentasikan sebagai +3 s/d +25V. Sedang diantara -3 dan +3V
dianggap sebagai status mengambang dan tidak dianggap. Atas alasan ini, untuk
menghubungkan 8051 yang ber-standar TTL dengan komputer (atau alat lain) yang
menggunakan RS232, kita harus menggunakan peralatan tambahan misalnya dengan
chip MAX232 untuk mengkonversi level TTL ke RS232 dan level RS232 ke level TTL.
Walaupun RS232 sudah mulai ditinggalkan, kita masih bisa berbangga bahwa standar ini
masih dijadikan standar dasar bagi standar-standar yang lebih maju, misalnya USB, SATA,
Packet Data dll. Sehingga sangat bermanfaat mempelajari standar RS232 ini sebelum
mempelajari standar yang lainnya.
Pin
1
Penjelasan
Seperti juga Komputer dengan DTR-nya, saat modem pertama dihidupkan, dan siap
berkomunikasi dia akan menyalakan DSR ini menuju ke komputer. Sehingga komputer dapat
segera tahu bahwa saat itu ada modem yang terhubung dan siap untuk digunakan. Ini adalah
sinyal dari modem ke PC, dan berjenis aktif low. Sinyal ini tidak akan dikeluarkan modem, jika
modem dalam masalah atau rusak.
RTS (Request To Send)
Saat Komputer kita hendak mengirimkan data kepada device seperti modem, maka komputer
akan mengirimkan RTS ini menuju modem terlebih dahulu. Hal tersebut agar modem tahu,
bahwa akan ada pengiriman data dari komputer kepadanya, dan modem segera bersiap-siap
untuk menerima data. RTS adalah sinyal aktif low dari komputer ke device seperti modem.
CTS (Clear To Send)
Dalam merespon RTS, ini modem menyalakan sinyal CTS. Ceritanya begini.. Saat komputer
mengirimkan RTS, maka modem bersiap-siap untuk menerima data, dan jika ruang untuk
menerima data tersebut sudah ada dan cukup, baru sinyal tersebut dikirimkan pada Komputer
untuk segera mengirimkan datanya. Ingat untuk flowkontrol Hardware, maka komputer tidak
akan mengirimkan datanya jika belum ada sinyal dari modem ini.
DCD (Data Carrier Detect)
Ini adalah sinyal yang dikeluarkan oleh modem kepada PC, untuk menginformasikan PC bahwa
modem mendeteksi adanya carrier yang valid dan adanya kontak / hubungan dengan modem
lain nun jauh di sana. (Biasanya sinyal ini diberikan setelah komunikasi dengan modem lain
tersambung).
RI (Ring Indikator)
Sinyal ini diberikan oleh modem kepada komputer untuk menginfomasikan bahwa saluran telah
dihubungi dan berbunyi. Sinyal ini muncul bersamaan saat telfon berbunyi. Sinyal ini seperti saat
telfon kita sedang tidak digunakan, dan seseorang dari sana menelfon,lalu pesawat telfon kita
berbunyi, meminta kita untuk segera mengangkatnya, dan berkomunikasi. Dalam modem bunyi
tersebut digantikan dengan sinyal. Saat komputer kita dalam keadaan mati, setting BIOS dalam
komputer memungkinkan Komputer untuk hidup sendiri saat adanya panggilan semacam ini.
Port COM pada PC-IBM dan sejenisnya
Komputer PC-IBM dan sejenisnya yang berbasis mikro prosesor x86 (8086, 186, 286, 386,
486, dan pentium) memiliki dua buah (setidaknya satu) port COM. Kedua port COM
memiliki
konektor standar RS232. Konektor serial DB-25 sudah tidak ada lagi sekarang. Kalaupun
kita menjumpai DB-25 itu adalah port printer, yang juga sudah mulai ditinggalkan karena
printer terbaru lebih suka menggunakan USB. Port-port COM tersebut diberi nama
dengan COM1 dan COM2. Biasanya port COM ini sekarang digunakan untuk modem
(modem sekarang juga sudah banyak menggunakan USB). Kita dapat bereksperimen
dengan menghubungkan 8051 pada COM tersebut.
Setelah sedikit banyak memahami landasan dasar dari komunikasi serial kita sudah siap
untuk mengupas tuntas peralatan serial pada 8051.
Contoh 10-1
Dengan XTAL = 11.0592 MHz, cari nilai TH1 yang dibutuhkan untuk membentuk baud
rate.
(a) 9600 (b) 2400 (c) 1200
Jawaban:
Dengan XTAL = 11.0592 MHz, kita akan mendapatkan :
Frekuensi Siklus Mesin 8051 = 11.0592 MHz / 12 = 921.6 kHz, dan 921.6 kHz / 32 =
28.800 Hz adalah frekuensi yang dihsalikan oleh UART menuju Timer-1 untuk
membentukbaud rate.
Register SBUF
SBUF adalah register 8-bit yang digunakan secara khusus untuk komunikasi serial. Agar
data dapat dikirim memlalui pin TxD, data byte harus diberikan pada register SBUF. Hal
yang serupa, SBUF berisi data byte saat 8051 menerima data dari pin RxD. SBUF dapat
diakses seperti register lainnya pada 8051. Lihat contoh berikut tentang bagaimana
register SBUF ini diakses.
MOV SBUF,#D
MOV SBUF,A
MOV A,SBUF
Pada saat data byte dituliskan pada SBUF, data itu kemudian langsungdibingkai (framed)
dengan bit start dan bit stop, dan selanjutnya dikirim secara serial melalui pin TxD.
Sebaliknya, saat bit-bit diterima oleh 8051 nelalui pin RxD sampai pada bit stop, 8051
akan membuat bit-bit bingkai, dan kemudian menaruh data yang sebenarnya pada SBUF.
Mode-0
Mode-1, 8-bit data, 1 stop bit, 1 start bit
Mode-2
Mode-3
Dari 4 mode serial, hanya mode-1 yang paling menarik perhatian kita. Penjelasan lebih
lanjut tentang mode lainnya akan anda temui di Lampiran A.3. Mode-mode selain mode-1
tersebut sudah jarang sekali digunakan. Jika register SCON diatur pada mode-2,
pembingkaian datanya adalah 8-bit, 1 stop bit, dan 1 start bit, yang mana hal ini masih
kompatible dengan PC-IBM. Hal penting lainnya adalah, serial mode-1 ini adalah memiliki
baud rate variable yang ditentukan oleh Timer-1. Pada serial Mode-1, total bit adalah 10bit, yang terdiri dari 8-bit data, 1 stop bit, dab 1 start bit.
SM2
SM2 (Serial Mode 2) adalah D5 pada register SCON. Bit ini untuk mendukung
kemampuan komunikasi serial pada system yang menggunakan lebih dari satu prosesor
(multi prosesor), yang akan kita bahas nanti. Untuk sementara kita akan membuat SM2
ini selau 0s. Hal itu karena kita hanya menggunakan satu 8051.
REN
Bit REN (Recieve Enable) adalah D4 pada register SCON. REN juga dapat dinamakan bit
SCON.4 mengingat SCON adalah register yang bisa dialamati secara bit. Ketika bit REN
ini tinggi, akan membuat 8051 dapat menerima data pada pin RxD. Alhasil jika kita
menginginkan 8051 dapat mengirimkan data sekaligus dapat menerima data, maka bit
REN ini harus dibuat tinggi. Hal itu dapat dilakukan misalnya dengan perintah SetB
SCON.4 untuk mengaktifkan penerimaan, dan Clr SCON.4 untuk menonaktifkan. Bit
REN ini sangat penting, dengan kata lain atur REN = 1 agar 8051 dapat menerima data
serial.
TB8
TB8 (Transfer bit 8) adalah D3 dan register SCON. TR8 ini adalah bit ke-9 untuk mode
pengiriman data 9-bit. Sebelum kita menuliskan data 8-bit SBUF, maka kita sebelumnya
harus menulis bit ke-9 tersebut pada TB8. Demikian maksudnya agar bit ke-9 itu benarbenar dikirim pada rangkaian data yang seharusnya.
RB8
RB8 (Recieve bit 8) adalah D1 pada register SCON. Bit ini adalah bit ke-9 untuk mode
penerimaan data 9-bit. Setelah mengambil data pada SBUF, isi RB8 ini dapat kita ambil.
Bit ke-9 ini biasanya adalah informasi paritas, karena banyak melibatkan software,
penanganan paritas di sini adalah juga lewat software. Namun kenyataannya mode 9-bit
sekarang jarang digunakan, hal ini karena penanganan paritas sudah dapat dilakukan
melalui hardware. Namun untuk selanjutnya bahasan kita, kita anggap isi TB8 dan RB8
adalah nol (rendah), dan tidak kita gunakan.
TI
TI(Transmit Interupt) adalah D1 pda register SCON. Ini adalah bit yang sangat penting
pada register SCON. Saat 8051 selesai mengirimkan data karakter 8-bit bendera bit TI ini
akan diset menjadi 1s yang menandakan peralatan serial telah siap utuk mengirimkan
data berikutnya. TI diterbitkan saat 8051 mengirim bit stop pada akhir pengiriman data
byte. Kita akan mendikusikan lebih jauh nanti.
RI
RI (Recieve Interupt) adalah D0 pada register SCON. Ini adalah bit yang juga sangat
penting. Saat 8051 menerima data secara serial memlalui pin RxD, begitu proses
penerimaan selesai data byte yang diterima diletakkan pada SBUF sembari menerbitkan
bendera bit RI ini, yang menandakan adanya byte yang telah diterima. Dan bersiap
untuk menerima data berikutnya. Data yang sudah diterima dan sudah ada pada SBUF
dengan terbitnya bendera bit RI ini harus segara kita salin ketempat yang lain. Kalau
tidak, data tersebut akan hilang karena tertimpa oleh data yang baru. Bit RI ini
diterbitkan, saat 8051 sedang menerima stop bit dari proses menerimaan data. Hal ini
akan kita diskusikan lebih jauh nanti.
Pemrograman 8051 untuk mentransfer Data secara serial
Dalam pemrograman 8051 untuk dapat mengirim data secara serial, lagkah-langkah
berikut harus dilakukan.
1. Register TMOD diisi dengan 20h, yang berarti menggunakan Timer-1 pada mode-2 (8-bit
2.
3.
4.
5.
6.
7.
8.
Contoh 10-2 memperklihatkan program untuk mengirimkan data secara serial pada baud
rate 400 bps. Sedang contoh 10-3 memperlihatkan bagaimana mengirim karakter YES
secara serial terus-menerus.
Contoh 10-2
Tulislah program pada 8051 untuk mengirimkan huruf A secara serial pada baud 4800,
terus menerus.
Jawaban:
MOV TMOD,#20h
;Timer-1, Mode-2 (autireload)
MOV TH1,#-6
;baud rate 4800
MOV SCON,#50h
;8-bit, 1-stop, ren = 1
SetB TR1
;jalankan Timer-1
LAGI: MOV SBUF,#A
;kirim A
ULANG: JNB TI,ULANG
;Tunggu sampai TI = 1
Clr TI
;reset TI
ACALL DELAY1S
;tunggu 1 detik
SJmp LAGI
Contoh 10-3
Tulislah program pada 8051 untuk mengirimkan pesan YES secara serial pada baud
9600, 8-bit data, 1-stop bit. Terus menerus.
Jawaban:
MOV TMOD,#20h
;Timer-1, Mode-2 (autoreload)
MOV TH1,#-3
;baud rate 9600
MOV SCON,#50h
;8-bit, 1-stop, ren = 1
SetB TR1
;jalankan Timer-1
LAGI: MOV A,#Y
;kirim Y
ACALL TRANS
MOV A,#E
;kirim E
ACALL TRANS
MOV A,#S
;kirim S
ACALL TRANS
ACALL DELAY1S
;tunggu 1 detik
SJmp LAGI
;Ulangi lagi
Dari pembahasan di atas, kita mendapatkan kesimpulan, bahwa dengan melihat bendera
bit TI, kita akan segera tahu kapan proses transmit selesai dilakukan.
Pemrograman 8051 untuk menerima data secara serial
Dalam pemrogram 8051 untuk dapat menerima data secara serial, langkah-langkah
berikut harus diikuti.
1. Register TMOD diisi dengan 20h, yang berarti menggunakan Timer-1 pada mode-2 (8-bit
Contoh 10-4
Programlah 8051 untuk dapat menerima byte secara serial, dan tampilkan pada P1. Atur
baud rate 4800, 8-bit, 1-stop bit.
Jawaban:
MOV TMOD,#20h
;Timer-1, Mode-2 (autireload)
MOV TH1,#-6
;baud rate 4800
MOV SCON,#50h
;8-bit, 1-stop, ren = 1
SetB TR1
;jalankan Timer-1
ULANG: JNB RI,ULANG
;Tunggu sampai RI = 1
MOV A,SBUF
;simpan data yg diterima
MOV P1,A
;tuliskan pada Port 1
Clr RI
;reset RI
SJmp ULANG
;Ulangi terima data
Contoh 10-5
Anggaplah port serial dari 8051 terhubung pada port COM komputer PC kita, dan dari
komputer kita mmengggunakan terminal.exe untuk mengirim dan menerima data
secara serial. P1 dan P2 masing-masing terhubung pada LED dan switch. Tulis program
8051 (a) untuk dapat mengirim pesan We Are Ready, dan (b) menerima semua data
yangdikirm dari PC dan mennampilkannya pada LED yang terhubung pada P1, (c) ambil
data dari switch yang terhubung P2 dan kirim pada PC. Pada bagian (a) dikerjakanhanya
sekali, sedang (b) dan (c) dikerjakan terus menerus. Gunakna baud rate 4800.
Jawaban:
ORG
MOV
MOV
MOV
MOV
SetB
0
P2,#0FFh
;Buat P2 sebagai Port Input
TMOD,#20h
;Timer-1, Mode-2 (autireload)
TH1,#0FAh
;baud rate 4800
SCON,#50h
;8-bit, 1-stop, ren = 1
TR1
;jalankan Timer-1
4.
5.
akan diterimanya.
Karakter 8-bit diterima bit demi bit. Saat menerima bit terakhir, maka byte secara lengkap
sudah bisa diletakkan pada SBUF.
Saat stop bit diterima, 8051 membuat bendera RI = 1s, yang berarti seluruh bit dari
karakter sudah diterima dan harus segera diambil sebelum ditimpa oleh karakter yang
datang belakangan.
Dengan memeriksa bendera RI , kita dapat mengetahui kapan sebuah karakter telah
diterima secara lengkap, dan sudah berada pada register SBUF. Kita harus menyalin isi
SBUF ke tempat yang aman pada memory yang lain, sebelum data tersebut hilang.
Setelah isi SBUF di salin ke tempat yang aman, bendera RI harus di-clear menjadi 0s
dengan perintah Clr RI, untuk selanjutnya dapat menerima karakter baru. Kesalahan
dalam melakukan hal ini dapat berakibat hilangnya data.
Dari diskusi di atas kita dapat menyimpulkan bahwa memeriksa bendera RI harus
terlebih dahulu meng-clear bendera tersebut dengan perintah Clr RI dan selanjutnya
menggunaakan instruksi seperti JNB RI,xx untuk menunggu RI menjadi 1s (high). Atau
yang lebih baik menggunakan interupsi yang akan kita bahas pada bab selanjutnya.
Pilihan pertama tentu membuat tidak nyaman karena osilator kristal sifatnya tetap
(disolder pada PCB), tidak mudah diganti-ganti. Namun yang lebih parah lagi, kristal
yang baru, belum tentu kompatibel dengan baud rate pada konektor COM komputer PC
kita. Oleh karena itu kita akan membahas lebih jauh tentang pilihan ke dua. Karena ada
cara software untuk men-duakali-kan baud rate 8051 tanpa perlu mengganti kristal
osilator. Hal ini bisa dilakukan dengan mengubah salah satu bit pada registe PCON
(Power Control). Register PCON adalah register 8-bit. Dari 8-bit tersebut beberapa
diantaranya tidak digunakan, dan sebagian lain digunakan untuk pengendalian daya
pada 8051. Bit dimana digunakan untuk komunikasi serial hanya D7 dari register PCON
tersebut (yang juga disebut bit SMOD). Saat 8051 baru dihidupkan, isi register ini selalu
00h. Sehingga SMOD pun juga dalam keadaan 0. Kita dapat mengatur SMOD ini untuk
menjadi 1s, akibatnya frekuensi yang diterima Timer menjadi 2 kali lebih cepat. Di
bawah ini adalah prosedure yang baik untuk men-set SMOD atau D7 pada PCON. Hal ini
karena PCON bukanlah register yang bisa dialamati bit.
MOV A,PCON
SetB Acc.7
MOV PCON,A
Untuk melihat bagaimaa baud rate dikalikan dua dengan metode ini, kita akan
membahas bit SMOD tersebut.
Frekuensi inilah yang digunakan oleh Timer-1 untuk membentuk baud rate yang kita
inginkan. Tabel 10-5 , menunjukkan nilai yang diisikan pada TH1 adalah sama untuk
kedua kasus dimana SMOD = 0 dan SMOD = 1.
Tabel 10-5 : perbandingan baud rate untuk SMOD = 0 dan SMOD = 1
TH1
Desimal
Hex
SMOD = 0
SMOD = 1
-3
FD
9.600
19.200
-6
FA
4.800
9.600
-12
F4
2.400
4.800
-24
E8
1.200
2.400
Contoh 10-6
Anggaplah kita menggunakan XTAL = 11.0592 MHz pada progrram berikut, (a) program
apa itu sebenarnya (b) hitung frekuensiyng diterima Timer-1 untuk membentuk Baud
rate untuk pengiriman data.
MOV A,PCON
;A = PCON
SETB ACC.7
;Buat D7 = 1 (Double rate)
MOV PCON,A
;Kembalikan PCON
MOV TMOD,#20h
;Timer-1, Mode-2, auto-reload
MOV TH1,#-3
;dengan SMOD=1 === 57600/3 = 19200
MOV SCON,#50h
;8-bit data, 1 stop, RI enable
SETB TR1
;Jalankan Timer-1
MOV A,#B
;Isi dengan karakter B
A_1:
CLR TI
;Mulai pengiriman
MOV SBUF,A
;Makak krimkan
H_1:
JNB TI,H_1
;tunggi sampai TI =1
SJMP A_1
Jawaban:
(a) Program ini adalah mengirimkan karakter B (01000010b) terus menerus.
(b) Dengan XTAK = 11.0592 MHz dan SMOD = 1 , dari program di atas kita akan
memperoleh.
11.0592 / 12 = 921,6 kHz adalah siklus kerja mesin.
921,6 / 16 = 57.600 Hz adalah frekuensi yang diterima Timer-1.
57.600 / 3 = 19.200 Hz adalah frekuensi yang dihasilkan Timer-1 sebagai baud rate.
Contoh 10-7
Cari nilai TH1 dalam desimal dan Hex, untuk mengatur nilai baud rate (a) 9600 (b)
4800 , jika SMOD = 1 dan XTAL 11,0592 MHz.
Jawaban:
Dengan XTAL = 11,0592 MHz dan SMOD = 1, kita mendapatkan frekuensi Timer-1 =
57.600 Hz.
(a) 57.600 Hz / 9600 = 6 , sehingga TH1 diisi -6 = FAh
(b) 57.600 Hz / 4800 = 12, sehingga TH1 diisi -12 = F4h
Contoh 10-8
Cari BAUD rate jika TH1 = -2 , SMOD = 1, dan XTAL = 1105920 MHz. Dan apakah baud
rate ini cocok dengan Komputer PC?
Jawaban:
Dengan XTAL = 11,0592 MHz dan SMOD = 1, kita akan mendapatkan frekuensi Timer1 =
57.600 Hz. Dan baud rate sendiri adalah sebesar 57.600 / 2 = 28.800. Baud rate ini
tidak cocok dengan BIOS pada komputer PC. Namun beberapa modem dan program
seperti HiperTerminal ternyata dapat bekerja pada baud rate ini dan baud rate yang lain.
Contoh 10-9
Cari bagaimana memprogram komunikasi serial menggunakan 8051 untuk
menghubungi membunyikan nada C4 pada MIDI komputer PC kita. Menggunakan XTAL =
12 MHz.
Jawaban:
MIDI adalah standar komunikasi musik digital yang sekarang masih digunakan. Di bawah
4.
5.
pada PC.
frekuensi 12 MHz adalah ideal, karena dari Siklus Mesin = 12 MHz / 12 = 1 uS,
kita akan mendapatkan frekuensi 1 MHz. Anggap kita menggunakan SMOD = 0
maka frekuensi untuk Timer-1 adalah 1 MHz / 32 = 31.250 Hz. Karena 31.250 Hz
adalah tepat baud rate MIDI maka frekuensi ini tidak perlu dibagi lagi, sehingga
nilai untuk TH1 adalah -1.
Setelah setting serial sudah ditetapkan, kirim ke MIDI-message dengan
serangkaian data dengan format 3-byte. Yaitu (Status,Param,Value = NoteOn,
C4, Volume) == 80h, 38h, 7Fh. Buka buku tentang format MIDI-message.
programnya adalah sbb
MOV
MOV
MOV
SETB
TMOD,#20h
;Timer-1, Mode-2, auto-reload
TH1,#-1
;dengan SMOD=1 === 31250/1 = 31250
SCON,#50h
;8-bit data, 1 stop, REN enable
TR1
;Jalankan Timer-1
MOV SBUF,#80h
;kirim Midi Status = Note-On
JNB TI,$
;Tunggu sampai TI = 1
Clr TI
;reset TI
MOV SBUF,#38h
;kirim Midi Param = Note C4 (38h)
JNB TI,$
;Tunggu sampai TI = 1
Clr TI
;reset TI
MOV SBUF,#64h
;kirim Midi Status = Volume 100
JNB TI,$
;Tunggu sampai TI = 1
Clr TI
;reset TI
RINGKASAN
BAB ini dimulai dengan perkenalan mendasar tentang komunikasi serial. Komunikasi
serial, di mana data dikirim bit-demi-bit, digunakan terutama pada jarak yang panjang,
dibandigkan dengan komunikasi parallel. Mengirim data byte secara parallel pada jarak
yang sangat jauh akan menimbulkan distorsi pada kabel serta sinyal, dan dimungkinkan
adanya logika palsu. Komunikasi serial sekarang sudah sangat maju dengan menumpang
pada kabel telpon. Komunikasi serial menggunakan dua metode, yaitu metode
Asynchronos dan Synchronos. Pada komunikasi Synchronos, data dikirm blok-byte per
blok-byte (dan kadang disinkronkan dengan sinyal tambahan), sedang pada
Asynchronos, data dikirim byte demi byte. Komunikasi serial dapat berupa simplex (bisa
mengirim tapi tidak bisa menerima), half duplex (bisa mengirim dan menerima, namun
tidak bisa bersamaan), dan full-duplex ( bisa mengirim dan menerima dalam waktu yang
bersamaan). RS232 adalah standar konektor untuk komunikasi serial.
UART pada 8051 adalah yang telah kita diskusikan. Kita tahu bagaimana
menghubungkan 8051 dengan konektor RS232 dan mengubah baud rate pada 8051.
Ditambah lagi kita dapat menjelaskan fungsi-fungsi lain dari komuniasi serial 8051, dan
memrogramnya sebagai komunikasi data serial.