PDA

View Full Version : Hỏi về chu kỳ máy và chu kỳ đồng hồ


chiene
20-05-2009, 01:59 AM
Các anh cho em hỏi câu này với:
Em đang làm về timer thì thấy có 1 chỗ không hiểu dc: tại làm sao mà mỗi chu kỳ xung kích của timer lại = 4 chu kỳ clock?
Ví dụ thạch anh 20MHz nếu khai báo CCS là:
setup_timer_1(T1_INTERNAL | T1_DIV_BY_4);
Thì sẽ mất khoảng 19 lần tràn timer 1 để được thời gian 1 giây.
Em xin cảm ơn!

hopeman
20-05-2009, 11:18 AM
thực ra thì tỗi nghĩ là câu hỏi của bạn chưa thực sự rõ ràng, bạn nên cho biết bạn dùng chip nào, khai báo dao động như thế nào. vì bạn dùng ccs nên tôi giải thiết là bạn đang dùng họ 18F. thế thì có 2 thứ sau :
T1_internal tức là bạn khai báo timer1 clock source là = Fosc/4
T1_DIV_BY_4 tức là bạn khai báo bộ chia trước của timer1 clock cũng là 4...
còn nếu tràn đến 1s thì bạn phải cho biết là bạn set giá trị của timer như thế nào mà ra như vậy, ko thì chịu

hopeman
20-05-2009, 11:18 AM
thực ra thì tỗi nghĩ là câu hỏi của bạn chưa thực sự rõ ràng, bạn nên cho biết bạn dùng chip nào, khai báo dao động như thế nào. vì bạn dùng ccs nên tôi giải thiết là bạn đang dùng họ 18F. thế thì có 2 thứ sau :
T1_internal tức là bạn khai báo timer1 clock source là = Fosc/4
T1_DIV_BY_4 tức là bạn khai báo bộ chia trước của timer1 clock cũng là 4...
còn nếu tràn đến 1s thì bạn phải cho biết là bạn set giá trị của timer như thế nào mà ra như vậy, ko thì chịu

chiene
20-05-2009, 10:05 PM
Em dùng chip 16F877A, thạch anh 20MHz. Em mới học PIC nên cũng ko hiểu lắm các thuật ngữ mà bác đưa ra.
Ý em hỏi là thế này ạ: nếu với dòng khai báo như trên của em, thì cái xung kích của timer sẽ có tần số là: 20000000/(4*4) xấp xỉ 19. Tại sao lại phải chia 4 hai lần thế ạ? Hình như mỗi chu kỳ máy của con PIC thì bằng 4 chu kỳ clock hay sao ấy ạ!