AVR vagy '51 idozites kerdes
hg12345
hg12345 at freemail.hu
Thu Sep 18 10:52:58 CEST 2003
Szia
HWSW Famulus <hwsw at famulus.hu> írta:
> > A TMR1 vagy 3 (16 bites) uzemmodjaban akkor szeretnem atvaltani
> > valamelyik port-ot amikor a TMR1 atfordul 0xFFFF -> 0x0000-ra, a
> > softwaret kellene a TMR1-re vagyis a rendszer orajelre
szinkronizalni,
> > es atfordulaskor pont kiadni a portra az uj erteket.
> > Ez lehetseges?
> >
> > Udv
> > HG
>
> Idozitore van megszakitas azaz interrupt.
> Erre van kitalalva.
>
> Felprogramozod a timert megszakitasos uzemmmodra es....
> Amikor lejar az idozito automatikusan ott talalod magad a sw rutinod
elejen
> Amikor vegeztel automatikusna visszater oda ahonnan ide ugrott a
> timeridozites lejartakor
> Feltetel_1: a rutinod lefutasi ideje rovidebb legyen mint az idozites
> Feltetel_2: amig fut a rutinod, az idobeli pontossag miatt, ne engedj
> ervenyre jutni masik megszakitast
Nem akarlak elkeseriteni, de a problemam igy egyetlen uC sem
megoldhato.
1, egy olyan eszkoz amelynek az utasitasai valtozo fetch
hosszusaguak, ott mindig a kulonbozo fetch hosszusag miatt, lotyoges
fogsz tapasztalni.! Mint irtam minden valtozas kozotti
idointervallumnak QUARTZ pontosnak kell lennie.
2, Ha jol ertelmezem otletedet akkor az IT-ben kell maradni mig az
idozites le nem fut. Amenyben ez egy folyamatos igeny, csak IT-t
csinalhatok?
3. En pont akkor es csakis akkor akarom megvaltoztatni a port
allapotat, amikor a TMR 0xFFFF-0x0000 valt. Nem elotte nem utana
hajszalpontosan akkor. Az altalad emlited megoldasnak a lotyogesen
kivul jelentos csuszasa is van, az IT elkapas ha jol tudom minimum 2
orajel ciklus (ez fugg az eppen vegrehajtott utasitas tipusatol) az IT
header feldolgozasnak tartalmazni szukseges, regiszter mentes,
konstans betoltes es a port megvaltoztatasat, valoszinuleg ez sem
megy nulla ido alatt.
>
> KJ
>
> KJ
>
>
>
>
More information about the Elektro
mailing list