Skocz do zawartości

Czy, kiedy i dlaczego warto operować na rejestrach?


Pomocna odpowiedź

Jeszcze odnośnie projektów komercyjnych i startupów to moje doświadczenia wskazują, że całkiem sporo firm korzysta np. z Arduino tylko się do tego nie przyznają, bo zaraz ktoś ich "zjedzie" bez powodu. Oczywiście nie mówię o sprzęcie medycznym, ale widziałem już kilka projektów, a już szczególnie prototypów, gdzie w pięknych obudowach było wrzucone zwykłe Arduino UNO lub MEGA 😉

Według mnie Arduino to trochę szerszy temat. Doświadczeni elektronicy, którzy są wychowani w czasach, gdy nie było Arduino uważają tę platformę za zabawkę i trochę "dla zasady" ją dyskredytują. Fakty są jednak takie, że przez lata powstało całe pokolenie osób, które zna Arduino - i jestem przekonany, że część tych osób za jakiś czas odnajdzie się w pracy zawodowej jako programiści właśnie Arduino. Jest wiele miejsc, gdzie to wystarczy. Co więcej, Arduino też to zauważyło i cały czas powoli, bo powoli, ale rozwija się w kierunku tego, aby ich platforma była również używana w bardziej przemysłowych i zaawansowanych tematach. Uważam więc, że to kwestia czasu jak będzie więcej pracy dla programistów Arduino. Jest to jednak wizja na X lat w przód. Jeśli ktoś chce iść już teraz w stronę komercyjnych projektów to w Polsce najlepiej iść pewnie w kierunku STM32.

A tutaj przykład jednego z najnowszych rozwiązań Arduino Pro - sterownik "PLC", który można również programowac w Arduino. Jeszcze kilka lat temu nikt by nawet o tym nie myślał...

3a456-2022-12-13_09-13-25-13391.png

  • Lubię! 1

W podobnym formacie, to też Industrino kiedyś tam było, też chyba jakiś start-up. A takie Pico, nawet na MicroPythonie , komercyjnie, jakiś filmik mi kiedyś wpadł, ale nie znajdę go na szybko, wykorzystanie PIO do obsługi czujnika.

To ja bym chciał jeszcze jedną rzecz uściślić - co mianowicie rozumiemy pod słowem "Arduino".

  1. Śliczna niebieska płyteczka zapakowana w gustowne pudełeczko, z wlutowanymi gniazdkami pozwalającymi podłączyć różne kolorowe duponty do płytki stykowej
  2. Niemniej śliczna aplikacja (Arduino IDE) służąca do edycji kodu, kompilacji i wgrania owego kodu na płytkę (niekoniecznie tę z punktu 1)
  3. Zestaw bibliotek implementujący standard Wiring (tworzący de facto pewien standard) oraz zestaw różnych miłych poleceń (arduino-builder, arduino-cli) pozwalający na kompilację kodu i wgranie go do urządzenia docelowego (niekoniecznie za pomocą aplikacji z punktu 2)

A co do zarabiania na ESP...

W większej części urządzeń IoT (podobno profesjonalnych, a już na pewno komercyjnych) typu gniazdko elektryczne z WiFi czy zdalnie sterowany ekspres do kawy siedzi sobie ESP8266 z odpowiednim kawałkiem programu wyrzeźbionym w Arduino (punkt trzeci) bez zaglądania w rejestry. Nikt mi nie powie, że firmy produkujące i sprzedające tego typu ustrojstwa na tym nie zarabiają.

 

Nie znam większości urządzeń IoT więc nie powiem co w nich siedzi, ale bawiłem się czymś takim https://micro-technic.com/en/iot-products/ 

ESP8266 tam nie widziałem, chociaż może w jakimś module komunikacyjnym po cichu siedzi. W każdym razie urządzenie podobno IoT, ale bez nawet cienia Arduino, za to sterowniki jak najbardziej odwołują się do rejestrów.

Używanie Arduino/ESP jest dość popularne w przypadku mniejszych firm, dla których zakup płytki z całym oprzyrządowaniem wychodzi taniej niż zakup mikrokontrolera i podzespołów. Nie oszukujmy się mikrokontrolery w ilościach mniejszych niż rolka/szpula to nadal detal.

IMHO to dość dobre rozwiązanie, bo działa i można łatwo wymienić wadliwą część przelutowując FLASH'a (ESP) lub modląc się o odblokowany dostęp (AVR). Wymaga to mniej umiejętności niż przelutowanie jakiegoś egzotycznego mikrokontrolera, którego nigdzie nie da się znaleźć 😄 

Swoją drogą włączniki światła i temu podobne zabawki to chyba bardziej Home Automation niż IoT, jeszcze kilka lat temu w HA królował ZigBee. WiFi raczej nie nadaje się do niskomocowych rozwiązań, chociaż może wystarczyć do sterowania światłem. Ciekawe jak teraz wygląda rynek HA, ktoś się może tym interesował nieco dokładniej?

1 minutę temu, Elvis napisał:

Ciekawe jak teraz wygląda rynek HA, ktoś się może tym interesował nieco dokładniej?

Może nie "dokładniej", ale jak szukałem jakiś czas temu rozwiązań to większość gotowców HA jest na WiFi - mówię o rzeczach typu gniazdka, głowice termostatyczne, jakieś przełączniki. Niektóre rzeczy są nadal na ZigBee i to właściwie tyle.

(edytowany)

@ethanak mógłbyś dwa słowa powiedzieć o tym "NOINIT" ?

RTC_NOINIT_ATTR int zmienna;

Doczytałem że jest to kawałek pamięci która nie jest inicjowana niczym i dane tam zapisane powinny przeżyć reset...guzikowy reset też? A sprawdzałeś czy przypadkiem po zaniku zasilania dane nadal istnieją? 

Edytowano przez farmaceuta
Przed chwilą, farmaceuta napisał:

sprawdzałeś czy przypadkiem po zaniku zasilania dane nadal istnieją

Oczywiście że nie istnieją - przecież to RAM.

Po włączeniu zasilania siedzą tam zera. Potem po resecie (nieważne jakim) siedzi tam to, co wcześniej napchałeś.

 

  • Pomogłeś! 1
(edytowany)

@morteusz Tak warto się uczyć, szczerze nie ważne czy ESP32 czy STM32 czy nawet arduino. Byłem na rozmowie na Embedded dev i pytali czy mam coś zrobionego samodzielnie na jakimkolwiek mikrokontrolerze. Pytają się o to jak zrealizowałeś projekt, jaki sprzęt dobrałeś itp. Na Juniora jest to ważne czy sam sie tym interesujesz, jak orientujesz się w temacie. Odrazu pytają się o różne rozwiązania. Jak masz dużo projektów to cała Twoja rozmowa o prace może wyglądac tak, że pokazujesz swoje projekty głównie co jest na Twoją korzyść. 

Jeśli chodzi o czysto branżowe uczenie się to STM32 jest chyba najbliżej tego "profesjonalnego" środowiska. ESP32 jest ogrom open-source projektów. Tasmota chociażby i ogólnie wszelakie smart home. ESP32 jest na tyle tani, że po prostu nadaje się do wszelakich hobbystycznych projektów na których nauczysz się najwięcej praktyki. SMT32 z racji ceny jest dużo rzadziej używany, ale daje według mnie dużo większe pole do zrozumienia low levelowego poziomu jeśli chodzi o programowanie uC. 

Mój kolega ma cały dom obwarowany na Tasmocie w ESP32 i RPI3. Wszystko sam buduje co się da. 

Edytowano przez Dantey
  • Lubię! 2
(edytowany)

a ja wam tylko powiem taką ciekawostkę, iż na studiach usłyszałem, że zdaniem jednego z wykładowców programowanie każde inne niż obiektowe to relikt i nikt tak już nie programuje 🙂 tak analogicznie do tematu 😛

Edytowano przez BananWszyscy

A ja tak sobie czytam, czytam i w pewnej chwili się zorientowałem, że pytanie w tytule wątku zostało źle postawione.

Nie "czy warto jeszcze operować na rejestrach" a "kiedy warto operować na rejestrach"...

  • Lubię! 1
32 minuty temu, ethanak napisał:

Nie "czy warto jeszcze operować na rejestrach" a "kiedy warto operować na rejestrach"...

Można też podejść do tego pytania inaczej, i zmienić je na "Czy warto potrafić operować na rejestrach?"

(edytowany)
2 godziny temu, ethanak napisał:

"kiedy warto operować na rejestrach"...

To pytanie dość proste - chyba... Operujemy kiedy trzeba

Weźmy przykład z wczoraj. Bawię się piezo brzęczykiem i chciałbym mieć przebieg 4kHz o wypłenieniu 50%.
Biorę Arduino z AVRem i używam funkcji tone(). No ale teraz chciałbym mieć dwa takie przebiegi na dwóch pinach ale w przeciw fazie. Bo chcę sprawdzić jak bardzo zwiększy się głośność.  No i mam dwa wyjścia - robię to na rejestrach lub podłączam NORa, czy NANDa. Więc dziś wieczór planuję zabawę rejestrami. 

Edytowano przez pmochocki
  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...