Anonymní profil Anonymní uživatel – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Anonymní uživatel – Programujte.comAnonymní profil Anonymní uživatel – Programujte.com

 

Příspěvky odeslané z IP adresy 195.212.199.–

Anonymní uživatel
Mikrokontroléry › AVR přerušení program
28. 6. 2010   #130792

To Adam : Da sa povedat, ze AB ma pravdu.pokial chces pouzivat prerusenia,musis si riadne nastudovat,ako to cele funguje.pokial ten tvoj vypis je cely program,tak to nebude fungovat z dovodu, ktore ti napisal AB,ja som to neskusal skompilovat.
Pre kazde prerusenie,ktore povolis MUSI byt napisana prerusovacia rutina,inak ti program zhavaruje.Vyznam flagov som ti uz popisal,ale nastuduj si, ako funguju prerusenia v globale.
ked chces pouzit casovac,musis ho nastavit a spustit.Ked ma vyvolat prerusenie,tak musi mat rutinu prerusenia.V programe pracujes s Timer1,ale nikde nie je nastaveny. Citace/Casovace mozu fungovat v niekolkych rezimoch.

Vlado
Mikrokontroléry › AVR přerušení program
23. 6. 2010   #130595

V tvojom SW je nevhodne nastaveny GIFR. Po tomto zapise a vykonani funkcie sei() je ihned vyvolane prerusenie.Tento register sa nenastavuje a sluzi len HW procesora,ktory si takto "pamätá" požiadavku na prerušenie.
V prerušení máš zastavený Timer a nasledne pravdepodobne mal byť znulovaný,len neviem,prečo potom TCNT1H=1?Následne ho potom nemáš nikde spustený.
Watchdog slúži najčastejšie k tomu,aby "zablúdený" program zresetoval MCU.Niekedy sa dá využiť aj inak,ale to je trošku o inom.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý