Elektroda.pl
Elektroda.pl
X
Arrow Multisolution Day
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Wybór mikrokontrolera i programatora dla totalnie zielonego.

0ceanborn 15 Lut 2014 11:02 1899 17
  • #1 15 Lut 2014 11:02
    0ceanborn
    Warunkowo odblokowany

    Witam
    Jak w temacie, na rynku jest tego sporo więc wybór niełatwy.
    Myślałem, że programator (z mikrokontrolerem) pojawi się w sklepiku elektrody co ułatwiło by mi wybór - brak wyboru. Niestety straciłem już na to nadzieję w każdym razie nie chcę już dłużej czekać.
    1.Pierwsza sprawa to wybór mikrokontrolera na C.
    Jeśli chodzi o języki programowania - chciałbym zacząć się uczyć C - bo słyszałem dużo pozytywnych rzeczy na jego temat, oprócz tego możliwość programowania na PC, podobieństwo do asemblera. Być może z czasem będę chciał coś robić w tym ostatnim języku, który bardzo mi imponuje. Niech ktoś pomoże mi po prostu wybrać coś na początek.
    Nie znam się kompletnie na fusebitach i innych bitach, chciałbym żeby mikrokontroler był prosty w obsłudze, by miał dokładny przetwornik analogowo cyfrowy no i żeby można go programować pod Linuksem. Inna ważna kwestia to duży wybór innych podobnych mikrokontrolerów tak aby za pomocą tego samego programatora móc programować inne układy w zależności od potrzeb i żeby ewentualna przesiadka nie była kłopotliwa.
    Wstępnie zainteresowałem się Atmel AVR, mam jednak takie pytanie : czy wszystkie typy AVR obsługują C ?
    2. Następna sprawa to wybór programatora. Z tego co czytałem, nie wiem w jakim stopniu jest to prawdą, najlepiej jest programować na LPT, ponieważ w USBasp musi być inny już wstępnie zaprogramowany układ. Mnie natomiast interesuje, które z tych rozwiązań LPT czy USB jest bardzie uniwersalne pod względem kompatybilności (jakie układy można programować) a także bezawaryjność. Skoro w USBasp jest bardziej skomplikowany w budowie to coś mi się wydaję, że będzie on częściej nawalał, mam rację ?
    Uniwersalność jest dla mnie ważna ale nie chcę by programator był totalnie uniwersalny za to z ograniczeniami dotyczącymi poszczególnych układów, zawiasy etc.
    Byłbym wdzięczny za linki do odpowiednich ofert albo schematów.
    Popatrzyłem na kilka ofert allegro i z tego co widzę, jest wiele ofert typu programator + taśma, brakuje tylko podstawki :
    Wybór mikrokontrolera i programatora dla totalnie zielonego.
    Wiecie może gdzie można samą taką kupić i żeby nie kosztowała zbyt wiele ?
    Gdzie jest taki sklep który ma duży wybór ?
    Wszelkie porady, sugestie mile widziane, a pomoc chętnie wynagrodzę punktami.

    0 17
  • Arrow Multisolution Day
  • #2 15 Lut 2014 11:28
    Badmaneq
    Poziom 23  

    Ad. 1. Język programowania jest tylko "narzędziem" do zaprogramowania mikrokontrolera. Nie ma znaczenia jakiego języka użyjesz do zaprogramowania mikrokontrolera. Polecam nauczyć się C, ponieważ jest to język uniwersalny. Znając go będziesz mógł pisać programy dla dowolnych mikrokontrolerów, na PC pod windows czy linuksa.

    Ad. 2. Nie jest prawdą, że najlepiej używać programatora pod LPT, tym bardziej że coraz trudniej znaleźć komputer z tym portem. W dzisiejszych czasach lepszym wyborem będzie programator pod USB.
    Kupując USBasp ma już go zaprogramowanego ! Faktycznie jeżeli sam będziesz chciał zrobić programator USBasp to będzie o wiele trudniej. Tworząc programator pod LPT będzie znaczniej łatwiej, jeden z najprostszych to bufor 74LS244 .

    Czy to musi być AVR ? Na allegro jest moduł 32 bitowego mikrokontrolera LPC1114 za 39 zł wraz z wbudowanym konwerterem USB-UART, więc nie będzie potrzebny żadny programator. Podpinasz do USB i programujesz.

    0
  • Arrow Multisolution Day
  • #3 15 Lut 2014 11:45
    0ceanborn
    Warunkowo odblokowany

    Badmaneq napisał:

    Ad. 1. Język programowania jest tylko "narzędziem" do zaprogramowania mikrokontrolera.

    Nie zupełnie :
    http://mikrokontrolery.blogspot.com/2011/04/jaki-jezyk-wybrac.html
    przeczytaj pkt. Bascom
    Badmaneq napisał:
    W dzisiejszych czasach lepszym wyborem będzie programator pod USB.

    Dlaczego ?
    Badmaneq napisał:
    Czy to musi być AVR ?

    Nie musi koniecznie.
    Badmaneq napisał:
    Na allegro jest moduł 32 bitowego mikrokontrolera LPC1114 za 39 zł wraz z wbudowanym konwerterem USB-UART, więc nie będzie potrzebny żadny programator. Podpinasz do USB i programujesz.

    A co dają te 32 bity ? Na pewno układ taki będzie droższy, a i tak nie wiem czy wykorzystam w pełni jego możliwości. Ja myślę raczej o prostych urządzeniach typu miernik. W każdym razie dobrze wiedzieć.

    0
  • #4 15 Lut 2014 12:12
    tmf
    Moderator Mikrokontrolery Projektowanie

    Na wspomnianej przez ciebie stronie:
    http://mikrokontrolery.blogspot.com
    masz wszystkie odpowiedzi na twoje pytania. Przeczytaj ją uważnie, masz tam też kursy C, AVR, XMEGA, coś o ARM. Przeczytaj archiwum elektrody - pytanie o programator pojawia się raz dziennie i wszystko na ten temat zostało już powiedziane. Duże ryzyko, że temat wyląduje w koszu.

    0
  • #5 15 Lut 2014 12:20
    markoz7874
    Poziom 31  

    tmf napisał:
    Na wspomnianej przez ciebie stronie:
    http://mikrokontrolery.blogspot.com
    masz wszystkie odpowiedzi na twoje pytania. Przeczytaj ją uważnie, masz tam też kursy C, AVR, XMEGA, coś o ARM. Przeczytaj archiwum elektrody - pytanie o programator pojawia się raz dziennie i wszystko na ten temat zostało już powiedziane. Duże ryzyko, że temat wyląduje w koszu.

    Popieram tmf - pierwsza odpowiedzią na pytanie typu "jak zacząć" powinna być odpowiedz - "od nauki szukania".
    I nie jest to złośliwość. Jeżeli ktoś nie radzi sobie ze znalezieniem gotowych odpowiedzi na pytanie które non stop pojawia się na forum, to znaczy, że średnio sobie poradzi z istotniejszymi problemami.
    A w internecie naprawdę jest sporo - wystarczy wysilić się i poszukać.

    0
  • #6 15 Lut 2014 17:36
    BlueDraco
    Specjalista - Mikrokontrolery

    No właśnie, najpierw przeczytaj ze 100 wątków na ten temat, które przewijają się tu ci tydzień.

    Na jakiej podstawie uznałeś, że 32-bitowe mikrokontrolery są droższe od 8-bitowych? Ja przesiadłem się kilka lat temu na Cortexy m.in. dlatego, że były tańsze od AVR (a przy okazji z 10 razy wydajniejsze i z mądrzejszymi peryferiami, w tymi większą liczbą timerów).

    0
  • #7 15 Lut 2014 17:40
    0ceanborn
    Warunkowo odblokowany

    BlueDraco napisał:
    Na jakiej podstawie uznałeś, że 32-bitowe mikrokontrolery są droższe od 8-bitowych?

    Nooo w sumie to tylko moje przypuszczenia, zresztą z tego co widzę AVR są niezwykle popularne myślałem że z powodu ceny.
    BlueDraco napisał:
    Ja przesiadłem się kilka lat temu na Cortexy m.in. dlatego, że były tańsze od AVR (a przy okazji z 10 razy wydajniejsze i z mądrzejszymi peryferiami, w tymi większą liczbą timerów).

    Hmmm skoro ARM są tańsze do tego wydajniejsze i w ogóle super to gdzie tu jest haczyk skoro AVR są takie popularne ?

    0
  • Pomocny post
    #8 15 Lut 2014 17:44
    xamrex
    Poziom 28  

    0ceanborn napisał:
    Hmmm skoro ARM są tańsze do tego wydajniejsze i w ogóle super to gdzie tu jest haczyk skoro AVR są takie popularne ?


    Może właśnie tu jest haczyk, że AVR są bardziej popularne; jest dużo więcej książek o nich.
    a do ARMów nie ma aż tak obszernej literatury.

    0
  • Pomocny post
    #9 15 Lut 2014 18:34
    McMonster
    Poziom 32  

    Plus siła przyzwyczajenia. Do tego otwierając notę katalogową wita człowieka "marne" 300 stron, a podręcznik programowania do STM32F4 to już 1300 i chociażby sterowanie portami ma znacznie więcej opcji w ARM. Nie jest to zdecydowanie obiektywny sposób oceny trudności użycia, ale dla wielu osób kluczowy.

    0
  • #10 15 Lut 2014 18:38
    0ceanborn
    Warunkowo odblokowany

    McMonster napisał:
    chociażby sterowanie portami ma znacznie więcej opcji w ARM.

    Tzn jakimi portami ? Jakie to daje korzyści ?

    0
  • #11 15 Lut 2014 18:40
    McMonster
    Poziom 32  

    Portami, czyli stanem na pinach wejścia/wyjście układu.

    0
  • Pomocny post
    #12 15 Lut 2014 21:36
    tmf
    Moderator Mikrokontrolery Projektowanie

    0ceanborn napisał:
    BlueDraco napisał:
    Na jakiej podstawie uznałeś, że 32-bitowe mikrokontrolery są droższe od 8-bitowych?

    Nooo w sumie to tylko moje przypuszczenia, zresztą z tego co widzę AVR są niezwykle popularne myślałem że z powodu ceny.
    BlueDraco napisał:
    Ja przesiadłem się kilka lat temu na Cortexy m.in. dlatego, że były tańsze od AVR (a przy okazji z 10 razy wydajniejsze i z mądrzejszymi peryferiami, w tymi większą liczbą timerów).

    Hmmm skoro ARM są tańsze do tego wydajniejsze i w ogóle super to gdzie tu jest haczyk skoro AVR są takie popularne ?


    Ceny jednych i drugich są porównywalne. W tej samej cenie zwykle ARMy są szybsze, AVRy zazwyczaj mają bogatsze peryferia. Na świecie jest kilka tysięcy różnych typów mikrokontrolerów, każdy ma swoje wady i zalety, każdy jest idealny i najlepszy do jakiegoś specyficznego zadania i zupełnie nie nadaje się do realizacji szeregu innych.
    Ale na popularność składa się wiele rzeczy:
    - AVRy są długo na rynku, ARMy zyskują na popularności dopiero od niedawna, w erze przedcortexowej były drogie, pokręcone i małopopularne.
    - AVRy mają doskonałe wsparcie (przykłady, setki stron na ich temat w necie, świetne fora, np. AVRFReaks), ARMy dopiero to rozwijają, informacji od użytkowników mało, dodatkowo każda firma ma swoje peryferia, zupełnie różne od innych, w efekcie ciężko przenosić przykłady, czy ogólnie dowiedzieć się jak to działa nie z noty procesora lecz od użytkowników.
    - AVRy mają kompletne IDE + toolchain dawane za darmo przez Atmela, ARMy mają firmowe IDE ale płatne lub bezpłatne plomby wymagające konfiguracji (wiedzy).
    A na końcu to wszystko i tak to samo, procesor to procesor, timer to timer, może być taki lub taki, jak zrozumiesz jeden to zrozumiesz wszystkie.

    0
  • #14 15 Lut 2014 22:08
    M. S.
    Poziom 34  

    Kolega napisał, że jest totalnie zielony więc lepiej zacząć od prostego mikrokontrolera, takiego, który szybko da widoczny efekt. Inaczej się zniechęci zanim poustawia porty, zapominając o ich włączeniu. Od jakiegoś czasu bawię się STM32 i nie wyobrażam sobie wejścia w te klocki gdybym nie miał doświadczenia z AVR'ami. Co do języka to startowałem od Bascoma. Na STM'y Bascoma nie ma więc, od tak bez bólu, przesiadłem się na C, mimo że AVR'y dalej programuję Bascomem. Uważam, że znajomość języka i umiejętność sprawnego programowania to 2 różne sprawy, przy czym sam język jest dużo mniej istotny. Wszak możesz umieć wszystkie słówka i nie umieć sklecić zdania.

    0
  • #15 15 Lut 2014 22:30
    tmf
    Moderator Mikrokontrolery Projektowanie

    piotrva napisał:
    ARMy mają bogatsze peryferia chyba chciałeś @tmf powiedzieć, ale AVRy mają je prostsze w obsłudze.
    Poza tym zgadzam się z przedmówcą.


    Właśnie niekoniecznie. Jeśli weźmiemy w tej samej cenie XMEGA i ARMa to zwykle XMEGA ma bogatsze peryferia (ma ich więcej, lub więcej powtórzeń tego samego) niż ARM, który oczywiście z racji rdzenia i taktowania jest za to zdecydowanie szybszy. Też mnie to zaskoczyło.

    0
  • #17 15 Lut 2014 22:47
    McMonster
    Poziom 32  

    Również jestem przeciwny polecaniu Bascoma na start. Ma sens tylko dla osób, które chcą osiągnąć szybko efekt, a nie planują większej liczby bardziej skomplikowanych projektów w przyszłości. Do tego w praktyce ogranicza tylko do AVR.

    0
  • #18 15 Lut 2014 23:41
    markoz7874
    Poziom 31  

    McMonster napisał:
    .. a nie planują większej liczby bardziej skomplikowanych projektów w przyszłości..

    Panowie.., człowiek jeszcze nie zaczął a Wy już piszecie o problemach w przyszłości ;)
    Jeszcze nie umie tabliczki mnożenia a Wy mu wybieracie kierunek studiów.

    Kolejny wątek na podobny temat i dyskusja rozwijająca się w podobny sposób.
    .. użycie wyszukiwarki pozwoliło by odnaleźć podobną dyskusję :)

    0