![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Apr 2009
Bài gửi: 1
: |
Theo mình hiều thì cách tính thời gian tràn và ngắt của timer2 ko như timer0 và timer1.
TD trên của phandinh: XTAL = 4 Mhz, 1 ckm = 1 us setup_timer_2(t2_div_by_16,6,10); // 250 x 16 x 10 = 40.000 us Theo mình thì, timer2 sẽ tăng mỗi 4/(4*10^6)*16=16us, thời gian tràn sẽ là (6+1)*16us=112us, thời gian ngắt 112us*10=1120us!!! |
![]() |
![]() |
![]() |
#2 |
Nhập môn đệ tử
Tham gia ngày: Oct 2009
Bài gửi: 1
: |
chính xác là như thế.timer2 ngắt là sau 1,12ms.
|
![]() |
![]() |
![]() |
#3 | |
Đệ tử 1 túi
Tham gia ngày: Apr 2010
Bài gửi: 16
: |
Trích:
setup_timer_2(t2_div_by_16,6,10); // 250 x 16 x 10 = 40.000 us Em thấy cái này đúng rồi mà. Còn cái bên dưới này: Theo mình thì, timer2 sẽ tăng mỗi 4/(4*10^6)*16=16us, thời gian tràn sẽ là (6+1)*16us=112us, thời gian ngắt 112us*10=1120us!!! thì sao e hok hiểu, ai giải thích giúp e với. |
|
![]() |
![]() |
![]() |
#4 | |
Đệ tử 1 túi
Tham gia ngày: Apr 2010
Bài gửi: 16
: |
Trích:
|
|
![]() |
![]() |
![]() |
#5 |
Nhập môn đệ tử
Tham gia ngày: Aug 2011
Bài gửi: 1
: |
Đến giờ chắc Alycuong đã hiểu vấn đề timer2 rồi nhưng mình cũng xin viết vài dòng để kết luôn.
Giải thích thứ 2 theo mình là đúng. Cách tính như sau: - T2_div_by_16 : 1us x 16 = 16us - timer tăng lên mỗi 16us - 6: 16us x(6+1) số lần = 112 - cờ tràn sau mỗi 112us - 10: 10 x 112 = 1120us - ngắt sau mỗi 1120us Trong tài tiệu CCS giải thích rõ lắm |
![]() |
![]() |
![]() |
|
|