eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaDlaczego ATmega128 przekłamuje?Re: Dlaczego ATmega128 przekłamuje?
  • Data: 2009-10-13 20:59:38
    Temat: Re: Dlaczego ATmega128 przekłamuje?
    Od: John Smith <d...@b...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    >>>> Co może powodować ingerencję w wartość zmiennej przez procedurę, w
    >>>> której ta zmienna nie występuje?
    >>>
    >>> stos?
    >>
    >> Tak podejrzewałem, ale redukcja zmiennych z 83% zajętości RAM do 52%
    >> nie zmieniła nic w tym względzie. Ile może zajmować taki stos?
    >> ATmega128 ma 4 KB RAM-u. Polowa pamięci na stos ? Trochę
    >> nieprawdopodobne.

    Źle sparametryzowana biblioteczna funkcja printf potrafi zużyć
    dużo stosu. To taki przykład.


    >
    > Dodaj pare zmiennych dookola, zobacz czy tylko ta jedna sie zmienia.
    > Albo dodaj nowa zmienna, zmien program zeby z niej korzystal, ale te
    > zostaw i monitoruj.

    Za to kocham MSP430, w hardware-owym debugerze można ustawić pułapkę
    na zapis do obszaru pamięci i już wiadomo w wyniku jakiej instrukcji
    nastąpił problem. Sprawę rozwiązuje się w chwilkę.

    A błędy na stosie mogą się markować bardzo długo a objawiać
    bardzo rzadko, akurat wtedy gdy nie trzeba.
    K.

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: