Timer có nhiều kiểu chia tần, dùng chia trước và sau (prescale và postscale)
là chia trước và chia sau, có nhiều cách đặt tỉ lệ cho Timer từ 1:1 - 1:256 tức là cách chia này giúp cho ta nhận được xung kích vào Timer sẽ được chậm đi n lần ( 1:n ) so với 1Tcy (Fosc/4), và như vậy ta sẽ được xung kich chậm hơn:
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_4); // 4Mhz => dùng dao động nội, chế độ prescal 1:4 => clock cho Timer0 la Fosc/4/4 = Fosc/16.
Khi này ta có Fosc/4 => Tcy = 1us. Ttimer0 = Fosc/16 => 4us
Timer0 tràn 8 bit => 4x8bit = 1024us.
8 bit có 256 trạng thái chứ không phải 255 trạng thái, do đó x256,
Còn cách thứ 2 Postscale (Only Timer2) thì nó sẽ đếm số lần tràn của Timer2,
Nghĩa là
1:2 - 2 làn tràn cho ra 1 lần xung .....
1:16 - 16 làn Timer2 tràn
giả sử Áp dụng với Timer2 thay Timer0 ở trên và với postscale 1:8 ta sẽ thu được đầu ra là : 4x256x8 = 8192 us
__________________
Hãy chung sức vì nền Điện Tử Viêt Nam...! Sản Phẩm thương hiệu Việt "Made in Viet Nam"
Nguyen Van Dung - Nguyễn Văn Dũng. Mobile : (+84) 97 329 1368
Nick name : VanDungEvn ( Yahoo + Skype )
Tư vấn & thiết kế điện tử + Làm mạch in + Hoàn thiện sản phẩm điện tử. Mạch nạp 89-PIC-AVR.
Email: vandungevn@gmail.com Website: www.dientuphuongdung.com
Xóm Mới - Nguyên Xá - Minh Khai - Từ Liêm - Hà Nôi - Viet Nam.
|