eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaZagwozdka w C Keil. › Re: Zagwozdka w C Keil - wyjaśnienie.
  • Data: 2019-02-13 22:47:36
    Temat: Re: Zagwozdka w C Keil - wyjaśnienie.
    Od: q...@t...no1 (Queequeg) szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    J.F. <j...@p...onet.pl> wrote:

    > Ale nie spojrzec jaki to typ przy sprawdzaniu/szukaniu bledu ... czas
    > na lecytyne :-)

    Jak masz w głowie, że to musi być int, to możesz przeoczyć :)

    > A swoja droga - czy Keil sam ich nie wylacza ? Dla zmiennych volatile
    > powinien.

    Wbrew intuicji -- nie :) Modyfikator `volatile` oznacza tylko tyle, że
    kompilator nie może robić założeń co do zawartości zmiennej opatrzonej tym
    modyfikatorem, bo zmienna może zmienić wartość poza ścieżką wykonania (np.
    jest to sprzętowy rejestr, lub inny wątek ją modyfikuje, lub właśnie
    przerwanie). `volatile` nie oznacza, że kompilator gwarantuje atomiczny
    dostęp do zmiennej (czyli że wyłączy wszystko inne, co może zmienić jej
    wartość w trakcie dostępu -- czy to wątki, czy przerwania, czy zewnętrzny
    sprzęt).

    AVR ma to rozwiązane w ten sposób:

    https://www.nongnu.org/avr-libc/user-manual/group__u
    til__atomic.html

    --
    Eksperymentalnie: http://facebook.com/groups/pl.misc.elektronika

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: