Gambaran timer
Clock in
enable
Clock internal
Clock eksternal
select
Timer 0
Timer 8 bit Register yang digunakan:
TCNT0 register pencacah, menampung nilai yang dicacah TCCR0 register kontrol, untuk memilih mode operasi, memilih prescaler OCR0 register untuk menentukan nilai maks pada mode operasi compare TIMSK register untuk meng-enable/disable dan memilih interupsi timer(digunakan juga di timer1 dan 2) TIFR register flag yang menandai terjadinya suatu interupsi timer (digunakan juga di timer1 dan 2)
Register TCNT0
TCCR0 bit CS
Untuk memilih sumber clock dan prescaler
Contoh soal
Buatlah sebuah tampilan pencacah naik yang ditampilkan di LED pada PORTC. Pencacah naik setiap 1 detik. Kristal yang digunakan 4 MHz. Sistem juga menampilkan variasi nyala LED pada PORTB, yang timing-nya diatur dengan delay register
Setting timer
Misalnya diinginkan menggunakan timer 0 dalam mode normal (overflow) timer dirancang overflow 0.01 detik sekali (100 Hz-biar frekuensi tidak terlalu kecil) Karena frekuensi overflow cukup rendah, gunakan prescaler 1024, jadi frekuensi xtal 4 MHz akan dibagi 1024 baru masuk ke pencacah F_pencacah=4 M/1024 = 3906.25 Hz Untuk mencapai 100 Hz harus dibagi 39 Sehingga TCNT0 harus diisi dahulu dengan nilai sebesar 0xFF 39 = 216, nilai ini juga harus diisikan ulang pada saat interupsi timer Timer 0 sudah bisa overflow tiap 0.01 detik, supaya bisa menghasilkan 1 detik, pada rutin interupsi timer dilakukan operasi increment register bantu