let`s share knowledge, science, fun things, and everything here….

Komunikasi serial


sy belum bosen niy tulis artikel yang sy kutip dari Laporan KP sy

okeee kali ini sy akan membahas mengenai komunikasi serial yang khususnya untuk mikrokontroler AT89S51……

Komunikasi serial dapat dianalogikan sebagai perjalanan semut memasuki lubang di tanah. Semut-semut itu berbaris teratur dan memasuki tanah satu per satu. Semut-semut adalah data dalam bit, sedangkan lubang di tanah adalah sebuah register yang menampung bit-bit yang terkirim. Pada intinya, proses pengiriman data pada komunikasi serial dikirim satu per satu.

Berikut ini beberapa istilah dalam komunikasi serial, yaitu :

1      Synchronous (sinkron) adalah kondisi pengiriman data serial yang disertai dengan pengiriman detak (clock).

2      Asynchronous (asinkron) adalah kondisi dengan detak tidak dikirim bersamaan dengan data serial sehingga masing-masing perangkat keras yang berkomunikasi harus menciptakan detaknya sendiri.

3      Baud rate merupakan istilah yang digunakan untuk kecepatan aliran data. Satuan baud rate adalah bps (bit per second). Contohnya, 9600 bps atau 19200 bps.

4      Full duplex adalah jenis komunikasi serial yang menyatakan hubungan antara dua perangkat keras, A dan B. Jika A sedang melakukan pengiriman data, pada saat yang sama, A dapat menerima data dari B, dan sebaliknya. Kondisi ini dinamakan full duplex atau komunikasi dua arah. Contohnya, telepon.

5      Half duplex merupakan kondisi ketika proses pengiriman dan penerimaan data tidak dapat dilakukan secara bersamaan seperti pada full duplex namun dilakukan secara bergantian. Contohnya, pesawat intercom dan walkie talkie.

Jenis komunikasi serial diantaranya UART (Universal Asynchronous Receiver/Transmitter), SPI, dan I2C (Inter Integrated Circuit). Pada komunikasi serial asinkron jenis full duplex digunakan tiga jalur yaitu, jalur Tx (transmit / pengiriman), jalur Rx(receive / penrimaan), dan jalur ground. Umumnya jumlah data yang dikirim adalah satu bit start, delapan bit data, dan satu bit stop sehingga dalam satu frame data terdapat sepuluh bit (format 1-8-1).

komunikasi serial

komunikasi serial

Komunikasi serial pada mikrokontroler AT89S51 bergantung pada kondisi pin Rx dan Tx. Data yang akan dikirim dan diterima harus diletakkan atau ditampung pada register SBUF (serial buffer). SBUF pada mikrokontroler  dipisahkan antara pengiriman data dan penerimaan data tetapi dalam pemrogramannya hanya ada satu yaitu SBUF saja. Tugas compiler untuk memahami SBUF yang dimaksud oleh program dan menterjemahkannya ke dalam kode mesin untuk masing-masing SBUF.

Register SBUF

Register SBUF

Register lain yang berkaitan dengan komunikasi serial adalah SCON (Serial Port Control Register) dan PCON (Power Control Register). Bit kedua dan bit ketiga SCON hanya digunakan untuk komunikasi serial dengan data sembilan bit sedangkan bit-bit yang lain digunakan di hampir setiap mode komunikasi serial.

Register SCON

Register SCON

Isi register SCON

Isi register SCON

Register PCON digunakan untuk pengaturan baud rate atau kecepatan transmisi serial yaitu melalui bit yang bernama SMOD. Register PCON terdiri atas delapan bit seperti diilustrasikan berikut.

Register PCON

Register PCON

Saat pertama kali mikrokontroler dihidupkan atau dalam kondisi reset, semua nilai bit pada PCON adalah 0 (nol). Dari lima bit yang ada pada register PCON, mikrokontroler MCS-51 hanya menggunakan tiga bit saja yaitu SMOD, PD, dan IDL. Dari tiga bit tersebut, yang berhubungan dengan komunikasi serial adalah SMOD. GF1 dan GF0 digunakan untuk fungsi umum atau general purpose register.

Isi register PCON

Isi register PCON

Port serial AT89S51 dapat digunakan untuk empat mode sesuai pengaturan bit SM0 dan SM1 seperti pada gambar dibwah ini. Mode yang umum dipakai adalah UART 8 bit (mode 1) sedangkan aplikasi yang rentan terhadap gangguan menggunakan mode 2 dan mode 3.

Mode kerja port serial

Mode kerja port serial

Berikut penjelasan masing-masing mode, yaitu :

1      Mode 0

Mode 0 merupakan mode sinkron dengan detak juga ikut dikirimkan bersamaan dengan data serial. Detak dikirim melalui TxD (dengan kecepatan fosc/12). Sedangkan, pin RxD digunakan untuk mengirim dan menerima data. Sifat mode 1 adalah half duplex. Jika CPU difungsikan untuk menerima data, maka RI dikosongkan terlebih dahulu (RI=0) dan REN=1.

2      Mode 1

Mode 1 merupakan mode asinkron full duplex. Format data yang digunakan adalah 1 bit start, 8 bit data, dan 1 bit stop dengan protokol RS-232 tetapi dengan level tegangan TTL. Sepuluh bit paket data tersebut dikirim melalui pin TxD dan dapat diterima melalui pin RxD.

3      Mode 2

Mode 2 adalah mode asinkron full duplex dengan sebelas bit paket data yaitu, 1 bit start, 8 bit data, 1 bit RB8 (atau TB8) dan 1 bit stop. RB8 digunakan untuk menerima bit data ke-9 sedangkan TB8 digunakan untuk menampung bit data ke-9 yang akan dikirimkan. Bit data ke-9 sering disebut juga sebagai Parity (P). mode 2 mendukung pemanfaatan multiprosesor. Baud rate dapat dipilih antara fosc/32 atau fosc/64 tergantung pada pilihan SMOD di register PCON. Jika SMOD=0 maka baud rate adalah fosc/64 dan jika SMOD=1 maka baud rate adalah fosc/32.

4      Mode 3

Mode 3 sama dengan mode 2. Perbedaannya hanyalah terletak pada baud rate. Baud rate pada mode ini daopat diatur melalui timer 1.

Mode 1 dan mode 3 sering digunakan untuk komunikasi RS-232 dengan format berikut :

  • Mode 1 : 1 + 8 + 1
  • Mode 3 : 1 + 8 + P + 1

Pengaturan baud rate pada mikrokontroler AT89S51 disesuaikan dengan mode yang dipilih.

Hubungan mode dengan baud rate

Hubungan mode dengan baud rate

Rumus baud rate untuk setiap mode komunikasi serial, yaitu :

Rumus mode serial

Rumus mode serial

Comments on: "Komunikasi serial" (2)

  1. Gilang ganteng said:

    beraatttt,,,,edann..

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: