| Author | Mensahe |
|---|
eddy12345
Joined: 22 Enero 2008 Posts: 4 Lokasyon: nagkakaisa kaharian
| Pebrero 14, 2008 8:24 pag-unawa timers sa PIC16F84 | | |
|
| Hi guys,
Mayroon akong problema sa sinusubukan na gumawa ng isang counter na maaaring hawakan ng isang malawak na hanay ng panahon. Ipagpapalagay na nakatanggap na ang aking prescaler ay 4 at ako mov 231 sa TMR0
ako makakuha ng 4 (256-231) sa amin = 100uS
at sa bawat oras na ito overflows, i taasan ang halaga ng isang counter. Sa kasong ito aabot ito 100uS para sa bawat count (hanggang sa pinakamataas na halaga ay naabot, na kung saan ay 125).
Paano ako makagawa ng isang counter na maaaring hawakan halaga sa pagitan ng 1-5,000? Gusto ko ito sa magiging paraan na dahil ako ay makabuo ng isang set ng mga oras ng antala para sa output:
1) 0mS para sa 600 <count <5000 2) 4mS para sa mga 0 <count <75 3) tumawag sa halaga ng table para sa mga pagkaantala 75 <count <600 4) i-restart ang programa count> 5000 |
|
| Bumalik sa tuktok | |
 |
Google AdSense

| Pebrero 14, 2008 8:24 Patalastas | | |
|
|
|
|
| Bumalik sa tuktok | |
 |
adidav
Joined: 19 Abril 2006 Posts: 15 Nakatulong: 1 Lokasyon: Romania
| Pebrero 14, 2008 11:40 Re: pag-unawa timers sa PIC16F84 | | |
|
| Hi eddy12345,
Huwag mo gamitin ang timer1. Ay isang 16bit timer at maaari kang magkaroon ng panahon mula sa ilang hanggang sa amin ms.
Halimbawa: Fquartz = 4MHz, Prescaler = 2
para sa TMR1 = 0 ang oras ay 131.07ms para sa TMR1 = 65,500 ang oras ay 70us
Ang kalkulasyon ay ginawa gamit ang formula: panahon = ((Fquartz * Prescaler) / 4) * (65535 - TMR1), ang resulta ay sa amin.
Mga pagbati, ADi |
|
| Bumalik sa tuktok | |
 |