Gambar 2.7 Komunikasi Sinkron dan Komunikasi Asinkron
2.5.3 Baud Rate Serial Pada Mikrokontroller AT89S51
Baud rate clok berkaitan erat dengan frekuensi kristal yang digunakan dan pada mode 1,2 dan 3 juga di tentukan oleh bit SMOD pada PCON register. Baud rate clok tiap
mode ditentukan sebagia berikut •
Mode 0 adalah 112 frekuensi kristal •
Mode 2, untuk SMOD = 0 adalah 164 frekuensi kristal •
Mode 2, untuk SMOD =1 adalah 132 frekuensi kristal •
Mode 1 dan 3 untuk SMOD = 0 adalah 132 dari timer overflow •
Mode 1 dan 3 untuk SMOD = 1 adalah 116 dari timer overflow PCON tidak dapat di akses secara bit, sehingga pengaturan bit SMOD dapat
dilakukan dengan perintah dibawah ini, dalam hal ini SMOD di clearkan MOV A, PCON ; ambil nilai PCON
CLR Acc.7 ; clear bit 7 MOV PCON,A ; kembali ke PCON
Baud rate dari Port Serial 89C51 dapat diatur pada Mode 1 dan Mode 3, namun pada Mode 0 dan Mode 2, baud rate tersebut mempunyai kecepatan yang permanen yaitu
untuk Mode 0 adalah 112 frekwensi osilator dan Mode 2 adalah 164 frekwensi osilator. Dengan mengubah bit SMOD yang terletak pada Register PCON menjadi set
kondisi awal pada saat sistem reset adalah clear maka baud rate pada Mode 1, 2 dan 3 akan berubah menjadi dua kali lipat.
Pada Mode 1 dan 3 baud rate dapat diatur dengan menggunakan Timer1. Cara yang biasa digunakan adalah Timer Mode 2 8 bit auto reload yang hanya menggunakan
register TH1 saja. Pengiriman setiap bit data terjadi setiap Timer 1 overflow sebanyak 32 kali sehingga dapat disimpulkan bahwa:
Lama pengiriman setiap bit data = Timer 1 Overflow X 32 ...........
Baud rate jumlah bit data yang terkirim tiap detik = 32
1 lowx
TimerOverf …… 2.5
Apabila diinginkan baud rate 9600 bps maka timer 1 harus diatur agar overflow setiap
32 9600
1 x
detik Timer 1 overflow setiap kali TH1 mencapai nilai limpahan overflow dengan frekwensi
sebesar fosc12 atau periode 12fosc. Dari sini akan ditemukan formula
fosc TH
x ]
1 256
[ 12
− =
32 9600
1 x
sebagai berikut:
32 ]
1 256
[ 12
9600 x
TH x
fosc −
=
Dengan frekwensi osilator sebesar 11,0592 MHz maka TH1 adalah 253 atau 0FDH. Selain variabel-variabel di atas, masih terdapat sebuah variabel lagi yang menjadi
pengatur baud rate serial yaitu Bit SMOD pada Register PCON. Apabila bit ini set maka faktor pengali 32 pada formula 3.1 akan berubah menjadi 16. Oleh karena itu dapat
disimpulkan formula untuk baud rate serial untuk Mode 1 dan Mode 3 adalah:
xK TH
x fosc
Baudrate ]
1 256
[ 12
− =
……………2.6 Tabel 2.5 memberikan bermacam nilai pada TH 1 pada pembangkit baud reat komunikasi
data serial melalui port serial pada metode 1 dan 3, penggunaan kristal 12 MHz hanya di perbolehkan hingga kecepatan 4800 bps saja. Penggunaan kecepatan 4800 untuk
komunikasi dengan computer, baik suntuk programming atau untuk emulator.
Tabel 2.4 Mode Serial vs baud rate Mode
Baud rate 112 fosc
1 SMOD = 0
SMOD = 1
2 132 fosc
132 fosc 3
Table.2.5 penentuan nilai TH1 pada pembangkit Baud rate:
BPS Kristal
SMOD TH1 reload
REAL BPS ERROR
4800 12
1 -13F3h
4807 0.16
2400 12
-13F3h 2404
0.16 2400
12 1
-26E6h 2404
0.16 1200
12 1
-26E6h 1202
0.16 1200
12 1
-56CCh 1202
0.16 19200
11.059 1
-3FDh 19200
9600 11.059
-3FDh 9600
BPS Kristal
SMOD TH1 reload
REAL BPS ERROR
9600 11.059
1 -6Fah
9600 4800
11.059 -6Fah
4800 4800
11.059 1
-12F4h 4800
2400 11.059
-12F4h 2400
2400 11.059
1 -24E8h
2400 1200
11.059 -24E8h
1200 1200
11.059 1
-48D0h 1200
2.5.4 Standar RS 232