eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaPIC vs AVR › Re: PIC vs AVR
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
    atman.pl!goblin2!goblin.stu.neva.ru!feeder.erje.net!us.feeder.erje.net!usenet.b
    lueworldhosting.com!feeder01.blueworldhosting.com!peer02.iad.highwinds-media.co
    m!news.highwinds-media.com!feed-me.highwinds-media.com!nx01.iad01.newshosting.c
    om!newshosting.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a
    -02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
    Date: Fri, 04 Apr 2014 10:13:08 +0200
    From: Zbych <a...@o...pl>
    User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
    MIME-Version: 1.0
    Newsgroups: pl.misc.elektronika
    Subject: Re: PIC vs AVR
    References: <533ddbbb$0$2158$65785112@news.neostrada.pl>
    <533e4e45$0$2370$65785112@news.neostrada.pl>
    <533e5a69$0$2147$65785112@news.neostrada.pl>
    In-Reply-To: <533e5a69$0$2147$65785112@news.neostrada.pl>
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    Lines: 45
    Message-ID: <533e6992$0$2160$65785112@news.neostrada.pl>
    Organization: Telekomunikacja Polska
    NNTP-Posting-Host: 83.15.192.162
    X-Trace: 1396599186 unt-rea-a-02.news.neostrada.pl 2160 83.15.192.162:13128
    X-Complaints-To: a...@n...neostrada.pl
    X-Received-Bytes: 3006
    X-Received-Body-CRC: 2997027475
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:662235
    [ ukryj 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: