-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
OSTED!not-for-mail
From: "Grzegorz Niemirowski" <g...@p...onet.pl>
Newsgroups: pl.misc.elektronika
Subject: Re: Jak zacząć ENC28J60 i STM32F103RBT6 ?
Date: Mon, 3 Nov 2014 19:13:18 +0100
Organization: ATMAN - ATM S.A.
Lines: 55
Message-ID: <m38gk4$8vk$1@node2.news.atman.pl>
References: <5...@g...com>
<5...@g...com>
<a...@n...neostrada.pl>
<m3042j$oj2$1@portraits.wsisiz.edu.pl>
<m30jnl$ccj$1@portraits.wsisiz.edu.pl>
NNTP-Posting-Host: 031011139062.warszawa.vectranet.pl
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset="UTF-8"; reply-type=original
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1415038404 9204 31.11.139.62 (3 Nov 2014 18:13:24 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 3 Nov 2014 18:13:24 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: OE PowerTool 4.5
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157
X-WWW: http://www.grzegorz.net/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:673518
[ ukryj nagłówki ]Atlantis <m...@w...pl> napisał(a):
> Czyli co? Każdy powinien w celach edukacyjnych nauczyć się sterować
> każdym układem za pomocą machania pinami i wypisania heksadecymalnych
> wartości do poszczególnych rejestrów? Tylko po co? Po co robić od nowa
> pracę, którą ktoś już wykonał? Po co marnować czas na pisania już
> istniejącej biblioteki?
> Dla mnie jest to trochę tak absurdalne, jak twierdzenie, że początkujący
> powinien móc sobie ten układ najpierw zaprojektować z bramek (a
> najlepiej tranzystorów) a potem oprogramować go w assemblerze
> określonego procesora.
> Najważniejsze jest to, żeby zacząć i uruchomić układ. Jeśli początkujący
> będzie zaczynał podejście od najbardziej stromego zbocza, to w końcu
> spadnie, potłucze się i zniechęci. Nie ma nic złego w korzystaniu z
> wydeptanej ścieżki. A pozostałą wiedzę kiedyś trzeba będzie opanować -
> przy okazji portowania albo modyfikacjo biblioteki. Jednak wszystko w
> swoim czasie.
Jak nabędziesz praktyki, to zmienisz nieco zdanie. Zakładasz, że biblioteka
to gotowiec, który wystarczy wpiąć do projektu. Ale to tylko tzw. chłyt
makietinkowy autora/autorów. Tak może się wydawać przeglądając opis albo
uruchamiając przykłady. Jednak jak robisz własny projekt, nieco bardziej
rozbudowany, albo jest to już któryś kolejny projekt wykorzystujący daną
bibliotekę, to widzisz jak ona jest kanciasta, gdzie autor poszedł na
skróty, że poczynił pewne założenia, które w Twoim projekcie nie muszą być
prawdziwe, że coś jest nieudokumentowane, że coś się zmieniło w tej wersji
którą masz w porównaniu z wersją użytą w przykładach, że coś jest
niekompatybilne z Twoim kompilatorem, że biblioteka używa jakichś zasobów
(np. timery), które też chciałeś użyć, że definiuje jakieś makra i coś Ci
redefiniuje, że biblioteka ma błędy (nawet jak jest od renomowanego
producenta).
Tak, nie ma sensu wynajdować koła. Warto korzystać z bibliotek. Ale w
praktyce i tak się okazuje, że musisz wziąć manuala i obczaić jak ustawić
ten czy tamten bit w danym rejestrze. Szczególnie w naszym świecie embedded,
gdzie jesteś bardzo blisko sprzętu. To nie jest pecet, że system operacyjny
np. chroni pamięć jednego procesu przed modyfikacją przez inny proces. Tutaj
masz mikrokontroler i jesteś ciągle milimetry od strzelenia sobie w stopę.
Nie możesz traktować bibliotek jako czarnych pudełek, które się podczepia do
projektu i one działają. Potem ludzie piszą "wziąłem STM32CubeMX, wyklikałem
projekt i on nie działa!". Nie trzeba zaczynać koniecznie od stromego
zbocza, tylko potem bywa tak, że ktoś odpali "Hello World!" i sobie myśli,
że teraz kilkoma kliknięciami walnie sobie Ethernet. I Zonk, nie działa.
Albo działa, ale koszmarnie wolno. Lub tez działa, ale tylko przez godzinę.
I zaczyna się debugowanie, pisanie na elektrodę, rozczajanie jak działa
biblioteka i sięganie po ten straszny reference manual. I okazuje się, że
jednak jesteśmy na dosyć stromej ścieżce.
Nie zrozum mnie źle, nie neguję Twojego zdania. Tylko po prostu
rzeczywistość jest bardziej skomplikowana, a czaso(praco)chłonność projektu
znów jak zwykle okazuje się niedoszacowana :)
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 34 days, 23 hours, 56 minutes and 38 seconds
Następne wpisy z tego wątku
- 03.11.14 22:49 Atlantis
- 04.11.14 11:01 Bool
- 04.11.14 13:03 Marek Borowski
- 04.11.14 17:58 Atlantis
- 04.11.14 18:41 Bool
- 04.11.14 19:54 Atlantis
- 05.11.14 09:53 Bool
- 10.11.14 20:50 pawel
- 10.11.14 22:24 platformowe głupki
- 10.11.14 23:53 butek
- 11.11.14 10:58 platformowe głupki
- 11.11.14 12:14 platformowe głupki
- 11.11.14 13:06 platformowe głupki
Najnowsze wątki z tej grupy
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
Najnowsze wątki
- 2025-07-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek