Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

To nie jest miejsce tylko dla początkujących, wszyscy jesteśmy w czymś początkujący i wymieniamy się doświadczeniami.
Awatar użytkownika
StaryAnoda_NEW
Newb
Newb
Posty: 78
Rejestracja: środa 04 kwie 2018, 16:48

Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: StaryAnoda_NEW » niedziela 26 sie 2018, 19:20

Hej

Zgłosiła się do mnie młodsza osoba ode mnie i zadała mi takie właśnie pytanie „Jakbyś Bartek zaczął na dzień dzisiejszy naukę programowania mikrokontrolerów?” I szczerze nie wiedziałem jakiej dokładnie odpowiedzi udzielić.

Opowiedziałem trochę o rodzajach mikrokontrolerów które na dzień dzisiejszy są wykorzystywane. O tym jakie są sposoby ich programowania.
Ale jednoznacznej odpowiedzi nie udzieliłem, ze względu na to, że sam nie wiem co może być dla młodej osoby dobre i rozsądne.
Ze swojej strony stanowczo poleciłem naukę języka C (zaczęcie od książki Język ANSI C. Programowanie. Wydanie II Brian W. Kernighan, Dennis M. Ritchie) i Nasze forum. Ale nie do końca byłem pewien jaka architektura 8 czy 32 bitowa na początek. Z pewnością chciałbym aby to procentowało na przyszłość, a z drugiej strony aby chłopak nie popadł w stagnację i nie stracił motywacji do programowania i mikrokontrolerów.

Czy są tutaj osoby które mogły by mi pomóc naprowadzić młodego człowieka?
Jest teraz duża ilość książek, materiałów, kursów i na prawdę ciężko jest podjąć decyzję początkującej osobie.

Pozdrawiam
StaryAnoda_NEW
Nie jest możliwe, żeby ludzki umysł opracował rzecz bardziej uniwersalną niż mikroprocesor - Andy Grove

Awatar użytkownika
wojtek
Geek
Geek
Posty: 1973
Rejestracja: piątek 04 wrz 2015, 09:03

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: wojtek » niedziela 26 sie 2018, 22:26

A niechby sobie wziął na początek Ardu i zobaczył czy go to wessie. I tak ja bym doradził, uprzedzając ze z Ardu to fajna jest zabawa ale jak chce potem bardziej w temat wejść, to trzeba zmienić kierunek na C itd Ale na początek to ważna jest dobra zabawa i przekonanie czy mnie to kręci ;) to taka moja rada.
73 Wojtek

Awatar użytkownika
Antystatyczny
Geek
Geek
Posty: 1108
Rejestracja: czwartek 03 wrz 2015, 22:02

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: Antystatyczny » niedziela 26 sie 2018, 22:33

Myślę, że na początek może być AVR w dowolnej postaci + C lub C++, a potem jakikolwiek STM32. Obie platformy proponuję głównie ze względu na dużą dostępność materiałów w sieci.
"The true sign of intelligence is not knowledge but imagination" Albert Einstein.

Awatar użytkownika
piotrek
Newb
Newb
Posty: 92
Rejestracja: niedziela 05 lis 2017, 02:46

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: piotrek » poniedziałek 27 sie 2018, 11:55

Dla początkującego obecnie arduino to chyba najbardziej wlasciwe srodowisko na start, do tego w koncu zostalo stworzone. A jesli ma duzo czasu i lubi nieszablonowe rozwiazania to proponuje wziac jakis egzemplarz 8 bitowej rodziny i jechac z asemblerem. Wymagajacy proces lecz pozwalajacy a nawet wymuszający dobrego zrozumienia działania MCU.

Awatar użytkownika
GrumpyRez
Newb
Newb
Posty: 83
Rejestracja: poniedziałek 04 cze 2018, 09:19

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: GrumpyRez » poniedziałek 27 sie 2018, 11:59

wojtek pisze:A niechby sobie wziął na początek Ardu i zobaczył czy go to wessie. I tak ja bym doradził, uprzedzając ze z Ardu to fajna jest zabawa ale jak chce potem bardziej w temat wejść, to trzeba zmienić kierunek na C itd Ale na początek to ważna jest dobra zabawa i przekonanie czy mnie to kręci ;) to taka moja rada.


Dokładnie tak samo bym zaczął.
Arduino to aktualnie najbardziej przenośna platforma. Od małych 8bitowców, przez np. STMy po zestawy z wifi jak ESP32.

Dopiero potem bym się zastanawiał co dalej.

Tym bardziej że arduino jest na tyle elastyczne i w sumie zestawy są już z programatorami (a nawet debugerami) że łatwo odskoczyć np. na C czy C++

Dużo tanich, wręcz bardzo tanich zestawów wszelkiej maści, praktycznie gotowość do działania od razu, bez potrzeby rzeźbienia, shieldy zakładane bez lutownicy i wiele innych zalet platformy arduino dzisiaj ułatwia start.

Nawet osobą całkowicie nie związanych z tematem elektroniki.

PS. Z własnego doświadczenia, oraz doświadczenia kolegów (nie z tego forum). Nie polecam drogi AVR na C.... bo na początku nasiedzieć trzeba się sporo by zamigać ledem, a z doświadczenia z początkującymi wiem, że to mocno zniechęca.
Dużo lepszym 'motywatorem' są projekty arduino, gdzie w stosunkowo krótkim czasie można uruchamiać całkiem zaawansowane projekty.
Zestaw to już kwestia zasobności portfela.... Od używanych EVB AVRowych które krążą po ogłoszeniach za całkiem sensowny pieniądz. Po tanie zestawy z chin, czy niedrogie Nucleo.

Programatorów chińskich początkującym mimo wszystko nie polecam!, chyba że będą zweryfikowane, uruchomione i porządnie sprawdzone przez bardziej doświadczonego kolegę.
Ostatnio zmieniony wtorek 28 sie 2018, 07:24 przez GrumpyRez, łącznie zmieniany 1 raz.

Awatar użytkownika
j23
User
User
Posty: 404
Rejestracja: czwartek 08 paź 2015, 18:40

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: j23 » poniedziałek 27 sie 2018, 19:19

Do głowy przychodzą mi dwa podejścia:
1. Szybkie, wygodne opanowanie podstaw, ale nieco drogie: wybrać albo jakieś nucleo z oferty firmy STM (gdzie wszystko już jest na płytce prototypowej), arduino lub inną płytę prototypową z zamontowanym mikrokontrolerem (i wsparciem od strony software'u). Wiadomo, kasę trzeba wydać, lub polować ew.na seminaria gdzie udostępniają takie boardy za darmo.
2. Taniej, ale bardziej skomplikowane: kupić na Allegro, ebay, ali czy gdzie się chce: programator USBASP (plus kabel usb), najmniejszą uniwersalną płytę prototypową i mikrokontroler (który czasem można dostać jako darmową próbkę) - najlepiej jakiś Atmega8, w każdym razie żeby był w stanie obsłużyć UART/USART. Do tego:ekran LCD HD44780, diodę LED 5V, rezystory 10k, rezystory 330 Ω, cewki 10 µH, potencjometry 10k, no i kabelki żeby to połączyć. Czujniki, brzęczyki, moduły i dooperele dokupi się ew . później. Oczywiście zakładam, że jakiś PC-et z portem USB, dostępem do internetu i sprawnym Windowsem jest (jakaś baza musi być).

Kurs do nauki z forum Forbot - w zależności od wybranego mikrokontrolera.

73! J23
Bo ona jest piękniejsza niż słońce
i wszelki gwiazdozbiór.
Porównana ze światłością-uzyska pierwszeństwo
(...)Mądrości zło nie przemoże
Mdr 7,29

Awatar użytkownika
StaryAnoda_NEW
Newb
Newb
Posty: 78
Rejestracja: środa 04 kwie 2018, 16:48

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: StaryAnoda_NEW » środa 05 wrz 2018, 17:59

Hej

Bardzo dziękuję wszystkim osobom które miały chęć wypowiedzieć się w tym temacie. W dobie dzisiejszych technologii bardzo ciężko jest podjąć decyzję jednej osobie, która co prawda może być o krok dalej od osoby początkującej, ale przypominając sobie swoją drogę związaną z tematem, jest świadoma, że można by tą naukę zoptymalizować, lepiej jest wtedy jak liczniejsze grono się wypowie.

Wracając do głównego wątku to udostępniłem chłopakowi Arduino UNO, czujniki, diody, wyświetlacz, i kilka innych elementów, tak aby mogła sprawdzić, czy będzie to dla niej dłuższa cześć przygody z tą tematyką. Na początek zaproponowałem programowanie w środowisku Arduino IDE.

Oczywiście temat nie został wyczerpany jeżeli ktoś ma jakieś przemyślenia, albo inne zdanie to zapraszam :)

Pozdrawiam
StaryAnoda_NEW
Nie jest możliwe, żeby ludzki umysł opracował rzecz bardziej uniwersalną niż mikroprocesor - Andy Grove

Awatar użytkownika
gaweł
Expert
Expert
Posty: 753
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: gaweł » środa 05 wrz 2018, 23:35

StaryAnoda_NEW pisze:Oczywiście temat nie został wyczerpany jeżeli ktoś ma jakieś przemyślenia, albo inne zdanie to zapraszam :)

Właściwie to jest podobne do nauki pływania: delikwenta należy wyrzucić za burtę. Są dwie możliwości: albo utonie albo wypłynie, ale ... trzeba dać szanse, czyli dać czas a nie wywierać presję, że ma być gotowe na "jutro". Prawdziwa wiedza wynika wyłącznie z przeprowadzonej walki, nauka z książek jest jedynie powielaniem cudzych koncepcji. Tu jest wręcz identycznie. Jak utonie, to ... właściwie miał utonąć i żadne czarowanie otoczenia nie pomoże. Jak wypłynie, to ma szanse na mistrzostwo. Zagadnienie jest proste: jak w życiu.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

Awatar użytkownika
GrumpyRez
Newb
Newb
Posty: 83
Rejestracja: poniedziałek 04 cze 2018, 09:19

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: GrumpyRez » czwartek 06 wrz 2018, 08:07

Nie tylko mistrzowie są potrzebni, dobry rzemieślnik jest dziś w cenie.

Awatar użytkownika
xor
User
User
Posty: 151
Rejestracja: poniedziałek 05 wrz 2016, 21:44

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: xor » czwartek 06 wrz 2018, 09:02

Dobry rzemieślnik z założenia jest mistrzem w swoim fachu. W przeciwnym razie to zwykły partacz.

Awatar użytkownika
inż.wielki
User
User
Posty: 265
Rejestracja: niedziela 20 gru 2015, 23:11

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: inż.wielki » czwartek 06 wrz 2018, 15:03

Kiedyś usłyszałem że "Klepaczem" kody może być każdy. Ale żeby pisać dobry kod to trzeba być trochę artystą w tym co się robi

Awatar użytkownika
wojtek
Geek
Geek
Posty: 1973
Rejestracja: piątek 04 wrz 2015, 09:03

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: wojtek » czwartek 06 wrz 2018, 15:35

 ! Wiadomość z: wojtek
Zaczynają koledzy odchodzić od tematu który brzmi: "Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?" przepychanki słowne to na czacie, od tego on jest
73 Wojtek

Awatar użytkownika
gaweł
Expert
Expert
Posty: 753
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: gaweł » czwartek 06 wrz 2018, 20:49

Uwaga Wojtka jest słuszna, temat dotyczy czego innego. By nie było niejasności, powtórzę to co już napisałem wcześniej innymi słowami: gościa należy wrzucić w temat, który nie jest trywialny i niech sobie radzi sam. Rzecz jasna takie podejście nie przejdzie w warunkach komercyjnych, gdzie trzeba coś zrobić "na wczoraj" i raczej to nadaje się do realizacji w zaciszu domowym, bez pośpiechu. I istotna rzecz na koniec, zadanie musi być wykonane bez jakiejkolwiek taryfy ulgowej. To może potrwać rok lub dłużej ale musi zaistnieć finał, bo jeżeli zaczniemy sobie odpuszczać, to ... może od razu sobie odpuścić ... na zawsze ;) .

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

Awatar użytkownika
StaryAnoda_NEW
Newb
Newb
Posty: 78
Rejestracja: środa 04 kwie 2018, 16:48

Re: Jak na dzień dzisiejszy rozpocząłbyś z nauką programowania mikrokontrolerów?

Postautor: StaryAnoda_NEW » niedziela 09 wrz 2018, 12:44

Hej

Na razie chłopak poznaję język i platformę. Jeżeli czegoś nie wiem to ma trzy razy podejść do tego zagadnienia w odstępach co najmniej kilku godzinnych. Jeżeli po takim czasie dalej nie zna odpowiedzi, to pyta mnie i ja mu pomagam. Dla mnie to fajna sprawa ze względu na to jak mówią znani ludzie:

Ucząc innych sami się uczymy najszybciej

Jeżeli nie potrafisz czegoś prosto wyjaśnić - to znaczy, że niewystarczająco to rozumiesz


Co daję mi cenną informację co wiem, a nad czym powinienem popracować.

Co do zadania temu chłopakowi projektu. To zapewne jest to dobry pomysł, sam złapałem się, że projekty które sam 'sobie' zadaję, są proste do zrealizowania i dotykają zagadnień z którymi miałem wcześniej do czynienia, inna sprawa jest gdy na przykład mój opiekun praktyk zadaję mi jakieś zadania to tak prosto już nie jest, ponieważ dotykają one obszarów najczęściej nie eksplorowanych przeze mnie. Co do projektu to na pewno mu takowy zaproponuję, ale jak nabędzie trochę ogłady z podstawowymi zagadnieniami.

Pozdrawiam
StaryAnoda_NEW
Nie jest możliwe, żeby ludzki umysł opracował rzecz bardziej uniwersalną niż mikroprocesor - Andy Grove


Wróć do „Podstawy elektroniki - teoria i praktyka”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 3 gości