Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Computer ControlsComputer Controls
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Początki przygody z uC- jaki model, jak zacząć, po co te wszystkie złącza ...

02 Dec 2017 22:20 741 19
  • Level 4  
    Cześć!
    Niedawno na studiach zaczęliśmy zabawę z mikrokontrolerami.- świecenie diodami, klawisze i inne tego typu pierdoły. Bardzo mi się to spodobało i chciałbym coś poczynić w kierunku lepszego poznania uC jednak nie wiem jak się za to zabrać.
    Poszedłem za radą większości internetowych doradców i stwierdziłem, że trzeba po prostu kupić mikrokontroler i zacząć coś pisać. Jednak sprawa nie jest taka prosta. Wybierając uC do nauki programowania nie wiem na co zwrócić uwagę. W Internecie brak treściwych artykułów na temat wyboru mikrokontrolerów. Widzę różne uC ze złączem HDMI, Ethernet, wejściem na karty SD itp. Tylko pytanie- po co mi to wszystko? Poznając uC od strony świecenia diod i regulacji prędkości obrotu silnika krokowego nie potrafię znaleźć zastosowania dla wszystkich tych złączy. Czy ktoś mógłby mi rozjaśnić trochę świat uC i podrzucić może jakiś pomysł jak rozpocząć naukę? Jest wiele artykułów jednak większość z nakreślonym już problemem. Myślę, że jak wykonam już pierwszy krok to dalej jakoś to pójdzie, jednak najciężej jest zacząć. Proszę o poradę.
  • Computer ControlsComputer Controls
  • User removed account  
  • Level 4  
    Piotrus_999 wrote:
    Kup sobie STM discovery z ekranem i peryferiami i masz zabawę na lata :)


    Czy taki zestaw będzie dobrym wyborem?
    https://botland.com.pl/kursy-forbot/5860-forb...-zestaw-elementow-bezplatny-kurs-on-line.html

    tmf wrote:
    @paxonek123 Przejrzyj blog:
    http://mikrokontrolery.blogspot.com/
    Materiałów w necie jest sporo.


    Widziałem tego bloga ale mam wrażenie, że nie jest skierowany do osób w mojej sytuacji. Z porad dla osób totalnie zielonych (właśnie m.in. na temat przytoczonego przeze mnie migania diody) przechodzi od razu do tematów, które w tym momencie są dla mnie abstrakcją, tj. brak mocy obliczeniowej gdzie w tym momencie nawet nie potrafię sobie wyobrazić gdzie ta cała moc miałaby iść aby jej zabrakło. Podobnie z wyborem uC- tipy są raczej dla osób które są już ukierunkowane na konkretne zadania jakie chcą zlecić mikrokontrolerowi.

    Piottr242 wrote:
    Jak do zabawy w miganie diodami, to Arduino jest pierwszym wyborem....


    Chciałbym właśnie wyjść poza strefę migania diodami, do rzeczy które mogą mi się przydać w przyszłości, czy to w ramach zajawki czy też w życiu zawodowym.


    Nie wiem jednak od jakich "projektów" powinno się zacząć, jakiś określony plan działania, aby nie rzucić się od razu na głęboką wodę co mogłoby mnie zniechęcić. Czy moglibyście zerknąć na ten zestaw który wrzuciłem wyżej? Jest tam również dostęp do kursu który na pierwszy rzut oka wygląda dość sensownie. Czy ktoś ma jakieś informacje na temat tego kursu? Jest coś wart czy lepiej próbować robić coś na własną rękę posiłkując się książką?
  • Computer ControlsComputer Controls
  • Level 38  
    paxonek123 wrote:
    Wybierając uC do nauki programowania nie wiem na co zwrócić uwagę. W Internecie brak treściwych artykułów na temat wyboru mikrokontrolerów. Widzę różne uC ze złączem HDMI, Ethernet, wejściem na karty SD itp. Tylko pytanie- po co mi to wszystko?


    odróżnij mikrokotroler (gdzie programujesz na bare-metal) i mikrokomputer (z systemem operacyjnym, najczęściej linux, rzadziej mutacja androida, czasem dostępne specyficzne windows)
    Słowa te (np mikrokomputer) już kiedyś miały inne znaczenie, ale takie mają dzisiaj.

    Dodano po 1 [minuty]:

    Piotrus_999 wrote:
    Zaczął bym od PC-ta i nauki C lub C++


    zdecydowanie tak
  • Level 4  
    JacekCz wrote:

    odróżnij mikrokotroler (gdzie programujesz na bare-metal) i mikrokomputer (z systemem operacyjnym, najczęściej linux, rzadziej mutacja androida, czasem dostępne specyficzne windows)
    Słowa te (np mikrokomputer) już kiedyś miały inne znaczenie, ale takie mają dzisiaj.


    Ok poczytałem trochę o tych uPC jednak w internecie jest o nich znacznie mniej niż o uC. Większość wskazuje serię Raspberry jako nieporównywalnego dominatora na rynku. Tylko nie za bardzo widzę zastosowanie, Z tego co czytam to gros osób stosuje je jako takie mini stacje multimedialne, ale to raczej do domowego użytku. Czy używa się ich w jakiś sposób w pracy? Tzn. wiem że jest stanowisko takie jak programista mikrokontrolerów (swoją drogą jeżeli ktoś ma dobre informacje to mógłby napisać jakie konkretnie obowiązki ma taka osoba), jednak nie znalazłem nigdzie "pracownika od obsługi uPC".


    Piotrus_999 wrote:


    Wydaje mi się, że język C znam na tyle aby dość swobodnie operować na uC. Z tego co zauważyłem to większość programów do tej pory opierała się na pętlach i operacjach bitowych które znam.



    Ogólnie mikrokontrolerami zainteresowałem się, ponieważ jestem na studiach elektrotechnicznych, jednak już w trakcie studiów zorientowałem się, że bardzo podoba mi się programowanie. Wydaje mi się, że te dwie branże w pewnym momencie się łączą (szczególnie elektrotechnika i mikrokontrolery) i zdobywając tytuł z jednej dziedziny, rozwijając się jednocześnie w drugiej, mógłbym w przyszłości liczyć na dość ciekawą pracę.
    Więc odchodząc już od mojej niewiedzy na tematy związane z uC, czy moglibyście polecić mi jakiś konkretny zestaw z uC, na którym mógłbym nauczyć się co nieco i połknąć bakcyla? Domyślam się, że taniej wyszłoby jeżeli sam zmontowałbym wszystko na płytce stykowej, jednak wolę zainwestować trochę więcej pieniędzy i mieć pewność że wszystko zadziała.

    Co sądzicie o tym zestawie na początek: https://botland.com.pl/moduly-avr/7247-zestaw...51-z-procesorem-avr-atmega32-kurs-bascom.html ?
  • Level 38  
    Jak myślisz o ścieżce profesjonalnej, niech Cie wszyscy święci programiści bronią od Bascoma.

    Linia Atmega, zasłużona przez lata, odchodzi w przeszłość. Czy warto to poznać? Pewnie warto, jako zbiór technik, kruczków, "lingua franca", ostrzelanie się w walce z uK, umiejętność szukania szczegółów w notach itd...
    Po czasie się ocenia, że warto znać i bardzo małe (51, Attiny), nawet historyczne architektury, to rozwija, ale u progu masz pytanie, gdzie dasz główną energię.
    na te czasy proste płytki uK z procesorami 32bit STM o wiele większej mocy obliczeniowej są najczęściej tańsze od Atmegowych.
    cyt:
    Piotrus_999 wrote:
    Kup sobie STM discovery z ekranem i peryferiami i masz zabawę na lata :)

    jedna z dobrych propozycji


    Niczego nie nauczysz się na zawsze, raczej musisz nauczyć się uczyć

    Wiele lat temu ojczyzna dała dyplom elektronik-mikroprocesory, więc o łączeniu branży to nie jest żadna nowość, to konieczność, albo po prostu norma (żadna "zasługa dodatkowa")

    stanowiska pracy zwykle się nazywają w rodzaju "programista embedded" / programista systemów wbudowanych. A "pracownik od obsługi uPC" to np sekretarka, która klika klawisz na ekspresie do kawy
    Dodano po 15 [minuty]:
    paxonek123 wrote:

    Ok poczytałem trochę o tych uPC jednak w internecie jest o nich znacznie mniej niż o uC. Większość wskazuje serię Raspberry jako nieporównywalnego dominatora na rynku. Tylko nie za bardzo widzę zastosowanie


    Są, są zastosowania, trzeba się rozejrzeć, choćby w elektrodzie.
    Nie szukaj frazy uPC, to wg współczesnego urabiania słówek przez marketing, znaczy coś innego.
  • Level 4  
    JacekCz wrote:
    Jak myślisz o ścieżce profesjonalnej, niech Cie wszyscy święci programiści bronią od Bascoma.

    Linia Atmega, zasłużona przez lata, odchodzi w przeszłość. Czy warto to poznać? Pewnie warto, jako zbiór technik, kruczków, "lingua franca", ostrzelanie się w walce z uK, umiejętność szukania szczegółów w notach itd...
    Po czasie się ocenia, że warto znać i bardzo małe (51, Attiny), nawet historyczne architektury, to rozwija, ale u progu masz pytanie, gdzie dasz główną energię.
    na te czasy proste płytki uK z procesorami 32bit STM o wiele większej mocy obliczeniowej są najczęściej tańsze od Atmegowych.
    cyt:
    Piotrus_999 wrote:
    Kup sobie STM discovery z ekranem i peryferiami i masz zabawę na lata :)

    jedna z dobrych propozycji


    Niczego nie nauczysz się na zawsze, raczej musisz nauczyć się uczyć

    Wiele lat temu ojczyzna dała dyplom elektronik-mikroprocesory, więc o łączeniu branży to nie jest żadna nowość, to konieczność, albo po prostu norma (żadna "zasługa dodatkowa")

    stanowiska pracy zwykle się nazywają w rodzaju "programista embedded" / programista systemów wbudowanych. A "pracownik od obsługi uPC" to np sekretarka, która klika klawisz na ekspresie do kawy
    Dodano po 15 [minuty]:
    paxonek123 wrote:

    Ok poczytałem trochę o tych uPC jednak w internecie jest o nich znacznie mniej niż o uC. Większość wskazuje serię Raspberry jako nieporównywalnego dominatora na rynku. Tylko nie za bardzo widzę zastosowanie


    Są, są zastosowania, trzeba się rozejrzeć, choćby w elektrodzie.
    Nie szukaj frazy uPC, to wg współczesnego urabiania słówek przez marketing, znaczy coś innego.


    Nie jestem przekonany do tej serii STM, myślę że na moim etapie poznania nie będę wiedział jak się za to zabrać. Wpadł mi w oko ten zestaw:
    https://diolut.pl/zestaw-startowy-arduino-xxxl-mega-2560-142-elementy-p-8701.html
    Co prawda moc obliczeniowa jest mniejsza niż w STM i pewnie nie można tworzyć tak zaawansowanych projektów, ale są zarówno elementy dla mega początkujących jak diody i klawisze, jak i te dla bardziej zaawansowanych jak różnego rodzaju czujniki (na razie nie będę wiedział jak się za nie zabrać ale to pewnie z czasem przyjdzie). Wydaje mi się, że kupując to będę miał zabawę na dość długi czas i dość duże pole do popisu. Co myślisz? Może dość kurczowo trzymam się serii ATMega ale wydaje mi się ona najprostsza dla początkującego ze względu na łagodne przejście od elementów banalnych do tych skomplikowanych.
  • Moderator of Microcontroller designs
    @paxonek123 Seria ATMega na początek jest niezła - przede wszystkim w necie są miliony stron na ten temat, czego nie można powiedzieć o wielu innych mikrokontrolerach. Niemniej, jeśli się na to decydujesz, kup sobie płyktę Xplained z ATMega328/168 - płytka ta zawiera kompatybilny z Atmel Studio programator i debugger. Jest to nieocenione ułatwienie - instalujesz darmowe Atmel Studio, łączysz Xplained przez USB z kompem, co załatwia ci zasilanie i programowanie/debugowanie. Xplained są w formacie Arduino, więc wszystkie sheldy (hardwarowe nakładki, rozszerzające sprzęt) bez problemu z tą płytką połączysz. Wynalazki, które podałeś w linku są ok, tylko nie posiadają debuggera. W sytuacji w której chcesz podglądnąć co się dzieje z MCU jednak sprzętowy debugger jest nieoceniony.
  • MCUs specialist
    Temat poruszany w tysiącu wątków, również przyklejony w sekcji dla początkujących - po co powielać te same treści? Na wszystkie pytania Autora odpowiedzi udzielono tu wielokrotnie - wystarczy przejrzeć wątki typu "od czego zacząć" - nie trzeba zaczynać nowego.
    Na moje oko ATmega dzisiaj to fatalny wybór, o czym też było wielokrotnie. Cała ścieżka Arduino (głównie oprogramowanie, ale sprzęt też) - to zabawka. Autor się upiera - ok, niech brnie w ślepą uliczkę, będzie mniejsza konkurencja na rynku pracy. ;)
  • Level 38  
    paxonek123 wrote:

    Wydaje mi się, że język C znam na tyle aby dość swobodnie operować na uC. Z tego co zauważyłem to większość programów do tej pory opierała się na pętlach i operacjach bitowych które znam.


    W miarę wątku zacząłem wątpić w deklarowaną znajomość C, choć początkowo Twoje słowa przyjąłem za dobrą monetę.
    Język, który najchętniej jest podawany na CV "przecież widziałem u kumpla klamerki". Po latach nadal nie rozumiem, na czym magia podawania znajomości C polega.

    BlueDraco wrote:
    ... Cała ścieżka Arduino (głównie oprogramowanie...


    Zgadzam się, jeden wielki antywzorzec programowania profesjonalnego.
    Idea powstała, aby dać zajęcie studentom metodą "równania w dół".

    BlueDraco wrote:
    Temat poruszany w tysiącu wątków, również przyklejony w sekcji dla początkujących


    Dokładnie.
    Posłałem wniosek o zamknięcie
  • MCUs specialist
    A ja na początek nie polecam Ci mikrokontrolerów 32b!

    Na początek, albo AVR 8 bitowy na płytce z debugerem tak jak zaproponował TMF, albo STM8


    AVR są proste, popularne, ale mają trochę kulawą architekturę, STM8 też są proste, mają ciekawszą architekturę i łatwiejsze będzie potem przejście na STM32 bo będziesz miał już obeznane środowisko.

    Link
    Link
    Link
  • Level 4  
    Brnę w ATMegi ponieważ jest ich najwięcej i najprościej znaleźć cokolwiek na ich temat w internecie.

    michalko12 wrote:
    A ja na początek nie polecam Ci mikrokontrolerów 32b!

    Na początek, albo AVR 8 bitowy na płytce z debugerem tak jak zaproponował TMF, albo STM8


    AVR są proste, popularne, ale mają trochę kulawą architekturę, STM8 też są proste, mają ciekawszą architekturę i łatwiejsze będzie potem przejście na STM32 bo będziesz miał już obeznane środowisko.

    Link
    Link
    Link


    A czy nie będzie problemu aby dołączać do tej płytki dodatkowe komponenty? Bo ilość pinów wygląda na dość niewielką.
  • User removed account  
  • Level 4  
    Piotrus_999 wrote:
    michalko12 wrote:
    A ja na początek nie polecam Ci mikrokontrolerów 32b!
    IMO szkoda zawracać sobie już głowę AVR-ami. To co Ci wysłałem - masz MBED środowisko ala ARDUINO online i offline, debugger i co tam tylko chcesz. Ale brnij w co chcesz.


    Ok, coraz więcej opinii skłania mnie ku porzuceniu tej ATMegi na rzecz właśnie STM, trzeba wychodzić poza swoją strefę komfortu. Powiedz mi tylko, jak z rozszerzaniem tej płytki o dodatkowe moduły, czy będzie z tym problem? Można je podłączać do portów A-D? Na zajęciach nie operowaliśmy na modułach spoza płytki więc nie wiem jak do końca się to odbywa.

    Z resztą, nie będę wam już tutaj zawracał głowy. Wiem mniej więcej czego oczekuję, poszukam teraz w osobnych tematach. Dziękuję za pomoc.
  • User removed account  
  • Level 4  
    Piotrus_999 wrote:
    paxonek123 wrote:
    owiedz mi tylko, jak z rozszerzaniem tej płytki o dodatkowe moduły, czy będzie z tym problem? Można je podłączać do portów A-D?
    Chyba jednak proponuję rozpocząć od jakiś książek na temat procesorów.


    Chciałem zdobywać wiedzę poprzez doświadczenie jednak chyba rzeczywiście za szybko się na to porwałem.

    Moderated By tmf:

    Poneważ padły już chyba wszelkie możliwe sugestie, a tego typu tematy są w archiwum, wątek zamykam. Autora zachęcam do zapoznania się z przyklejonymi wątkami i w przyszłości, jeśli będzie miał problem, zadania konkretnych pytań.

  • Level 32  
    Po to są właśnie te goldpiny, trzeba tylko pamiętać że nie do każdego pinu możesz podpinać poziomy logiczne 5V. No i stm jest bardziej elastyczny jeśli chodzi o przypisanie pinów do peryferiów.