L. Port Serial
Mikrocontroler AT89X51 telah dilengkapi perangkat komunikasi serial. Untuk mengaktifkan dan mengkofigurasikannya, pemrogram harus mengakses
register SCON dan bit SMOD bit ke 7 pada register PCON. 1.
Mode 0 Bekerja sebagai sarana komunikasi data seri sinkron, data seri dikirim dan
diterima melalui kaki RxD, sedangkan kaki TxD dapat dipakai untuk menyalurkan clock yang diperlukan komunikasi data sinkron. Data ditransmisikan per 8 bit
dengan kecepatan transmisi databaud rate tetap sebesar ½ frekuensi kerja AT 89X51.
2. Mode 1
Mode 1 dan 2 mode berikutnya merupakan sarana komunikasi seri asinkron. Data seri dikirim melalui kaki TxD dan diterima kaki RxD. Data ditransmisikan per 10
bit yang terdiri atas 1 bit start ’0’, 8 bit data, dan 1 bit stop ’1’. Kecepatan transmisi data baud rate ditentukan lewat timmer 1 yang bisa diatur untuk
berbagai kaecepatan. 3.
Mode 2 Data seri dikirim melalui kaki TxD dan diterima dari kaki RxD. Data
ditransmisikan per 11 bit, terdiri atas 1 bit start ’0’, 8 bit data, 1 bit data tambahan bit ke-9, dan 1 bit stop ’1’. Kecepatan transmisikan data baud rate
hanya dapat dipilih 132 atau 164 frekuensi AT89X51. 4.
Mode 3
23
Data seri dikirim melalui kaki TxD dan diterima dari kaki RxD. Data ditransmisikan per 11 bit pula. Sesungguhnya, mode 2 dan mode 3 sama persis.
Perbedaannya adalah kecepatan transmisi data baud rate mode 3 ditentukan lewat timmer 1, yang bisa diatur untuk berbagai kecepatan, persis sama dengan
mode 1. Fasilitas Timer Counter
Alamat T2CON = 0C8H nilai reset = 0000 000B
Bit addressable
TF2 EXF2 RCL:K
TCLK EXEN TR2 CT2
CPRC2 7 6 5 4 3 2 1 0
Tabel 2. T2 CON Timer Counter 2 Control Register
Simbol Fungsi TF2
Timer2 overflow flag: aktif jika timer 2 overflow dan harus di-reset melalui softwere. TF 2 tidak akan set jika RCLK atau TCLK = 1
EXF2 Timer2 external flag akan set jika ada transisi negative pada T2EX
dan EXEN = 1. Jika interupsi timer2 diaktifkan, maka EXF2 =1 akan menyebabkan CPU menjalankan rutin interupsi. EXF2 harus
di-clear secara software. RCLK
Receive clock enable. Jika set, maka akan menyebabkan serial port menggunakan pulsa overflow timer2 sebagai sumberclock
24
penerimannya pada mode 1dan 3. Jika tidak, maka serial port menggunakan timer 1.
TCLK Transmit clock enable. Jika set, maka akan menyebabkan port serial
menggunakan pulsa overflow timer2 sebagai sumber clock pengirimannya pada mode 1 dan 3. Jika tidak, maka port serial
menggunakan timer 1. EXEN2 Timer2 external enable. Jika set, maka memperbolehkan capture
atau reload sebagai hasil transsi negatif pada pin T2EX jika timer2 tidak di gunakan sebagai sumber clock di port serial.
TR2 Start stop kontrol untuk timer2, TR2=1 start timer
CT2 Pilihan TimerCounter pada timer2. CT2=0 sebagai fungsi timer,
sedangkan CT2=1 sebagai external counter aktif sis rendah. CP RC2 Pilihan Capture Reload. CP RC2 =1 menyebabkan capture terjadi
jika ada transisi negatif di T2EX jika EXEN 2=1. Timer2 adalah Timer Counter 16 bit yang dapat beroperasi sebagai timer
maupun counter. Pemilihan mode Counter Timer dengan mengatur bit C T2 pada register T2CON. Timer 2 mempunyai tiga mode operasi, yaitu : Capture,
Reload up down counting, dan baud rate generator. Peilihan modenya dengan mengatur Register T2 CON pada table dibawah ini.
25
Tabel 3. Pemilihan Mode Timer2 RCLK+TCLK CP
RL2 TR2
Mode 0 0 1
16 bit
auto-reload 0 1 1
16 bit
capture 1 X 1
Baud rate
generator X X 0
Off
M. Light Dependent Resistor LDR