-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.pl!news.unit0.net!news.glorb.com!peer03.iad.highwinds-media.c
om!news.highwinds-media.com!feed-me.highwinds-media.com!nx01.iad01.newshosting.
com!newshosting.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-
b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Content-Type: text/plain; charset="UTF-8"
From: jacek pozniak <j...@f...pl>
Date: Fri, 04 Apr 2014 09:08:26 +0200
User-Agent: KNode/4.4.8
Content-Transfer-Encoding: 8Bit
Subject: Re: PIC vs AVR
Newsgroups: pl.misc.elektronika
References: <533ddbbb$0$2158$65785112@news.neostrada.pl>
<533e4e45$0$2370$65785112@news.neostrada.pl>
Followup-To: pl.misc.elektronika
MIME-Version: 1.0
Lines: 39
Message-ID: <533e5a69$0$2147$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.12.26.66
X-Trace: 1396595305 unt-rea-a-02.news.neostrada.pl 2147 83.12.26.66:34854
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 2612
X-Received-Body-CRC: 3650879999
Xref: news-archive.icm.edu.pl pl.misc.elektronika:662230
[ ukryj nagłówki ]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).
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.
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.
Coraz bardziej skłaniam się ku twierdzeniu, że architektura PIC16, PIC18
(wyższych nie znam) nie pasuje do języka C i w związku z tym ciężko jest
napisać kompilator.
jp
Następne wpisy z tego wątku
- 04.04.14 09:10 Marek
- 04.04.14 09:46 Marek
- 04.04.14 10:00 Sylwester Łazar
- 04.04.14 10:02 Sylwester Łazar
- 04.04.14 10:13 Zbych
- 04.04.14 10:34 Michał Lankosz
- 04.04.14 10:48 Sylwester Łazar
- 04.04.14 10:52 Marek
- 04.04.14 11:10 Sylwester Łazar
- 04.04.14 11:22 Michał Lankosz
- 04.04.14 11:46 jacek pozniak
- 04.04.14 11:58 tusk, donald tusk
- 04.04.14 12:01 Adam Wysocki
- 04.04.14 12:40 Marek
- 04.04.14 12:41 Marek
Najnowsze wątki z tej grupy
- Rapsberry Pi i synchronizacja plików
- RCD 300 mA
- rpi i moduł przekaźników
- Falownik do pompy CO
- Lampa ogrodowa rozłączała różnicówkę
- Inteligentne oświetlenie schodów
- Pytanie do Użytkownika
- Emanuel kiedyś szukał gotowca do chłodzenia leków
- Sprzęty z Lidl-a
- idzie nowe
- Wybuchające pagery
- Jak shakować windę
- Sterowanie bezprzewodowe do wbudowania
- NC vs NO
- Jak dzięki mojemu pomysłowi amerykańce z Google przyspieszyli TV
Najnowsze wątki
- 2024-09-30 Rozprawa zdalna brak komputera
- 2024-09-30 Zielona Góra => Spedytor międzynarodowy <=
- 2024-09-30 Hackowanie SS7
- 2024-09-30 Seba strikes back
- 2024-09-30 MĂźnchen => DevOps Engineeer (Azure) <=
- 2024-09-30 MĂźnchen => DevOps Engineer (Azure) <=
- 2024-09-30 Gdańsk => Frontend Developer (Angular area) <=
- 2024-09-30 Warszawa => Spedytor Międzynarodowy <=
- 2024-09-30 Marki => Senior PHP Symfony Developer <=
- 2024-09-30 Warszawa => Technical Leader (Java Background) <=
- 2024-09-30 Warszawa => Key Account Manager <=
- 2024-09-30 Warszawa => Key Account Manager <=
- 2024-09-30 Białystok => Full Stack .Net Engineer <=
- 2024-09-30 Kraków => Ruby Backend Developer <=
- 2024-09-30 dziki wschod