Baud Rate Serial Pada Mikrokontroller AT89S51

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