Sunday, 7 December 2014

Timer/Counter Mikrokontroler

Timer/counter didalam mikrokontroler mempunyai fasilitas sebagai berikut:
  • sebanyak 2 buah timer/counter 16-bit (pada seri x51) naik (up-counter) dan dapat menghasilkan interupsi bila terjadi limpahan (overflow)
  • empat mode operasi
  • pulsa clock diperoleh dari siklus kerja CPU (frekuensi kristal / 12) atau berasala dari masukan luar (maksimum setengah kecepatan CPU)
Konsep dasar sebuah timer/counter
Konsep dasar sebuah timer/counter
Apabila pencacah mendapatkan sumber clock secara internal maka disebut timer, bila sumber clock berasal dari luar maka disebut counter.

Register yang berhubungan dengan timer/counter adalah:
  • Timer/Counter Mode Register (TMOD)
  • Timer/Counter Control Register (TCON)
  • Timer-0 High byte (THO)
  • Timer-0 Low byte (TLO)
  • Timer-1 High byte (TH1)
  • Timer-1 Low byte (TL1)
Prinsip kerja timer/counter
Prinsip kerja timer/counter


Pengenalan INTERUPSI EKSTERNAL

Penjelasan umum interupsi adalah seseperti ini. Ketika anda sedang menjelaskan sesuatu didepan kelas tiba-tiba seorang siswa mengangkat tangannya sambil berkata, "Maaf, saya masih belum mengerti bagian pertama tadi, mohon dijelaskan kembali". Kemudian Anda menjelaskan kembali bagian yang ditanyakan. Setelah selesai menjelaskan, Anda kembali lagi meneruskan materi.

Ilustrasi diatas menggambarkan proses interupsi. Perhatikan gambar di bawah. Saat mikrokontroler mengerjakan program utama, apabila ada interupsi maka mikrokontroler akan meninggalkan program utama dan mengerjakan permintaan interupsi. Setelah pekerjaan interupsi selesai, mikrokotroler akan kembali meneruskan program utama ditempat yang ditinggalkan tadi.

Ilustrasi proses interupsi
Ilustrasi proses interupsi
Kejadian interupsi pada mikrokontroler dapat disebabkan oleh adanya kejadian eksternal, timer overflow, dan penerimaan / pengiriman data secara serial. Pada bab sepuluh ini Anda akan mencoba memanfaatkan interupsi yang disebabkan oleh kejadian eksternal atau interupsi eksternal.
Sumber interupsi pada mikrokontroler
Sumber interupsi pada mikrokontroler

Struktur program dengan interupsi

Dalam menggunakan interupsi, tentukan dahulu Anda akan menggunakan sumber interupsi yang mana. Misalnya Anda akan menggunakan sumber interupsi eksternal pertama (INT0). Maka pada vektor interupsi, seperti dijelaskan pada bab empat, Anda ketikkan instruksi berikut.

ORG 0000h            ; vektor interupsi reset
AJMP start
ORG 0003h            ; vektor interupsi eksternal pertama
AJMP ISRLINT0


Instruksi diatas dapat dijelaskan sebagai berikut. Apabila mikrokontroler Anda reset maka mikrokontroler akan mengambil instruksi dialamat ke-0000, tidak lain adalah instruksi untuk melompat ke label start. Pada saat program berjalan kemudian sinyal interupsi masuk ke pin yang sesuai maka mikrokontroler akan meninggalkan program yang sedang dikerjakan dan melompat kealamat 0003h yang tidak lain berisi instruksi untuk melompat ke label ISR_INT0 .

Sebelum interupsi dapat digunakan maka Anda haruslah melakukan inisialisasi atau melakukan seting terhadap register-register yang berhubungan dengan interupsi. Register-register tersebut adalah:
  •  Interrupt Enable Register (IE)
Interrupt Enable Register (IE)
  •  Interrupt Priority Register (IP)
Interrupt Priority Register (IP)
  •  Timer/Counter Control Register (TCON)
Timer/Counter Control Register (TCON)

 Semoga Dapat Membantu Kawan...!!!

Saturday, 6 December 2014

BPS versus Baud

Samakah istilah Bit Per Second (BPS) dengan baud atau baud rate? Untuk menjawab pertanyaan tersebut perhatikan gambar di bawah. Komunikasi serial yang menggunakan RS-232 atau dikenal dengan standar EIA/TIA232 mengatur komunikasi antara komputer (Data Terminal Equipment - DTE) dengan perangkat komputer tambahan (Data Circuit-Terminating Equipment - DCE). Pada banyak literatur, DCE sering diartikan dengan Data Communication Equipment yang mengacu kepada perangkat komunikasi misalnya modem. Sebenarnya DCE lebih luas dari pada modem. DCE adalah perangkat yang dapat dihubungkan ke komputer dengan standar RS232. Misalnya printer, Optical Mark Reader, Cash Register, PABX bahkan jembatan timbang.

Kebanyakan kita membicarakan masalah kecepatan antara DTE ke DCE atau DCE ke DCE. DTE ke DCE adalah kecepatan transfer data antara komputer Anda dengan modem, biasa disebut dengan terminal speed menggunakan satuan Bit Per Second (BPS). Kecepatan DTE ke DCE haruslah lebih cepat daripada kecepatan DCE ke DCE. DCE ke DCE adalah jalur antar modem, kadang disebut dengan line speed menggunakan satuan baud.
Hubungan DTE-DCE-DCE-DTE
Hubungan DTE-DCE-DCE-DTE
 Jadi bila Anda melakukan komunikasi antara dua DTE tanpa menggunakan modem, misalnya mikrokontroler ke komputer desktop makaBPS sama dengan baud.

Sebagai catatan bila Anda melakukan seting kecepatan koneksi modem pada komputer, artinya Anda mengatur kecepatan antara komputer dengan modem, bukan kecepatan antar modem.

Modem saat ini dilengkapi dengan pengkompresi data. Misalnya modem 33,6 KBPS Anda mempunyai perbandingan kompresi 1:8. Maka Anda dapat memperoleh kecepatan transfer data maksimum antara komputer dengan modem sebesar 268,8 KBPS! Tapi bila seting maksimum pada komputer Anda hanya 115 KBPS maka Anda telah kehilangan performa dari modem tersebut mengirimkan data yang telah dikompresi sebelumnya dan mengakibatkan penurunan kecepatan transfer data. Bila ini terjadi Anda dapat mematikan fungsi kompresi data. Beberapa data (misalnya berupa file) dapat dikompres lebih kecil daripada yang lain maka file yang dapat dikompresi lebih mudah secara alami akan mempunyai perbandingan kompresi yang tinggi.

Cara Menentukan Baudrate

Komunikasi serial mikrokontroler yang sering digunakan untuk berhubungan dengan peralatan lain adalah komunikasi serial pada mode 1. Pada mode 1 kecepatan transfer data atau baudrate dibangkitkan dari timer1 autoreload. Untuk mengisi register timer1 autoreload ini digunakan persamaan berikut:
Menentukan Baudrate
sehingga nilai TH1 dapat dihitung dengan persamaan berikut:
Menentukan Baudrate

Semoga Dapat Membantu Kawan...!!!