-
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.internetia.pl!not-for-mail
From: Mario <m...@...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: PIC vs AVR
Date: Sun, 06 Apr 2014 19:38:15 +0200
Organization: Netia S.A.
Lines: 110
Message-ID: <lhs4bu$she$1@mx1.internetia.pl>
References: <533ddbbb$0$2158$65785112@news.neostrada.pl> <lhpavu$914$1@dont-email.me>
<lhpeqj$ct4$1@speranza.aioe.org> <lhpgfo$kjn$1@dont-email.me>
<lhpluc$v7a$1@speranza.aioe.org> <lhpr39$4rf$1@dont-email.me>
<lhq0sf$7gn$1@speranza.aioe.org> <lhrhmg$tsf$1@mx1.internetia.pl>
<lhrhub$kmg$1@speranza.aioe.org> <lhrm67$d0s$1@mx1.internetia.pl>
<lhrugk$kpt$1@speranza.aioe.org>
NNTP-Posting-Host: 159-205-85-152.adsl.inetia.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: mx1.internetia.pl 1396806846 29230 159.205.85.152 (6 Apr 2014 17:54:06 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Sun, 6 Apr 2014 17:54:06 +0000 (UTC)
In-Reply-To: <lhrugk$kpt$1@speranza.aioe.org>
X-Tech-Contact: u...@i...pl
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:662459
[ ukryj nagłówki ]W dniu 2014-04-06 18:14, AlexY pisze:
> Użytkownik Mario napisał:
>> W dniu 2014-04-06 14:39, AlexY pisze:
> [..]
>>> Nie, nie tylko, ASM, pascal, basic. Tych potrzebowałem to się nauczyłem,
>>> zrobiłem podejście do C i C++ ale chyba już za stary jestem bo mi się
>>> odechciało, może to kwestia braku odpowiedniej literatury napisanej w
>>> sposób dla mnie zrozumiały.
>>
>> No to chyba młodszy jesteś ode mnie bo ja uczyłem się Algolu i Fortranu.
>> DO nauki c wystarczył mi Kernighan Ritchie oraz kieszonkowy leksykon c z
>> serii O'Reilly.
>
> Nie będę się licytował, angielski mam słaby, nie programuję zawodowo i
> nawet bym nie chciał bo to wypala mózg :)
Nic nie pisałem, że Kernighana czytałem w oryginale. Jest polski
przekład. Jest sporo podręczników do c, tłumaczonych z angielskiego lub
napisanych przez polskich autorów.
> [..]
>>> Nikt nigdy nie wmówi mi że asm jest łatwy,
>>
>> Nie piszę, że łatwy tylko, że większe ma się szanse na to, że program
>> będzie wystarczająco mały i wystarczająco szybki aby zmieścić się w
>> osmiobitowcu i maksymalnie wykorzystać jego słabą wydajność. Czyli
>> ciężką pracą kodera, bohatersko zwalcza się problemy wynikające ze
>> słabej architektury.
>
> Źle do tego podchodzisz, rozpoczynając projekt sprawdzasz który sprzęt
> spełni wymagania i na nim dłubiesz, dłubanie na siłę w zbyt słabym
> sprzęcie jest skazane na porażkę.
Ja tak właśnie nie podchodzę. Ale wydaje mi się że ci co się trzymają
asemblera niestety są przez to często zmuszeni do pracy z prockami w
których ledwo się mieszczą.
>>> jego podstawowa zaleta to
>>> wiedza co w danym momencie się dzieje z każdym bitem, całkowita kontrola
>>> sprzętu,
>>
>> Dopóki ten sprzęt jest wystarczająco prosty aby go ogarnąć.
>
> Ogarniasz go na bieżąco podczas pisania, do tej pory nie miałem z tym
> problemu.
Zazwyczaj operując w ramach jednej rodziny. Przejście na coś całkiem
innego boli. Sam przechodziłem z 51 na AVR i szybko stwierdziłem, ze
wgryzanie się w pisanie w asm wymaga ode mnie dużo wysiłku. Po jednym
małym projekcie wolałem się nauczyć c i kilka projektów zrobiłem w
AVR-gcc. Przejście z c na AVR do c na ARM było już znacznie łatwiejsze.
Podejrzewam, że ci co upierają się przy asm, z oporami sięgają po
bardziej złożone architektury twierdząc, że to co mają w zupełności im
wystarcza.
>>> zawsze, wszystkie procedury bez skrępowania mogę okroić z
>>> funkcji których nie użyję, nie wiem czy tak samo można grzebać w
>>> bibliotekach C. np obsługa LCD HD44780 wyciąć obsługę 8bitowej
>>> transmisji i odczyt stanu wyświetlacza.
>>
>> Możesz to zrobić. Jeśli biblioteka ma dużo kodu, a wykorzystujesz tylko
>> małą część to możesz wyciąć te funkcje, wkleić wprost do swojego kodu
>> albo zapisać jako inną bibliotekę. Tu ograniczeniem może być licencja.
>> Często się korzysta z dorobku innych zawartego w domenie publicznej.
>> Dołączenie czyjegoś kodu np. na GPL wprost do twojego kodu powodowałoby
>> wymóg opublikowania twojego kodu. Często jest jednak tak, że licencja
>> zezwala na używanie zamkniętego kodu twojego własnego programu, a
>> publikować trzeba jedynie zmiany w środowisku jak funkcje biblioteczne
>> czy sterowniki. Wtedy lepiej zmianę jakiejś biblioteki zapisać jako nową
>> bibliotekę i ewentualnie opublikować w razie potrzeby.
>
> Licencja... no właśnie...
Twój wybór. Możesz korzystać z pracy społeczności na zdefiniowanych
przez nią warunkach albo pisać wszystko sam. Naprawdę każdy musi sam
wymyślać stos TCP, albo obsługę HD44780?
>>> Nikogo nie zamierzam przekonać do swoich racji wiem że rynek wymusił
>>> pisanie szybko bo na chlebek nie zarobisz, ale czy to jest rzeczywiście
>>> dobre?
>>
>> Czy pisanie w c pod linuksa czy systemy BSD jest twoim zdaniem
>> niewłaściwe, bo nie panuje się nad efektem kompilacji? Superkomputery,
>> routery, duża część serwerów internetowych, systemy dowodzenia i
>> prowadzenia ognia. Lepiej i bezpieczniej byłoby gdyby to wszystko pisać
>> w asemblerze?
>
> Tu jest sedno sprawy, uC to ściśle określony sprzęt, system operacyjny
> ma działać na całej rodzinie sprzętu, ponadto poziom komplikacji jednak
> przewyższa atmelkowe miganie diodką, na uC program napiszesz, produkt
> sprzedasz i możesz o nim zapomnieć,
Tylko po co w takim razie argumentacja, że pisanie w c jest
niebezpieczne z powodu błędów kompilatora czy ogólnie mówiąc szybkie
tanie i kiepskie? Skoro kod skompilowany z c jest poprawny i stabilny w
routerach czy w serwerach to czemu miałby być niepoprawny w przypadku
atmelkowego migania LEDem?
> systemy operacyjne co rusz się
> aktualizuje, co w przypadku asm jest szczególnie ciężkie. To wymusza
> użycie języka wysokiego poziomu, moje "ale" jest co do jego wyboru.
Jakoś nie robią tego na Basicu. Widocznie c jest do tego lepszy.
--
pozdrawiam
MD
Następne wpisy z tego wątku
- 06.04.14 19:42 Mario
- 06.04.14 19:44 jacek pozniak
- 06.04.14 19:46 AlexY
- 06.04.14 19:51 Sylwester Łazar
- 06.04.14 19:53 Mario
- 06.04.14 20:03 Sylwester Łazar
- 06.04.14 20:12 Mario
- 06.04.14 20:17 Mario
- 06.04.14 20:17 AlexY
- 06.04.14 20:27 Sylwester Łazar
- 06.04.14 20:34 Sylwester Łazar
- 06.04.14 20:34 Michał Lankosz
- 06.04.14 20:39 AlexY
- 06.04.14 20:43 Marek
- 06.04.14 20:47 Mario
Najnowsze wątki z tej grupy
- Jak shakować windę
- Sterowanie bezprzewodowe do wbudowania
- NC vs NO
- Jak dzięki mojemu pomysłowi amerykańce z Google przyspieszyli TV
- Jak dzięki mojemu pomysłowi amerykańce z Google przyspieszyli TV
- Żyrandol w wersji ze ściemnianiem.
- Napięcie w gniazdku na wszystkich żyłach po wyłączeniu bezpieczników - zgłaszać do elektrowni?
- Elektryczna łapka i szerszeń
- moduł dtmf
- 0.5V
- Odbiór SDR na mikrokontrolerach
- Taki uziom....
- Nałożnica?
- ładowanie akku
- Mikrofala
Najnowsze wątki
- 2024-09-14 Canon 550D
- 2024-09-14 Odcinkowy Pomiar Prędkości. NIELEGALNY w Polsce!!! Nie daj SIĘ!
- 2024-09-14 Warszawa => Menadżer Okręgu <=
- 2024-09-14 Łódź => Spedytor Międzynarodowy <=
- 2024-09-14 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-09-14 Warszawa => Technical Leader (Java Background) <=
- 2024-09-14 Gdynia => Spedytor Międzynarodowy <=
- 2024-09-14 k.o.mendant
- 2024-09-12 Z cyklu POJEBANA UE: samochody elektryczne nie mogą być tanie i dobre
- 2024-09-13 dodanie karty graf zawiesza komp
- 2024-09-13 Sezon grzewczy kurła
- 2024-09-13 Warszawa => Spedytor Międzynarodowy <=
- 2024-09-13 Warszawa => Mid Account Manager <=
- 2024-09-13 Warszawa => QA Engineer <=
- 2024-09-13 Białystok => Frontend Developer (Angular area) <=