ATMega a timer2 s OC2
Rosko, Peter
Peter.Rosko@siemens.com
Středa Duben 23 09:44:44 CEST 2008
ahoj wek,
myslim, ze nemas pravdu, Richard sice nechce PWM ale v jeho pripade sa
to pomocou PWM modu da spravit
dolu je povodny text
timer2 je nastaveny tak, ze od 0 do OCR2 dava jednotku, od OCR2 do 255
dava 0
pri externom preruseni sa timer2 vynuluje, tym padom je na vystupe 1
ak ext prerusenie nastane pred OCR2, tak sa znovu timer vynuluje,
zostava tam 1
ak ext prerusenie nenastane pred OCR2, tak sa vystup da do 0
ak nepride ziadne prerusenie, tak sa vyvola overflow
hmm?
p.rosko
> Mnojo, lenze ak tomu dobre rozumiem, Riso nechce PWM, ale
> chce z toho spravit akysi retriggerable monostabil: aby pri
> prichode hrany na vstup sa vystup nastavil na jednotku a ak
> pride dalsi do nejakeho casu, tak ta jednicka tam zostane,
> inak to padne na nulu.
>
> Lenze presne na toto hardware v ATM nie je (alebo o nom
> neviem). Takze sa nezaobides bez nejakeho programovania;
> maximalne tak mozes usetrit to prerusenie od output compare
> (ak tam nechces robit aj nieco ine - predpokladam, ze to co
> tam je teraz, su pozostatky ladenia). Dalo by sa potom v tom
> externom preruseni nahodit OC tak, ze sa prestavi COM20/COM21
> na "set OC on compare match" a "rucne" sa vyvola output
> compare udalost nastavenim FOC2 (nie je mi jasny ten opis,
> mozno to treba robit na dva kroky, najprv nastavit
> COM20/COM21 a az potom FOC2 - treba vyskusat).
>
> wek
>
Moj zamer je takyto:
pri preruseni od INT4 sa na PortB.7 nastavi 1, timer2 sa vynuluje a po
urcitom case danom OCR2 sa PB.7 preklopi do 0.
Prerusenie je externe vyvolane kazdych 10 ms. Ak nenastane, tak timer2
pretecie a vyvola sa prerusenie SIG_OVERFLOW2
Další informace o konferenci Hw-list