eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaPIC vs AVR › Re: PIC vs AVR
  • Data: 2014-04-04 10:13:08
    Temat: Re: PIC vs AVR
    Od: Zbych <a...@o...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu 04.04.2014 09:08, jacek pozniak pisze:
    > Zbych wrote:
    >
    >> W dniu 04.04.2014 00:07, jacek pozniak pisze:
    >>
    >>> Zawsze starałem się stosować do ANSII C.
    >>> Ku mojemu zdumieniu, kompilacja za pomocą kopmpilatora HiTech (chodzi o
    >>> nowsze wersje, obecnie to chyba jest Microchip) powoduje różne
    >>> nieoczekiwane efekty, np. starsza wersja kompiluje OK; nowsza źle, lub
    >>> odwrotnie. Działanie programu zależy od wersji kompilatora, starszą
    >>> wersją działa, nowszą nie, lub odwrotnie.
    >>
    >> Jak pokażesz konkretny kawałek kodu, to wtedy można dyskutować czy kod,
    >> czy kompilator jest do dupy. Bez tego to mogę ci polecić tylko wizytę u
    >> najbliższej wróżki.
    >
    > Problem polega na czymś innym.
    >
    > Np. mam kod, w sumie, 3tys linii, który jest działający (wiem, że to może
    > być przypadek, że działa).
    > Następnie dopisuję prostą funkcję, przetestowaną na PC za pomocą gcc;
    > kompilator(linker) zgłasza mi, że nie może coś tam pamięci znaleźć (mimo że
    > wcześniej kompilował i wykorzystywał 20% ram, procesor PIC18, 3,5kB ram).

    Kompilator microchipa to dziadostwo i jak w danej jednostce kompilacji
    przekroczysz rozmiar banku, to musisz ręcznie przypisać cześć zmiennych
    do innego banku pamięci.

    > No i się zaczyna kombinowanie, przenoszenie zmiennych globalnych na lokalne
    > i na odwrót (dobrze, że w PIC18 nie trzba banków deklarować). OK program się
    > kompiluje ale rzeczona funkcja nie działa poprawnie.

    No to trzeba użyć debuggera (pickit3 kosztuje grosze) i sprawdzić co
    jest nie tak.

    > Następnie ściągam kompilator XC8 (60 dniowy) i program się kompiluje i
    > działa poprawnie (przynajmiej takie mam wrażenie).
    >
    > Ja wiem, że ponad 99% przypadków niedziałania programu w C to wina
    > programisty ale martwią mnie takie akcje gdzie linker coś sygnalizuje a ty
    > się martw o co mu chodzi i kombinuj.

    Masz rację, ja też czekam na kompilator, który zrobi to co chcę a nie to
    co napisałem :-).

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: