1 / 10

Operasi TIMER/COUNTER

Operasi TIMER/COUNTER MCS-51 memp. dua buah timer yaitu Timer/Counter 0 dan Timer/Counter 1 yang keduanya dapat berfungsi sebagai timer atau counter dan dapat diatur melalui perangkat lunak.

corin
Download Presentation

Operasi TIMER/COUNTER

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Operasi TIMER/COUNTER MCS-51 memp. dua buah timer yaitu Timer/Counter 0 dan Timer/Counter 1 yang keduanya dapat berfungsi sebagai timer atau counter dan dapat diatur melalui perangkat lunak. Sebagai Timer memp. sumber clock dengan frekwensi tertentu yang sdh pasti ( secara kontinyu), sedangkan jika sbg counter mendapat sumber clock dari pulsa yang akan dihitung.

  2. Timer/pewaktu digunakan untuk aplikasi menghitung lamanya suatu kejadian Counter/penghitung digunakan untuk aplikasi menghitung jumlah kejadian dalam periode tertentu

  3. Kedua Timer/Counter pada MCS-51 masing-masing mempunyai 16 bit counter yang mampu untuk diatur keaktifannya maupun mode operasinya, direset dan diset dengan nilai tertentu.

  4. Apabila Timer/Counter diaktifkan pada frekwensi kerja mikrokontroler 12 MHz, maka Timer/Counter akan melakukan perhitungan waktu sekali setiap 1 mikrodetik ( 1 uS ) secara independen dan tidak tergantung daripada pelaksanaan suatu instruksi.

  5. MCS-51 mempunyai enam buah Special Function Register yang dapat digunakan untuk mengatur fungsi Timer yaitu: TMOD, TH0, TL0, TH1, TL1 dan TCON • Timer Mode Register ( TMOD ) Register TMOD berupa register 8 bit yang berlokasi di 89H Tidak dapat dialamati secara bit T I M E R 1 T I M E R 0 89H Gate : Timer akan berjalan jika bit ini di set dan INT0 ( Timer 0 ) dan INT1 ( Timer 1 ) berkondisi high ( 1) C/T : 1 = Counter 0 = Timer M1 & M0 : untuk memilih mode timer

  6. 2. Register THx dan TLx Timer 0 dan Timer 1 masing-masing terdiri atas 16 bit timer yang tersimpan dalam 2 buah regiater yaitu THx untuk Timer High Byte dan TLx untuk Timer Low Byte. TH0 : Timer 0 High Byte berlokasi di 8AH TL0 : Timer 0 Low Byte berlokasi di 8BH TH1 : Timer 1 High Byte berlokasi di 8CH TL1 : Timer 1 Low Byte berlokasi di 8DH

  7. 3. Timer Control Register ( TCON ) Register TCON mempunyai 4 bit yg berhubungan langsung dengan Timer yaitu : TCON.4 , TCON.5 , TCON.6 , TCON.7 Sedangkan 4 bit yang lain berhubungan dengan interrupt yaitu : TCON.3 , TCON.2 , TCON.1 , TCON.0 Dapat diakses secara bit ( bit addressable ) Register T I M E R Register Interrupt 88H TCON.7 (TF1) : Timer 1 Overflag yang akan diset jika timer overflow Bit ini dapat di-clear oleh software atau hardware. TCON.6 (TR1): 1 = Timer 1 Aktif 0 = Timer 1 Nonaktif TCON.5 (TF0) : Timer 1 Overflag yang akan diset jika timer overflow Bit ini dapat di-clear oleh software atau hardware. TCON.4 (TR0) : 1 = Timer 0 Aktif 0 = Timer 0 Nonaktif

  8. Mode Timer Timer MCS-51 mempunyai 4 buah mode kerja timer dimana setiap mode timer mempunyai masing-masing fungsi. Penentuan mode kerja dari timer dilakukan dengan inisialisasi pada Register TMOD pada bit pemilih mode yaitu bit M1 dan bit M0 Kombinasi M0 dan M1 adalah sebagai berikut: M1 M0 Mode Operasi 0 0 0 Timer 13 bit ( THx=8 bit , TLx= 5 bit ) 0 1 1 T/C 16 bit ( THx=8 bit , TLx= 8 bit ) 1 0 2 Timer auto reload 8 bit ( pengisian otomatis ) 1 1 3 TL0 adalah T/C 8 bit yang dikontrol oleh kontrol bit Timer 0 TH0 adalah Timer yang dikontrol oleh kontrol bit Timer 1

  9. Periode waktu Timer/Counter Secara umum Periode waktu Timer/Counter ditentukan oleh persaman berikut: a. Sebagai T/C 8 bit • T = (255 -TLx) * 1 siklus mesin Dimana TLx adalah isi register TL0 atau TL1 b. Sebagai T/C 16 bit • T = (65535 - THxTLx) * 1 siklus mesin Dimana : THx adalah isi register TH0 atau TH1 TLx adalah isi register TL0 atau TL1

  10. Contoh Delay Hardware 1 detik dengan menggunakan Timer Mode 1 dengan output berupa ON/OFF LED yg dihubungkan dng P1.0 ORG 4000H LJMP START HERE: JNB TF1,HERE ; DJNZ R0,ULANG DELAY_1_DTK: RET MOV R0,#20 ; ULANG: START: CLR TF1 CPL P1.0 CLR TR1 LCALL DELAY_1_DTK MOV TMOD,#10H LJMP START MOV TH1,#3CH END MOV TL1,#0AFH SETB TR1

More Related