[elektro-etc] attiny45 INTF0 kerdes
Balazs Szabo
bszke060 at gmail.com
Fri Oct 8 16:55:30 CEST 2010
Hello Lista!
2010. október 8. 09.46 dátummal Szlifka Tibor ezt írta:
> a tiny45 adatlapja szerint INTF0 flagbe 1 íródik bejövő megszakítás esetén.
> Az interrupt rutin végén automatikusan törlődik. Eddig oké. A következő
> mondat szerint alternatív megoldásként törölhető a flag, ha 1-et írunk
> bele. Vagy korán van, vagy nem világos, de ha bejövő megszak esetén 1 lesz,
> akkor 1-be állítva pont hogy kiváltom a megszakíts hívását, nem? Kézi
> törlésnél nem inkább 0-ba kellene írni?
Hehe... Ez maximum annak illogikus, aki nem programozott regebben Commodore
Plus/4-et peldaul... :)
Nem neztem at az attiny45 adatlapjat, de abban a regiszterben van mas
interrupt jelzes is? Azert kell igy torolni, mert igy a kovetkezo tortenik:
A regiszterbe beleirsz egy olyan BYTE-ot, amibe CSAK a torlendo IRQ bitje 1.
Emiatt CSAK AZ az IRQ jelzes torlodik, amit eppen torolni akarsz. Tehat ha
egyszerre tobb fajta megszakitast hasznalsz, akkor igy biztositani tudod,
hogy csak azt az egy kerelmet torlod, amit akartal, mast nem. Ha sima 0-ba
irassal torolnel, akkor vagy nem tudsz egyetlen egy megszakitaskerest
torolni, vagy beolvas-modosit-visszair modon tudnad csak torolni, de ha kozbe
beesik egy masik kerelem, akkor azt is kilotted.
Szoval akarki akarmit mond, ez igy logikus... :)
Udv: Balazs
More information about the Elektro-etc
mailing list