Jelaskan fungsi dan detail bit dari masing-masing register berikut ini:
a. TCNT
Register pencacah dari 0 sampai nilai maksimum yang kita tentukan. Register
TCNT ada dua yaitu TCNT0 dan TCNT1. TCNT0 adalah register untuk Timer 0 yaitu
8 bit. Sedangkan TCNT1 adalah register untuk Timer 1 yaitu 16 bit.
b. OCR
Output Compare untuk menyimpan nilai pembanding dengan nilai pada register
TCNT. Komparator 8-bit terus menerus membandingkan TCNT0 dengan Output
Compare Register (OCR0). Setiap kali TCNT0 sama dengan OCR0, komparator
memberi sinyal kecocokan.
Kecocokan akan mengatur Output Counter Flag (OCF0) pada timer cycle clock
berikutnya. Jika diaktifkan (OCIE0 = 1 dan Global Interrupt Flag dalam SREG diatur),
Output Compare Flag menghasilkan Output Compare Interrupt. Flag OCF0 secara
otomatis dihapus ketika interupsi dieksekusi. Atau, Flag OCF0 dapat dihapus oleh
software dengan logical write satu ke lokasi bit I / O-nya.
c. TCCR
Untuk pengaturan mode operasi Timer/Counter. Jadi kalau kita ingin
melakukan pengaturan Timer/Counter kita fokuskan ke register TCCRn. n adalah
nomer timer, misal jika kita ingin menggunakan Timer 0 maka yg kita atur adalah
TCCR0, Timer 1 TCCR1A dan TCCR1B.
1. Timer/Counter 0
Merupakan 8 bit timer/counter, pengaturan Timer/Counter 0 diatur oleh
TCCR0 (Timer/Counter control register 0) seperti berikut ini:
Konfigurasi Bit Clock Set bisa dilihat pada table di atas. Frekuensi pulsa
clock yang dihitung bisa sama dengan frekuensi crystal yang digunakan atau
dapat diperlambat menggunakan prescaler dengan faktor 8, 64, 256 atau 1024.
2. Timer/Counter 1
Merupakan 16-bit timer/counter sehingga terdapat perbedaan cara
pengaksesannya dengan 8-bit timer/counter. 16-bit (1 word) timer/counter
harus diakses dengan 8 bit high dan 8 bit low. Pengaturan Timer/Counter1 juga
diatur oleh register TCCR1B.
Bit 2, 1, 0 (CS22; CS21, CS20): Clock Select. Ketiga bit ini memilih sumber
clock yang akan digunakan oleh Timer/Counter 2.
d. TISMK
TIMSK (Timer/Counter Interrupt Mask Register) register ini juga berkaitan
dengan register SREG (Status Register) dan OCR (Output Compare Register).
OCIEx: Output Compare Match Interrupt Enable. Jika bit tersebut diberi
logika 1 dan bit 7 SREG (Global Interrupt Enable/ I SREG) juga
berlogika 1, maka bisa dilakukan enable interupsi Output Compare
Match Timer/Counter x.
TOIEx: Overflow Interrupt Enable. Jika diberi logika 1 dan bit bit 7
SREG (Global Interrupt Enable/ I SREG) juga berlogika 1, maka bisa
dilakukan enable interupsi Overflow Timer/Counter x.
TCIE1: Timer/Counter 1, Input Capture Interrupt Enable
e. TIFR