Skocz do zawartości

W czym pisać profesjonalnie / komercyjnie kody dla mikrokontroerów?


Pomocna odpowiedź

Witam pytanie może i proste ale nie dla mnie.

Adruino  nie jest komercyjnym frameworkiem i nie można go stosować w celach komercyjnych. Więc jakie są komercyjne / profesjonalne frameworki ( w czym pisać ) dla mikrokontrolerów takich jak STM32, ESP, AVR .

Dla Stm32 słyszałem o Stm32Cube ,dla AVR obiło mi się ASF ale naświetlcie mi proszę temat swoją większą wiedzą.

Link to post
Share on other sites
32 minuty temu, vtor napisał:

Adruino  nie jest komercyjnym frameworkiem i nie można go stosować w celach komercyjnych.

To bardzo ciekawe. Zakładam, że chodzi ci o "Arduino". Czy mógłbyś podać źródło z którego wziąłeś tę informację?

Link to post
Share on other sites

Gdzieś w internecie naprawdę nie pamiętam gdzie.  Jeśli się mylę to poprawcie mnie co do zarobkowego stosowania bibliotek Arduino w projekcie. Możliwe że można o ile ujawni się kod programu. Nie chcę się sprzeczać co do kwestii stosowania bibliotek Arduino bo pewności nie mam.

Aczkolwiek nie zmienia to istoty mojego wcześniejszego pytania co wykorzystywane jest do profesjonalnego pisania kodów dla mikrokontrolera ?

Link to post
Share on other sites
54 minuty temu, vtor napisał:

Aczkolwiek nie zmienia to istoty mojego wcześniejszego pytania co wykorzystywane jest do profesjonalnego pisania kodów dla mikrokontrolera ?

Umiejętność czytania not katalogowych i własnoręczne pisanie niskich warstw aplikacji (obsługa peryferiów). Zyskujesz pełną kontrolę nad tym co się dzieje z Twoim prockiem.

Link to post
Share on other sites
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

1 godzinę temu, vtor napisał:

Gdzieś w internecie naprawdę nie pamiętam gdzie.  Jeśli się mylę to poprawcie mnie co do zarobkowego stosowania bibliotek Arduino w projekcie. Możliwe że można o ile ujawni się kod programu. Nie chcę się sprzeczać co do kwestii stosowania bibliotek Arduino bo pewności nie mam.

Aczkolwiek nie zmienia to istoty mojego wcześniejszego pytania co wykorzystywane jest do profesjonalnego pisania kodów dla mikrokontrolera ?

Strasznie mieszasz pojęcia. Być może lepiej by było, gdybyś spokojnie zastanowił się czego dokładnie chcesz i zadał pytanie o to dokładnie. Bo to czy dane narzędzie jest "komercyjne" czy nie (Co to w ogóle znaczy, że jest "komercyjne"? Że nie jest za darmo?) nie ma wpływu na to, czy możesz je używać do projektów które same są "komercyjne", ani na to czy musisz przy tym udostępniać kody źródłowe. Takie rzeczy regulowane są przez licencję, która jest zawsze dołączona do danego narzędzia. Wystarczy przeczytać.

Co do tego czego innego można użyć, to naprawdę masz szeroki wybór. Dowolny edytor tekstu, choćby notatnik. Dowolny kompilator który wspiera daną platformę. Dowolne biblioteki, które ci pasują i mają właściwą licencję, albo które sobie napiszesz sam. Naprawdę nikt cię nie zmusza do używania jakichś oficjalnych narzędzi. Ja na przykład kod piszę w Vim-ie, kompiluję przy pomocy GCC, dla wygody używając GNU Make, a wgrywam przy pomocy AVRDude albo OpenOCD, w zależności od mikrokontrolera. Żadne z tych narzędzi nie jest "komercyjne".

Link to post
Share on other sites

Pytając o komercyjne narzędzia miałem na myśli takie które można wykorzystywać bez problemu w projektach komercyjnych (tworzeniu projektu na zamówienie za pieniądze itd). Jakich narzędzi i zestawu bibliotek używają profesjonalne firmy jak mają do zrealizowania zlecony projekt.

Link to post
Share on other sites

Arduino szykuje się dość poważnie do tego, aby wejść na dużą skalę do przemysłu. Może tego jeszcze nie widać, ale robią bardzo dużo w tym kierunku. Małym wycinkiem tego jest chociażby strona Arduino Pro: https://www.arduino.cc/pro

@vtor jeśli chodzi o biblioteki to każdy dostawca biblioteki może ją dostarczać na innych warunkach. W takim przypadku musisz rozpatrywać konkretne biblioteki. Jednak ogólnie nic nie stoi na przeszkodzie, aby komercyjne projekty były pisane w języku Arduino.

Link to post
Share on other sites

A jakie biblioteki / frameworki warto poznać dla:

STM32 ( HAL i STM32Cube ? ), ESP i AVR

Poza Arduino , jakie alternatywy warto znać jeśli chciało by się zarobkowo i profesjonalnie tworzyć projekty na mikrokontrolerach.

Oj poznałem takich "profesjonalistów" a dowiedzieli się od amatora o Pin Change interupt, ale to tak drogą dygresji.

Link to post
Share on other sites

Znowu widzę problemy słownikowe. Jak ktoś jest profesjonalistą w danej dziedzinie, to nie oznacza to, że wszystko o niej wie (to by był bardziej ekspert), a tylko że: a) pracuje w tej dziedzinie w ramach swojej profesji, czyli regularnie bierze za wykonywane czynności pieniądze, b) zachowuje się w sposób profesjonalny. Do tego drugiego warunku niestety jeszcze tutaj długa droga.

Link to post
Share on other sites
Dnia 10.12.2020 o 15:11, vtor napisał:

STM32 ( HAL i STM32Cube ? ), ESP i AVR

Poza Arduino , jakie alternatywy warto znać jeśli chciało by się zarobkowo i profesjonalnie tworzyć projekty na mikrokontrolerach.

@vtor na ten moment na pewno STM32 i HAL to bardzo popularna para, raczej nic popularniejszego nie znajdziesz z tego typu rozwiązań. Na pewno warto poznać 🙂

Link to post
Share on other sites

Bardzo ważne zagadnienie poruszyłeś za co należą się szczególne podziękowania.

Zawsze staraj się pisać programy w środowisku zalecanym przez producenta np.STMicroelectronics.

Zawsze czytaj plik licencyjny,który jest pomijany przez 99,99% użytkowników.

Plik licencyjny STM32 CUBE IDE jest w załączniku.Na szczególną uwagę zasługuje punkt 6.

6. Some portion of the software package may contain software subject to Open Source Terms (as defined below) applicable for each such portion ("Open Source Software"), as further specified in the software package. Such Open Source Software is supplied under the applicable Open Source Terms and is not subject to the terms and conditions of license hereunder. "Open Source Terms" shall mean any open source license which requires as part of distribution of software that the source code of such software is distributed therewith or otherwise made available, or open source license that substantially complies with the Open Source definition specified at www.opensource.org and any other comparable open source license such as for example GNU General Public License (GPL), Eclipse Public License (EPL), Apache Software License, BSD license and MIT license.

Co w tłumaczeniu wygląda tak:

6. Pewna część pakietu oprogramowania może zawierać oprogramowanie podlegające Warunkom Open Source (zdefiniowanym poniżej) mającym zastosowanie do każdej takiej części („Oprogramowanie Open Source”), zgodnie z dokładniejszym opisem w pakiecie oprogramowania. Takie oprogramowanie Open Source jest dostarczane zgodnie z obowiązującymi Warunkami Open Source i nie podlega warunkom licencji na mocy niniejszej Umowy. „Warunki oprogramowania open source” oznaczają każdą licencję typu open source, która w ramach dystrybucji oprogramowania wymaga, aby kod źródłowy takiego oprogramowania był dystrybuowany wraz z nim lub w inny sposób udostępniany, lub licencję typu open source zasadniczo zgodną z definicją Open Source określoną na stronie www. opensource.org i każdą inną porównywalną licencję open source, taką jak na przykład GNU General Public License (GPL), Eclipse Public License (EPL), Apache Software License, BSD i MIT.

STM w tym punkcie odwołuje się do  www. opensource.org.Jeśli troszeczkę poczytamy to wchodząc https://opensource.org/faq

można odnaleźć nurtujące Cię zagadnienie.Warto przeczytać całość!Na szczególną uwagę zasługuje Distributing and Using Open Source Software.

"Dystrybucja i korzystanie z oprogramowania Open Source.

A jeśli nie chcę rozpowszechniać mojego programu w postaci kodu źródłowego? A co, jeśli nie chcę go rozpowszechniać ani w formie źródłowej, ani binarnej?

Jeśli nie rozpowszechniasz kodu źródłowego, to co rozpowszechniasz nie może być w sensowny sposób nazwane „Open Source”. A jeśli w ogóle nie rozpowszechniasz, to z definicji nie rozpowszechniasz kodu źródłowego, więc nie rozpowszechniasz niczego Open Source.

Pomyśl o tym w ten sposób: licencje Open Source są zawsze stosowane do kodu źródłowego - więc jeśli nie rozpowszechniasz źródła, to nie rozpowszechniasz rzeczy, do których odnosi się licencja Open Source. Możesz lub nie rozpowszechniać plików binarnych; to osobne pytanie. Ale chociaż niektóre licencje Open Source pozwalają na dystrybucję kodu binarnego bez dystrybucji odpowiedniego źródła, to tylko kod źródłowy może być „open source”. Same pliki binarne nie mogą być Open Source, ponieważ nie udostępniasz żadnego kodu źródłowego do otwarcia. (Jeśli ktoś inny rozpowszechnia kod źródłowy na licencji Open Source, to oczywiście nadal jest to Open Source).

Należy pamiętać, że licencje typu open source typu copyleft wymagają od redystrybutorów udostępniania kodu źródłowego w określonych okolicznościach; na przykład, zobacz Powszechną Licencję Publiczną GNU i Powszechną Licencję Publiczną GNU Affero ."

Polska jest dziwnym krajem bo nie edukuje się ludzi w zakresie podstaw prawa i jeśli sam się nie wyedukujesz nie masz szans na normalne funkcjonowanie.Istotą jest to by czytać ze zrozumieniem.Na polskich stronach internetowych raczej nie znajdziesz odpowiedzi na nurtujące Cię zagadnienia.

plik licen.rar

Edytowano przez szymonw
Link to post
Share on other sites
47 minut temu, szymonw napisał:

Pomyśl o tym w ten sposób: licencje Open Source są zawsze stosowane do kodu źródłowego - więc jeśli nie rozpowszechniasz źródła, to nie rozpowszechniasz rzeczy, do których odnosi się licencja Open Source. Możesz lub nie rozpowszechniać plików binarnych; to osobne pytanie. Ale chociaż niektóre licencje Open Source pozwalają na dystrybucję kodu binarnego bez dystrybucji odpowiedniego źródła, to tylko kod źródłowy może być „open source”. Same pliki binarne nie mogą być Open Source, ponieważ nie udostępniasz żadnego kodu źródłowego do otwarcia. (Jeśli ktoś inny rozpowszechnia kod źródłowy na licencji Open Source, to oczywiście nadal jest to Open Source).

Troszkę tu poplątałeś, to nie tak działa. Prawo do kopiowania obejmuje w Polsce "dzieła" — takim dziełem może być kod źródłowy biblioteki, ale może nim też być tak zwane "dzieło zależne", czyli cokolwiek co stworzono na podstawie oryginalnego dzieła — na przykład skompilowane binarki używające tej biblioteki. Licencje open source zazwyczaj specyfikują, że do dzieł zależnych stosuje się ta sama licencja — znanym wyjątkiem jest licencja LGPL, która podaje osobne warunki dystrybucji dla samego kodu, a osobne dla binarek.

Co do rozpowszechniania, to jeśli nic nie rozpowszechniasz — ani binarek, nawet takich wgranych już w urządzenie, ani kodu — to licencja się po prostu nie stosuje. Prawo do kopiowania odnosi się tylko do dzieł publicznie rozpowszechnianych. Jak nie rozpowszechniasz, to wolno ci wszystko, niezależnie od licencji.

Jeśli rozpowszechniasz binarki, to już zależy od licencji. Przy GPL, masz obowiązek udostępnić kody źródłowe i wszelkie modyfikacje, jakie zostały dodane. Przy innych licencjach, takich jak MIT czy BSD nie masz takiego obowiązku. Niektóre licencje pozwalają ci nawet udostępnić dzieło pod inną licencją niż oryginalna.

No i wreszcie to, że musisz udostępnić kod źródłowy wcale nie oznacza, że nie możesz za swój produkt brać pieniędzy.

Edytowano przez deshipu
Link to post
Share on other sites

To co zacytowałeś z mojego wpisu pochodzi ze strony  www. opensource.org.To nie są moje słowa.Oczywiście zacytowałem tylko część wywodu na temat licencji.Wykład na stronie jest dużo,dużo dłuższy i obejmuje różne rodzaje licencji.

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.