Anda di halaman 1dari 1

kita ingin membuat timer overflow 1 detik = 1000 ms

Crystal = 16 MHz.
Artinya 16 Juta counting per detik
sehingga 1 counting = 1/16000000 = 0,0626 usec (mikrcosecond)

Masalahnya timer1 hanya 16Bit , yang maksimal menampung 65535.


65535 count = 65535 x 0,0625 usec
= 4095 usec

Prescaling 256
setiap 256 counting akan menaikkan nilai 1
pada angka timer1
65535 pada timer1 = 4095 usec x 256
= 1.048.560 / 1.000.000 = 1,05 Sec

-----------------------------------------------------------------------------------
-----------------
untuk mengubah 1,05 sec menjadi 1,00 Sec
berikan nilai awal pada TCNT

TCNT = 0;
..
TCNT = 65535;

Anda mungkin juga menyukai