eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProblem lekko OT, ale w WinAVR ;-) › Re: Problem lekko OT, ale w WinAVR ;-)
  • Data: 2009-06-14 18:23:06
    Temat: Re: Problem lekko OT, ale w WinAVR ;-)
    Od: "T.M.F." <t...@n...mp.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    >> Alez byla. Twoja zmienna jest typu int, czyli ma 2 bajty. AVR nie ma
    >> instrukcji ladowania z pamieci 2 bajtow jednoczesnie, a wiec takie
    >> przeslanie nie jest atomowe. Dlatego musisz okreslic ta zmienna jako
    >> volatile i zapewnic atomowosc operacji przez blokowanie przerwan.
    >
    > Nie wiem czemu twierdzisz, że dla zachowania atomowości potrzebne ci
    > jest volatile. To volatile jest w tym przypadku zbędne.

    Dlatego jest potrzebne, zeby kompilator zdawal sobie sprawe, ze nie jest
    to zwykla zmienna i nie robil takich kwiatkow jak na przykladzie. To
    oczywiscie z atomowoscia nie ma nic wspolnego, ale lacznie generuje
    poprawny kod. Ogolna zasada mowi, ze kazda zmienna uzywana w przerwaniu
    i programie glownym powinna byc volatile. W szczegolnych przypadkach nie
    musi byc, ale nalezy sobie zdawac sprawe z konsekwencji.

    --
    Inteligentny dom - http://idom.wizzard.one.pl
    http://idom.sourceforge.net/
    Teraz takze forum dyskusyjne
    Zobacz, wyslij uwagi, dolacz do projektu.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: