MODE OPERASI TIMER/COUNTER. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

dokumen-dokumen yang mirip
REGISTER-REGISTER Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

TIMER DAN COUNTER MIKROKONTROLER ATMEL

Timer Counter. D3 Telekomunikasi.

PERTEMUAN TIMER & COUNTER MIKROKONTROLER 89C51

Mikrokontroler 89C51 Bagian II :

TERJADI INTERRUPT MELAYANI INTERRUPT KEMBALI MENERUSKAN PROGRAM YANG TERHENTI PROGRAM YANG SEDANG BERJALAN. Gambar 4.1 Interrupt

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

MAKALAH. Timer atau Counter 0 dan 1. Oleh : Rizky Dwi N ( ) Satrio Teguh Yulianto ( ) D3 TEKNIK ELEKTRO JURUSAN TEKNIK ELEKTRO

Pertemuan 10 Arsitektur Mikrokontroler 8051

SISTEM INTERUPSI MIKROKONTROLER ATMEL

Alarm Pintu, Harap Pintu Tutup Kembali, Jangan Buka Pintu Lama-lama versi 2

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

4. Port Input/Output Mikrokontroler MCS-51

Percobaan 5. TIMER/COUNTER Menggunakan DT-51 MinSys

PERTEMUAN INTERUPSI MIKROKONTROLER 89C51

Memprogram Interupsi AT89S51

Perancangan Serial Stepper

PANDUAN DASAR MIKROKONTROLER KELUARGA MCS-51

PERCOBAAN 9 T I M E R/ COUNTER

MIKROPENGENDALI C TEMU 4 AVR TIMER AND COUNTER. Oleh : Danny Kurnianto,S.T.,M.Eng Sekolah Tinggi Teknologi Telematika Telkom

BAB III KEGIATAN PENELITIAN TERAPAN

BAB II TEORI DASAR PENUNJANG

PENGANTAR MIKROKOMPUTER PAPAN TUNGGAL (SINGLE CHIP) Oleh : Sumarna, Jurdik Fisika, FMIPA UNY

PERCOBAAN 11 PULSE WIDHT MODULATION

Laporan Modul 2, EL3006 Timer/Counter dan Interrupt Jongguran Sondang DN ( )/ Kelompok 48/ Jumat, 14 Maret 2008 Asisten: Virgilius

Gambar 1.1. Diagram blok mikrokontroller 8051

Percobaan 6. SERIAL INTERFACE Menggunakan DT-51 MinSys

PERCOBAAN 2 TRANSFER DATA. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

BAB V HASIL DAN PEMBAHASAN Perangkat Keras (Hardware)

Memprogram Timer Counter

BAB II LANDASAN TEORI

Percobaan 8 INTERFACE MIKROKONTROLER DAN KOMPUTER SECARA SERIAL

Gambar 3.1 Blok Diagram Port Serial RXD (P3.0) D SHIFT REGISTER. Clk. SBUF Receive Buffer Register (read only)

Apa itu timer/counter?

ORGANISASI MEMORI MIKROKONTROLER MCS-51. Yoyo Somantri dan Erik Haritman Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

Wireless Infrared Printer dengan DST-51 (Komunikasi Infra Merah dengan DST-51)

I. Pendahuluan. Mikroprosesor CPU. Gambar 1. Perbedaan Mikrokontroler dengan Mikroprosesor

Lab Elektronika Industri Mikrokontroler - 1 AT89C1051

AT89S52 8kByte In-System Programmable Mikrokontroler

Percobaan 7 REGISTER (PENCATAT) Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

OPERATION SYSTEM. Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088

Percobaan 5 PENGENALAN MIKROKONTROLER 8051

BAB II DASAR TEORI MIKROKONTROLER II (PENERIMA DATA) MEDIA PENGIRIMAN DATA. Gambar 2.1 Blok Pengiriman Data Mikrokontroler I ke Mikrokontroler II

Arsitektur Mikrokontroler

PERCOBAAN 4 INSTRUKSI PERCABANGAN. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

MODUL 1 Pengenalan C untuk 8051 (Compile dan Download)

CABLE LAN TESTER DENGAN TAMPILAN LCD TUGAS AKHIR DEMI SYAPUTRI

PERCOBAAN 15 I N T E R U P S I

Gambar Komunikasi serial dengan komputer

KOMPONEN INTERFACING. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

ABSTRAK. rumah pelanggan listrik. Fungsi dari alat ini adalah menghitung seberapa besar

ORGANISASI KOMPUTER DASAR

BAB II TINJAUAN PUSTAKA

DESKRIPSI SINGKAT INSTRUKSI-INSTRUKSI PADA AT89S51

Percobaan 6 PENCACAH (COUNTER) Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

TAMPILKAN NADA DTMF DAN DERING TELEPHONE OLEH MODUL DF-88 DAN MODUL DST-51 PADA LCD

Timer/Counter. AVR ATMega 8535

Hal-hal yang perlu dilakukan CPU adalah : 1. Fetch Instruction = mengambil instruksi 2. Interpret Instruction = Menterjemahkan instruksi 3.

BAB III PERANCANGAN ALAT

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

BAB III PERENCANAAN DAN REALISASI

Mikrokontroler AVR. Hendawan Soebhakti 2009

BAB IV PENGUJIAN DAN ANALISA. Pengujian terhadap sistem yang telah dibuat dilakukan untuk mengetahui

PERCOBAAN 3 INSTRUKSI ARITMATIK DAN LOGIK. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

TUGAS AKHIR PEMPROGRAMAN SISTEM ROTASI GARASI MOBIL BERBASIS MIKRO KONTROLER

DAFTAR ISI. ABSTRAK... i KATA PENGANTAR... ii DAFTAR ISI... iv DAFTAR GAMBAR... vii DAFTAR TABEL... x DAFTAR LAMPIRAN... xi

Lampiran 1. Spesifikasi mikrokontroler AT89S51 (Atmel Datasheet) Deskripsi pin

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA

PENGHITUNG WAKTU DENGAN TAMPILAN LCD M1632 OLEH DST-51

=== PENCACAH dan REGISTER ===

STRUKTUR CPU. Arsitektur Komputer

MIKROKONTROLER AT89S52

Tabel 1. Karakteristik IC TTL dan CMOS

Pengendalian 8 buah Motor oleh DST-51

Praktek 1. Interfacing Layer. 1. Tujuan : 2. Alat-alat 1 Unit PC atau notebook Koneksi internet

BAB II LANDASAN TEORI

SISTEM MONITORING SUHU MENGGUNAKAN MIKROKONTROLLER AT89S51 DENGAN TAMPILAN DI PC

PERANCANGAN DAN PEMBUATAN SISTEM PENGENDALIAN LEVEL AIR DAN SUHU MENGGUNAKAN DTMF BERBASIS MIKROKONTROLLER AT89S51

BAB VIII REGISTER DAN COUNTER

COUNTER TIMER CIRCUIT (CTC) Z80

PERANCANGAN DAN PEMBUATAN ALAT PEMANTAU KEADAAN RUANGAN JARAK JAUH BERBASIS MIKROKONTROLER AT89S52 MENGGUNAKAN SMARTPHONE

PERCOBAAN 5 STACK DAN SUBROUTINE. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

Bagian 2 STRUKTUR CPU

Wireless Infrared Printer dengan DST-51 (Pengambilan Data dari Standard Parallel Port)

BAB III PERANCANGAN ALAT DAN PROGRAM MIKROKONTROLER. program pada software Code Vision AVR dan penanaman listing program pada

KENDALI LENGAN ROBOT MENGGUNAKAN MIKROKONTROLLER AT89S51

Oleh: 1. Singgih Gunawan Setyadi ( ) 2. Handung Kusjayanto ( ) 3. Wahyu Isnawan ( )

TI2043 Organisasi dan Arsitektur Komputer Tugas 2 Interrupt Driven I/O

SINYAL INTERUPSI. 1. Latar Belakang

TIMER DAN COUNTER. ERI SETIADI NUGRAHA, S.Pd. 2012

Pendahuluan Mikrokontroler 8051

BAB II TINJAUAN TEORITIS. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

PERTEMUAN 12 PENCACAH

Teknik Pemrograman PLC

PERTEMUAN 12 PENCACAH

Simple As Possible (SAP) - 1. Abdul Syukur

Arithmatika Komputer. Pertemuan 3

Akuisasi data dengan remote host AT89s51 melalui serial RS232

Transkripsi:

MODE OPERASI TIMER/COUNTER Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : sumarna@uny.ac.id 1. Mode 0 : Timer/Counter 13 bit. Gambar berikut menunjukkan konfigurasi operasi timer/counter mode 0. Salah satu timer di dalam mode 0 merupakan counter 8 bit dengan prescaler dibagi 32. Register 13 bit ini terdiri dari 8 bit pada seluruh dan 5 bit rendah pada. Sedangkan 3 bit tinggi pada tidak ditetapkan dan harus diabaikan. (5 bit) IN Gambar : Timer/Counter Mode 0 Counter 13 bit dapat mencacah naik hingga 2 13 = 8192, dari 0 sanpai dengan 8191. Timer/Counter 8051 merupakan pencacah naik yang menambah 1 (increment) nilainya dari nilai awal (initial). Nilai yang telah dicacah sama dengan nilai cacahan maksimum dikurangi nilai awal. Sebagai contoh, jika sejumlah 5000 yang harus dicacah, nilai awal dari timer/counter dalam mode 0 harus di-preset pada : 8192 5000 = 3192 Dalam hal demikian, counter tersebut mulai mencacah dari nilai preset 3192 dan terjadi overflow setelah 5000 pulsa detak. Overflow akan men-set bit yang sesuai pada register TCON dan counter tersebut kembali ke nol. Jika diinginkan pencacahan ulang dari nilai preset sebelumnya, nilai preset tersebut harus diisikan ulang dengan software. Flag overflow di-clear oleh hardware ketika CPU mengeksekusi routine pelayanan interupsi dari timer/counter. Untuk mem-preset nilai cacahan awal kepada dan, nilai preset dalam biner harus dihitung dan 5 bit rendah diisikan ke dalam serta 8 bit tinggi ke dalam. Sebagai contoh, untuk cacahan 5000, nilai awalnya dihitung dengan : 8192 5000 = 3192 3192D = 0110001111000B 1

Sehingga : = 11000 = 01100011 Karena merupakan prescaler terbagi 32 dalam mode 0, nilai preset dari dan dapat dihitung secara langsung dengan persamaan berikut : Atau : = Quotient dari nilai cacahan awal dibagi 32 = Remainder dari nilai cacahan awal dibagi 32 = nilai cacahan awal / 32 = nilai cacahan awal.mod. 32 Di mana / merepresentasikan pembagian integer, dan MOD merepresentasikan sisanya (remainder). Oleh karena itu, contoh di atas dapat dicapai dengan instruksi berikut : MOV TL0,#(8192 5000).MOD.32 MOV TH0,#(8192 5000)/32 Assembler tersebut akan menghitung dan mengisikan hasilnya ke dalam TH0 dan TL0. Ingat bahwa titik desimal (.) harus ditambahkan sebelum dan sesudah MOD. Sebagai contoh, instruksi berikut : MOV TL1,#(8192 2500).MOD.32 MOV TH1,#(8192 2500)/32 Men-set counter 1 untuk mencacah 2500 pulsa. 2. Mode 1 : Counter 16 bit. Operasi mode 1 adalah sama dengan mode 0, kecuali bahwa register timer-nya akan berjalan untuk 16 bit seluruhnya. Counter 16 bit tersebut dapat mencacah naik hingga 2 16 = 65536, 0 sampai dengan 65535. Sebagaimana dijelaskan sebelumnya, nilai preset dari dan dihitung sebagai : = nilai cacahan awal MOD 256 = nilai cacahan awal / 256 Dalam kode assembly, nilai awal dari counter 0 dapat di-preset dengan : MOV TL0,#(65536 5000).MOD.256 MOV TH0,#(65536 5000)/256 Operator > dan < adalah berguna dalam penghitungan nilai awal. Operator > dan < digunakan untuk mendapatkan berturut-turut byte tinggi dan byte rendah dari counter 16 bit. Instruksi di atas dapat dituliskan sebagai : 2

MOV TL0,#<(65536 5000) MOV TH0,#>(65536 5000) Konfigurasi Timer/Counter mode 1 ditunjukkan pada gambar berikut : Gambar : Timer/Counter Mode 1 3. Mode 2 : Counter 8 bit Isi-Ulang Otomatis Gambar berikut menunjukkan konfigurasi Timer/Counter pada mode 2. Mode 2 mengkonfigurasi register timer sebagai counter 8 bit () dengan isi-ulang otomatis. Nilai cacahan maksimumnya 2 8 = 256, 0 sampai dengan 255. Overflow dari tidak hanya men-set, tetapi juga mengisi ulang dengan isi dari yang di-preset dengan software. Pengisian ulang meninggalkan tidak berubah. Operasi mode 2 adalah sama untuk timer/counter 0 dan 1. Isi Ulang IN Gambar : Timer/Counter Mode 2 Dalam mode 2, nilai awal dihitung dengan Nilai awal = 256 nilai cacahan 3

Sebagi contoh, suatu instruksi MOV TH1,#(256 100) menentukan timer 1 untuk mencacah 100 pulsa. Karena nilai dan di-reset sesudah power 8051 hidup atau reset software, maka nilai cacahan awal dari YHX dan harus di-preset secara awal (initially). 4. Mode 3 : Dua Counter 8 bit Individual Konfigurasi operasi timer/counter pada mode 3 ditunjukkan pada gambar berikut. Timer 1 dalam mode 3 secara langsung mempertahankan cacahannya. Akibatnya adalah sama dengan men-set TR1 = 0. Timer 0 dalam mode 3 membangun TL0 dan TH0 sebagai dua counter yang terpisah. TL0 menggunakan kendali bit timer 0, yakni C/T,, TR0, INT 0, dan TF0. TH0 dikunci ke dalam fungsi timer (siklus mesin pencacahan) dan mengambil alih kegunaan dari TR1 dan TF1 dari timer 1. Kemudian, TH0 sekarang mengendalikan interupsi timer 1. IN TR1 Gambar : Timer/Counter Mode 3 Nilai cacahan awal TH0 dan TL0 dihitung dengan : TH0 = 256 nilai cacahan TL0 = 256 nilai cacahan Sebagai contoh, instruksi berikut menunjukkan TL0 timer 0 mencacah 50 pulsa dan TH0 mencacah 100 pulsa. MOV TL0,#(250 50) MOV TH0,#(256 100) 4

Mode 3 disediakan untuk keperluan aplikasi sebuah timer atau counter 8 bit tambahan (ekxtra). Dengan timer 0 dalam mode 3, 8051 dapat terlihat seperti memiliki 3 timer/counter, dan 8052 seperti memiliki 4 timer/counter. Ketika timer 0 dalam mode 3, timer 1 dapat dihidupkan atau dimatikan dengan mensaklarnya keluar dan masuk mode 3 sendiri, atau dapat tetap digunakan dengan port serial sebagai generator baud rate, atau dalam kenyataannya, dalam banyak aplikasi yang tidak memerlukan interupsi. Sebagai terlihat dapam gambar, instruksi SETB TR1 men-start TH0 dan instruksi CLR TR1 menghentikan TH0. Untuk menggunakan Timer/Counter, ikuti prosedur berikut : Dalam program utama : 1. Tetapkan register IE untuk meng-enable interupsi timer/counter. 2. Tetapkan register IP untuk menentukan tingkat prioritas interupsi timer/counter (jika diperlukan). 3. Tetapkan register TMOD untuk menentukan mode operasi dan kendali jalan (run control). 4. Men-set nilai awal dari dan. 5. Men-strat timer/counter (SETB ). Dalam routine pelayanan interupsi : 1. Hentikan (stop) timer/counter. 2. Proseslah suatu tugas dari routine pelayanan interupsi. 3. Isi ulang (reload) nilai awal dari dan. 4. Start kembali (re-start) timer/counter. 5. Kembali ke program utama. 5