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

Sprzęt do nauki i programowania

michal0296 12 Sty 2012 17:23 3043 11
  • #1 12 Sty 2012 17:23
    michal0296
    Poziom 10  

    Witam, chciałbym zacząć naukę programowania i pisania programów dla mikrokontrolerów AVR.
    Mam takie pytanie czy taki zestaw http://allegro.pl/kurs-bascom-najpotezniejsza-evb-4-3-atmega644p-i2044425323.html i do tego jeszcze http://allegro.pl/nowosc-programator-isp-avr-usb-stk500-atmel-i2044425325.html
    będzie dobry żeby nauczyć się programować i wykorzystać w przyszłości do jakiś innych projektów?
    Z góry dziękuję i pozdrawiam michal0296

    0 11
  • #2 12 Sty 2012 20:34
    tmf
    Moderator Mikrokontrolery Projektowanie

    O ile programator wydaje się być ok. to za ponad 200zł kupisz coś lepszego niż ta pokazana płyta rozwojowa. W każdym razie kupisz sobie stykówkę, LCD, procesor i wiele innych rzeczy o łącznej funkcjonalności znacznie ciekawszej. Aha, IMHO zapomnij o tworze znanym BASCOM, to coś wymiera nawet na tym forum. Skoro rozpoczynasz naukę to zacznij od standardu, czyli C. Przy okazji poczytaj to:
    http://mikrokontrolery.blogspot.com/

    0
  • #3 12 Sty 2012 22:04
    mirekk36
    Poziom 42  

    A ja jednak śmiało poleciłbym taki zestaw uruchomieniowy - bo jednak posiada on dobry stosunek ceny do jakości.

    Za to potwierdzę, że warto także zwrócić uwagę na język C ale dla mikrokontrolerów, szczególnie teraz gdy na rynku masz nie jedną książkę na ten temat i można się z nich sporo nauczyć.

    Ja polecę jeszcze ten link:

    http://mirekk36.blogspot.com/2011/05/zestaw-uruchomieniowy-czy-zakup-czesci.html

    albo ten:

    http://mirekk36.blogspot.com/2011/05/wybor-jezyka-programowania.html

    0
  • #4 12 Sty 2012 22:44
    janbernat
    Poziom 38  

    Płytka uruchomieniowa jest dobra.
    Zwłaszcza jak jest dobra.
    Ale- czego mi brakuje na takich płytkach- nie tylko z Andtech-u.
    Wyprowadzeń pinów masy i zasilania w ilosci goldpinów kilkunastu- zwłaszcza masy.
    Podwójnego wyprowadzenia wszystkich pinów z portów.
    Spróbujcie podczepić do tego oscyloskop albo/i miernik.
    Toż to trzeba być ośmiornicą żeby trzymać sondę i kręcić gałkami.
    Jak wyprowadzić/wprowadzić sygnał z zewnętrznego urządzenia- a takie kiedys będzie albo z płytki stykowej albo uniwersalnej- jak coś sobie na niej wlutujemy.
    Jakieś pola lutownicze by się przydały- no bo coś chcemy bardziej trwale zrobić albo na wszelki wypadek.
    Już szukałem kabelków z podwójnymi wyprowadzeniami- może komuś się by chciało-zrobić ale nie ma.
    No nie ma niestety ideału.
    Najbardziej mnie irytuje podłaczenie oscyloskopu.
    Na płytce stykowej jak wczepię sondę to jej masa powoduje że wyciąga mi element z płytki.
    Do uruchomieniowej- nie ma jak się podczepić.
    No nie ma sprawiedliwości na tym świecie...

    0
  • #5 12 Sty 2012 23:33
    gaskoin
    Poziom 38  

    janbernat napisał:

    Najbardziej mnie irytuje podłaczenie oscyloskopu.
    Na płytce stykowej jak wczepię sondę to jej masa powoduje że wyciąga mi element z płytki.
    Do uruchomieniowej- nie ma jak się podczepić.
    No nie ma sprawiedliwości na tym świecie...


    Ja wpinam się lużnym kabelkiem do układu i jego końcówkę łapię razem z sondą krokodylkiem :) Trochę to pewnie psuje jej parametry ale przynajmniej nie muszę jedną ręką trzymać 10 rzeczy.

    0
  • #6 12 Sty 2012 23:55
    janbernat
    Poziom 38  

    No to niedokładnie napisałem.
    Masa fizyczna sondy jest duża w porównaniu z masą opornika/kondensatora czy czegoś tam jeszcze.
    No i wyciąga mi ten element.
    Albo zwiera sąsiednie piny na listwie goldpinów.
    Bo krokodylkiem to można się jednak podczepić do jakiegoś goldpina czy drucika- wpiętego w płytkę stykową czy wlutowanego w pole lutownicze.
    Tak jakby te płytki projektowali ludzie którzy nic na tym nie robili albo projektujacy płytkę tylko pod swoje przykładowe programy.
    Trochę to przypomina o róznicy dyskusji między krytykami malarstwa a malarzami w XIXw.
    Ci pierwsi wymieniali poglądy o róznicy stylów i kolorów.
    A malarze wymieniali poglądy- gdzie kupic dobre płótno a gdzie ramy albo gdzie farby są lepsze i tańsze.

    0
  • #7 13 Sty 2012 10:46
    tmf
    Moderator Mikrokontrolery Projektowanie

    Tu muszę koledze przyznać rację. Ostatnio próbowałem podpiąć sondę do masy i na wyprowadzonych goldpinach krokodylek robił zwarcie, w końcu podpiąłem się do obudowy kwarcu (super profesjonalne rozwiązanie).
    Ale nieco rozwinę swoją wcześniejszą wypowiedź, bo dyskusja się wywiązała, a jak widzę Mirek nawet na blogu specjalny wpis stworzył :)
    Nie żebym był przeciwnikiem płytek rozwojowych, sam takie mam i sobie chwalę. Tylko, że trzeba się zastanowić czemu ta płytka ma służyć. Jeśli to jest płytka na której oprócz procesora są dwa układy w DIL08 i 4 wyświetlacze 7-segmentowe, tudzież LCD alfanumeryczny, to IMHO to nie ma sensu, bo to nawet na stykówce nie będzie żadna plątanina kabelków. Natomiast warto kupić płytkę, która ma np. zamontowaną pamięć zewnętrzną SRAM (bo to naprawdę pełno połączeń, w dodatku krytycznych), płytkę ze złączem do LCD-TFT (bo to znowu sporo połączeń), najlepiej, żeby miała wyprowadzenia umożliwiające umieszczenie na stykówce, wtedy łatwo sobie dodać potrzebne układy.
    Wynika z tego, że warto kupić płytkę z jakimś wypaśniejszym procesorem, np. M128 lub lepszym. Taką płytkę wykorzysta się zawsze, nie tylko na początku swojego rozwoju, bo mamy wszystkie podsystemy charakterystyczne dla rodziny ATMega, w efekcie możemy łatwo tworzyć program, który po minimalnych przeróbkach ruszy na każdej ATMedze. W dodatku mamy JTAG, który uważam, dla początkujących, jest super rozwiązaniem. Nieporozumieniem uważam, że są płytki z M8, bo one nic nie wnoszą niezależnie od tego jak bogate mają otoczenie. Po początkowej zabawie z migającymi LEDami, paroma przyciskami i wyświetlaniem paru napisów można je wrzucić do kosza. Także np. podoba mi się koncepcja płytek Atmela z serii XPlained, proste, mają te elementy, które są praktycznie niemożliwe do podłączenia na stykówce, ma się też goldpiny do podpięcia elementów dodatkowych, np. na stykówce. Podobają mi się też inne malutkie płytki któe zawierają np. procesor, kwarc, stabilizator i jakieś lementy zewnętrzne np. pamięć dataFLASH, itd. + wszystko wyprowadzone na goldpinach. Wtedy sobie można stworzyć hybrydę na miarę swoich potrzeb.

    0
  • #8 13 Sty 2012 11:07
    mirekk36
    Poziom 42  

    Ja też nie chcę negować opinii kolegów wyżej - bo każdy jak widać lubi co innego. I dobrze, że na rynku jest taki wybór różnych zestawów - bo każdy sobie coś wybierze dla siebie. Byłaby to zgroza gdyby były tylko płytki stykowe bo ktoś odgórnie jak np w Korei Północnej uznałby, że to jest jedynie słuszna droga. Ja na przykład uważam, że na dobrym zestawie powinny być najczęściej używane elementy a nie jakieś tam nietypowe. Czyli właśnie wyświetlacz LCD (który wręcz jako debuger poza UART'em można wykorzystywać, ale i wyśw. LED, jakiś RTC, odbiornik czy nadajnik podczerwieni (dla mnie to akurat podstawa podstaw odb. IR), karta pamięci, dobra przejściówka USB/RS232 ale i coś dla RS485. Poza tym jakieś ze 2-3 słicze, i inne .... Takich rzeczy używam na co dzień w prototypowaniu różnych rzeczy, i gdybym miał co chwilę na stykówkach każdy z tych modułów sobie podłączać to wolałbym sobie w nogę strzelić. Ale ok - każdy lubi coś innego - ja opisałem to co ja lubię i nikomu nie narzucam tego zdania.

    Za to absolutnie nie rozumiem tych narzekań na połączenia masy oscyloskopu z zestawem. Miałem przyjemność pracować z takim Panem Ryszardem, elektronikiem starszej daty. On by się tu uśmiechnął tylko pod nosem. Żeby z takich rzeczy robić problemy - rodem z piekła ? Panowie .... panowie....

    Prawie każdy zestaw ma przynajmniej jedno złącze śrubowe które podłączone jest do GND - cóż za problem tam się podpiąć. Nawet gdyby nie to cóż za problem zrobić sobie ze zwykłego krótkiego przewodu połączeniowego coś czym można nakarmić waszego krokodylka. Rozumiem - że już bez krokodylków to w dzisiejszym świecie nie da się nic zrobić tak ?

    To tak trochę pół żartem pół serio oczywiście ale jednak myślę, że dobrze pokazuje taki hmmm niby problem - całe to zagadnienie.

    0
  • #9 13 Sty 2012 12:06
    tmf
    Moderator Mikrokontrolery Projektowanie

    Mirek, to nie problem, chodzi o to, że kupując zestaw z definicji uruchomieniowy, kupuje go m.in. po to, żeby mieć wygodnie. Jasne, że mogę sobie drucik dolutować, ale przecież nie o to chodzi. Projektant powinien zaprojektować pole stykowe do tego celu, tym bardziej, że jak piszesz na niektórych płytkach tak jest. Dla mnie nie jest to czynnik dyskwalifikujący, ale obecność takiego pola to dodatkowa zaleta. Szczerze przyznam, że do tej pory na ten szczegół nie zwracałem uwagi, ale właśnie ostatnio miałem taki problem z XPlained, gdzie właśnie musiałem się wpinać krokodylkiem do obudowy kwarcu. To też wynika może ze specyfiki tego co robię, jak mam elementy w 0403 i goldpiny wykorzystane w 100% bo płytka wchodzi w kolejną to do tej masy niełatwo się dostać. Tym bardziej, że przy dokładnych pomiarach nie chodzi o byle jaką masę. Tu zresztą akurat twórcy np. XPlained się popisali, bo stosowne pola udostępnili, tylko znowu tak jak pisze kolega janbernat trzeba czasami być ośmiornicą.
    Co do innych rzeczy to pełna zgoda, też uważam, że najważniejsza jest różnorodność, nie ma tak, że one size fits all. Co nie znaczy, że nie mam innego zdania na pewne rzeczy. IMHO obecność najczęściej używanych układów na płytce wcale nie jest zaletą. Właśnie dlatego, że są to elementy powszechne. Nie mam potrzeby prototypowania np. alfanumerycznego LCD bo mam gotowe, sprawdzone biblioteki. Jak go w projekcie użyję to je dołączam i nie ma co tu testować. Podobnie jest z wieloma innymi rzeczami. Owszem LED czy LCD jako wbudowany debugger się przydaje, ale tu znowu piszę z własnej perspektywy. Będąc uzbrojonym w JTAGi wszelakie nie mam żadnej potrzeby takiego debugowania na około. I takie rozwiązanie polecam innym, bo jest najlepsze. Może trochę droższe i to rozumiem, dlatego też nie twierdzę, że jest to rozwiązanie jedyne :)

    0
  • #10 13 Sty 2012 16:34
    maniek.1989
    Poziom 2  

    Witam,

    Jak chcesz zacząć programować, to oprócz "sprzętu" kup książkę. Z mojego doświadczenia gotowe przykłady i łopatologiczny opis programu ułatwiają sprawę i zrozumienie zagadnienia. Są dwie naprawdę dobre książki do nauki programowania od podstaw "Język C dla mikrokontrolerów AVR Od podstaw do zaawansowanych aplikacji " oraz "Mikrokontrolery AVR, język C, podstawy programowania" Pana Mirka :D. Ja na twoim miejscu uczyłbym się programować w C, a nie w BASCOM.

    0
  • #11 13 Sty 2012 17:35
    sorex86
    Poziom 15  

    Ja polecam jeszcze jedna rzecz, która jest pomijana. Z praktycznego punktu każdy na ogól buduje sobie mniejsze moduły, które potem podłącza do płytki testowej(EvB itd). Z czasem zaczyna nam brakować tego co wydaje się na mniej istotne: połączeń między gold pinami.

    A wystarczyć wejść na allegro/ebaya.. i wpisać coś w stylu:

    male to male lub male to female shield
    kable/przewód goldpin

    potem dokupujesz lub budujesz moduły na pcb lub na stykówce: lcd 3310, ethernet, 4x4 matryca przycisków itd.

    Najpierw skup się na nauce programowania. Staraj się wyeliminować potencjalne błędy sprzętowe. Na ogól jest tak, że ludzie podchodzą ambitnie, wszystko sami robią, tworzą,. aż im zapału braknie.. do czasu aż spędzają 1-2 dni nad szukaniem błędu w kabelkologii. Zaletą gotowych elementów jest fakt jak coś nie działa masz wtedy pewność, że to program. W końcu chcesz się nauczyć programować, a nie tracić czas. Prędzej czy później i tak się spotkasz z błędami typu: zimny lut, przerwa w kablu itd Jednak lepiej przerzucić te problemy gdy już będziesz pewny, że programy, które piszesz działają poprawnie. Wtedy wiesz, że problem nie jest soft tylko hardwear. Jak wiesz gdzie szukać problemu to połowa sukcesu.

    Jak to mówią Ci od zarządzania, jak nie potrafisz rozwiązać jakiegoś problemy przerzucić go na kogoś doświadczonego (gotowy zestaw uruchomieniowy, książka) lub odłóż w czasie. A nóż wtedy już będziesz potrafił go rozwiązać.

    Obecnie mam płytkę EvB, do której mam podłączone 5 modułow na SPI. Na dodatek musiałem jeszcze użyć konwerterów z 5V na 3.3V do tych urządzeń. Efekt jest taki, że pająk, który powstał wykorzystuje koło 50 kabelków. Po 2 dniach udało mi się napisać program, który mnie zadowala. Teraz siedzę i projektuję płytkę PCB próbując rozsądnie
    rozmieścić elementy. Zanim ją wytrawię, zlutuję i przetestują to minie kilka dni. A tak mam przynajmniej pewność, że gdy mi się uda ukończyć to co najbardziej monotonne: wytrawianie, lutowanie (te czynności raczej nie są "rozwojowe") wszystko będzie działać.



    ---
    Co mnie irytuje w pyłkach testowych:

    - pojedyncze wyjścia goldpinów
    - wolałbym zamiast goldpinów listwy, takie jak są w arduino(żeńskie). Wtedy wystarczy zwykła skrętka podczas budowania pająka na stykówce...
    - brak możliwości wyboru trybu pracy zasilania procesora 5V czy 3.3V
    - brak konwerterów 5 na 3.3
    - brak pola do lutowania

    No ale jak to mówią, jak się nie podoba to zrób sam :< :D

    0
  • #12 13 Sty 2012 20:12
    michal0296
    Poziom 10  

    Dziękuję za wszystkie odpowiedzi, na pewno kupię jakąś książkę, poszukam czegoś co spełni moje oczekiwania. Co do płytki i programatora zdecydowałem się na te, które są w pierwszym poście. Jeszcze raz dziękuję za pomoc
    Pozdrawiam michal0296

    0