Ads_700x200

tme

sobota, 14 kwietnia 2012

Programator USBASP dwa napięcia 5V / 3,3V


Witam,

Wiem, że to kolejna konstrukcja USBASP, ale programatorów nigdy dosyć - tym bardziej, że USBASP łatwo zrobić we własnym zakresie. A tymczasem wpadłem sobie na taki dość też fajny sposób tego programatorka z buforami na wyjściu 74LVC125 dzięki czemu z marszu może ładnie działać z dwoma napięciami +5V oraz +3,3V



Co więcej - sam procek zasilam z 3,3V (stabilizator LM1117-3.3 na pokładzie), dzięki czemu procek jest dobrze odseparowany od szarpnięć napięcia podczas podłączania / odłączania od układów docelowych. To dla mnie ważne bo nie lubię jak mi się programator wiesza gdy muszę zaprogramować kilkanaście albo kilkadziesiąt płytek po kolei i co chwilę odłączać i podłączać programator z i do gniazda USB żeby się procek odwiesił ;) ..... Teraz nic go nie ima - zasilanie ma ze stabilizatora, a sygnały ISP są ładnie buforowane. Polecam takie rozwiązanie. Poniżej schemat.


Drugim ważnym i podstawowym celem dla mnie była jak największa możliwa dla mnie miniaturyzacja - jak widać na fotce poniżej PCB jest praktycznie wielkości karty pamięci SD ;) więc udało się.



Poza tym upatrzyłem sobie taką fajną miniaturową obudowę do USB po jakimś starym czytniku kart pamięci - no i postanowiłem pod nią zrobić PCB stąd taki a nie inny jej kształt - musiałem się dokładnie wpasować. Wprawdzie obudowę nieco musiałem dostosować - ale i tak wygląda jak oryginał - no i teraz co ważne już nie będę się obawiał o jakieś zwarcia gdy programator będzie plątał się na stole.

Na obudowę naklejam małą białą naklejkę żeby zakryć stare napisy. Fajnie się wkomponowały diody LED. W obudowie była już oryginalna dziurka na diodę LED 3mm więc ją dałem niebieską pod kolor obudowy i umieściłem dokładnie w tym miejscu gdzie trzeba. Pozostałe dwie diody to:

1. czerwona w lewym dolnym rogu - sygnalizuje proces programowania
2. zielona w prawym górnym rogu - sygnalizuje obecność napięcia na wyjściu - bo można je załączać oczywiście zworką wyprowadzoną na zewnątrz.


Projektu PCB nie będę zamieszczał - bo ma i tak za dużo przelotek z metalizacją żeby zrobić to sobie we własnym zakresie metodą żelazkową. Oto pozostałe fotki programatora ;) .....









43 komentarze:

  1. Widzę że Mirek w ogóle nie próżnujesz, rozpędziłeś się nieźle z artykułami na blogu. Czyżby książka daje Ci już odpocząć?

    OdpowiedzUsuń
  2. eeeh nie nie, właśnie teraz zagryzam zęby i żeby nie myśleć o problemach jakie mam w końcowej fazie (a muszę czekać niestety strasznie długo na korekty i redakcje) ..... to żeby nie myśleć i zapomnieć robię dużo różnych rzeczy - żeby zapomnieć .... ;) .... no a przy okazji to co zawsze planowałem czyli jakoś rozwinąć tego bloga i tą drogą także pomóc niektórym pasjonatom. Teraz powstaje zresztą hmmm mam nadzieję że okaże się że będzie przydatny - poradniko/kurs podstaw projektowania obwodów drukowanych dla takich AVR'ków a jednocześnie w tym samym taki nietypowy trochę kurs EAGL'a - takiego jeszcze nie widziałem w necie - więc jeśli uda mi się go zrealizować to myślę że też parę osób skorzysta ;)

    OdpowiedzUsuń
  3. Super! Ja na pewno skorzystam! Bo próbowałem się uczyć z wielu różnych kursów ale nie do końca sprawnie się w Eagle poruszam. A jak jeszcze dołożymy prawidłowe prowadzenie masy i filtrację zasilania to będzie super poradnik zapewne. Męczy mnie też zawsze szukanie elementów w bibliotekach :/ Jakaś podstawowa bilbioteczka by się przydała która każdy może sobie później rozwijać. Czekam wobec tego z niecierpliwością!

    OdpowiedzUsuń
  4. Witam serdecznie. Jest możliwość uzyskania wzoru PCB?
    Pozdrawiam Mariusz.

    OdpowiedzUsuń
    Odpowiedzi
    1. No przykro mi ale moje podejście od dawna jest takie, że:

      1. poświęcam mnóstwo czasu i staram się przekazywać skrupulatnie swoją wiedzę, żeby inni mogli się nauczyć tego co ja robię - chodzi tu zarówno o programowanie w języku C (książki czy porady na tym blogu albo na foru.atnel.pl). Chodzi także o metody projektowania obwodów z mikrokontrolerami jak i o sam program Eagle - proszę zobaczyć na najnowszy poradnik VIDEO w tym zakresie

      2. z drugiej strony nie udostępniam swoich własnych prac jako gotowców - przykro mi ale taką mam zasadę i jej nie zmienię.

      reasumując chyba lepiej się samemu nauczyć tak robić - niż bazować na gotowcu. Tym bardziej, że jak już się ktoś sam nauczy to potem z powodzeniem będzie już sam tworzył swoje własne kolejne pomysły/projekty itp

      a ja nie szczędzę przy tej okazji porad - i tego się trzymajmy proszę OK ?

      Usuń
    2. jeszcze jedna uwaga - tym się właśnie różnią moje strony, blogi itp od innych. Że nie podaję gotowych rozwiązań do skopiowania często bez zrozumienia dogłębnie jak TO działa - ale staram się nauczyć jak TO zrobić we własnym zakresie. Co nie oznacza, żebym krytykował podejście tych wszystkich, którzy dają gotowe rozwiązania! Broń Boże - wręcz przeciwnie, każdy ma prawo robić co zechce.

      Usuń
  5. Spodziewałem się takiej odpowiedzi. 1 % obstawiałem, że uda mi się uzyskać. Mając Pana ksiązkę, płytkę to 99 % szcześcia jak widać. Doceniam Pana prace. Nie było pytania, prośby.

    OdpowiedzUsuń
    Odpowiedzi
    1. Oglądaj proszę następne odcinki kursu Eagle - a jestem pewien, że po nich sobie sam będziesz radził z takimi płytkami OK ? ;) na prawdę postaram się wszystko zeznać w kursach co wiem.

      Usuń
  6. Od 8 lat wszystko robie w Protelu. Ostatnie kilka lat to Altium Designer Summer 2008. Eagle kusi mnie bardzo cały czas z kilku powodów: biblioteki (ogrom), wielkość zajmowanego obszaru na dysku, przystępny panel projektowy. Jak do tej pory kolega Markosik z elektrody nie namówił mnie do całkowitego projektowania w Eagle. Posiadam duży zbiór materiałów szkoleniowych i kursów do tego programu, przełamać się nie potrafię niestety. Niemniej jednak programato zaprojektuje w Eagle. Nie jest to tak skomplikowane abym poddał się. Wystarczy tylko usiąść do tego, i jak to się mówi złapać byka za rogi

    OdpowiedzUsuń
  7. Nie wiem wprawdzie czy to ten sam kolega anonimowy co wyżej - ale tak czy inaczej uważam za słuszne stwierdzenie na końcu - tym "złapaniu byka za rogi"

    Oczywiście - że Eagle to można powiedzieć super PIKUŚ przy takim czymś jak Altium itp ....

    ale trafnie podkreśliłeś - to, że do eagla po prostu się zasiada, szast-prast i gotowe .... no a jak ktoś chce kupić to i po kieszeni tak nie bije ;)

    OdpowiedzUsuń
    Odpowiedzi
    1. Tak tak kolego Mirku to ten sam kolega. Kolega myślał już o tym aby nie być "anonimem" chętnie bym miał jakiś login tutaj. Jednak jak mam gdzieś zakładać konto i miec moją skrzynkę zaśmiecaną to ..... . Nie wiem jak i kiedy znajdę czas ale pochwalę się moim pierwszym osiagnieciem w Eagle. Strach ma wielkie oczy a jako informatyk takie sprawy pochłaniam. Wystarczy tylko mieć czas i chęci.

      Usuń
  8. Czy będzie możliwość zakupu gotowego programatora oraz adaptera SD w sklepie Atnel?

    OdpowiedzUsuń
    Odpowiedzi
    1. Dostaję spore ilości zapytań w tej sprawie chociaż częściej w zakresie adapterka SD ;) - zobaczę pomyślę nad tym - ale na razie muszę dokończyć prace nad ukończeniem i wydaniem książki OK? więc proszę o chwilę cierpliwości.

      Usuń
    2. Na układy mogę poczekać. :)
      Na nową książkę czekam z niecierpliwością. ;)
      Mam nadzieję, że w przyszłości również do nowej książki będzie można nabyć opisane w niej układy (np. jako dodatkowe moduły do ATB rev. 1.0x).

      Usuń
    3. Właśnie też równocześnie nad tym pracuję - mam nadzieję że uda mi się razem z książką nową - przedstawić w sklepie kilka nowych ciekawych propozycji - będzie też sporo z dźwiękiem ;)

      Usuń
  9. Co to za typ złącza w Eagle wyprowadzony za LED2?

    OdpowiedzUsuń
    Odpowiedzi
    1. To nie żaden typ złącza a moje własnej produkcji zworki SMD na PCB, i własny element biblioteczny ;) - na płytce widoczne masz to tutaj:

      http://obrazki.elektroda.pl/5232917400_1334958960.jpg

      Usuń
  10. Którą z wersji wsadu z strony http://www.fischl.de/usbasp/ należy zaprogramować procesor?

    OdpowiedzUsuń
    Odpowiedzi
    1. zdecydowanie tą wersją:

      usbasp.2009-02-28.tar.gz (260 kB)

      tyle że ona nie obsługuje TPI, w tym celu trzeba byłoby poszukać i pokombinować z wsadami udostępnionymi i zmodyfikowanymi przez kolegę o nicku BoskiDialer na elektrodzie.

      Ale ten wyżej wymieniony wsad na 1000000% działa poprawnie w przeciwieństwie do najnowszego niestety, który ma małego BUG'a i jeszcze nie poprawionego :(

      Usuń
  11. Witam serdecznie. W schemacie jest zawieszka "Label" RST podłączona pod wejście procesora reset, pod co jest ona podłączona dalej ?

    OdpowiedzUsuń
    Odpowiedzi
    1. Dobre pytanie ;) ... sam chwilę szukałem wzrokiem i przypominałem sobie po co tę etykietę wyprowadziłem. I rzeczywiście na tym schemacie nie jest ona już nigdzie więcej użyta, więc dlaczego jest ?

      A no bo w pierwszej wersji tego schematu robiłem jeszcze 6-pinowe złącze goldpin, które chciałem pierwotnie osadzić na PCB żeby móc programować w ogóle procesor bo jest w SMD ;) .... ale szybko się okazało że miejsca na PCB nie będę miał na taką ekstrawagancję i zrezygnowałem z tego złącza, usunąłem więc je ze schematu i potrzebne labele, za to niechcąco zapomniałem usunąć tego jednego labelka RST ;) dlatego pozostał.

      Ale czy to oznacza że nie zrobiłem złącza do programowania procka ? Ależ nie - zrobiłem ale już nieco inaczej i wyłącznie za pomocą manipulacji VIA'sami na PCB - po prostu dałem w wygodnym dla mnie rozstawie 6 przelotek ale o DRIL'u 1mm tak żeby można było włożyć specjalnie na potrzeby tego programatora, przygotowaną wtyczkę i go programować.....

      a RST jak mówię zostało po tych operacjach ;)

      Usuń
  12. Mam pytanie odnośnie uP. Wersja na 3,3V pracuje do 8MHz. Na schemacie jest kwarc 12 MHz. O co chodzi?

    OdpowiedzUsuń
    Odpowiedzi
    1. Chodzi o to, że procesor jest lekko przetaktowany po prostu. A takie przetaktowanie nie ma żadnego najmniejszego wpływu na jego poprawną pracę. Dodam jako ciekawostkę, że przy napięciu zasilania 3,3V odpalałem procki ATmega32 nawet na 27MHz i nadal dobrze pracowały ;) .... Dlatego 12MHz to jest absolutnie bezpieczna granica i bardzo często wykorzystywana w różnych projektach - nie tylko moich. Jak coś to spójrz sobie np na rozwiązania z Ethernetem ze stronki www.tuxgraphics.com

      Usuń
  13. Odnośnie typu złącza (pytanie z 20-04)bardzo podobne elementy są gotowe w biliotece jumper.

    OdpowiedzUsuń
    Odpowiedzi
    1. Wiem, wiem ale one nie są tych rozmiarów i kształtu co moje - a ja miałem w tym przypadku wyżyłowane wymagania co do miniaturyzacji. Tamte są sporo większe.

      Usuń
  14. Właśnie skończyłem wykonanie tego programtorka kolego Mirka. Dzięki jego uprzejmości szybko stałem się posiadaczem konwerterka napięć. Nie bawiłem się w super miniaturyzację - wymiary wyszły mi: 30x48mm. Płytka była pierwszym udanym podejściem do metody fotochemiczej z wykorzystaniem laminowanej folii światłoczułej. Progrmatorek świetnie śmiga tak na 5 jak i 3.3V - a tego mi właśnie brakowało.

    Mirku mam jeszcze pytanie Czy i co planujesz z wykorzystaniem pinu 26? Te zworki?

    OdpowiedzUsuń
    Odpowiedzi
    1. No to cieszę się że wyszło. Tak planuję - ta zworka jest zostawiona na zaś - ale jeszcze nie miałem czasu pobawić się przeróbką wsadu. Jak zrobię to dam znać ;)

      Usuń
  15. O co chodzi ze zworką w pinie 26? Miałeś dać znać jak przerobisz wsad a pewnie jest już przerobiony

    OdpowiedzUsuń
    Odpowiedzi
    1. Przykro mi, niestety nadal nie miałem czasu się tym zająć :(

      Usuń
    2. Można zastosować 74hc125 czym on się różni od zastosowanego tutaj?

      Usuń
    3. No mocno się różni i w tym konkretnym schemacie wręcz nie można zastosować serii HC, zwróć uwagę na jego zasilanie 3,3V. Można wprawdzie użyć 74HC125 ale trzeba znacznie przerobić schemat i zmienić sporo tę ideę działania buforowania. Dlatego zdecydowanie polecam takie rozwiązanie ze scalakiem LVC, coś takiego:

      http://www.sklep.atnel.pl/pl/p/74LVC125/33

      Usuń
  16. Myślałem nad takim czymś:
    http://obrazki.elektroda.pl/5163949400_1359843111.png
    Tylko czy mój schemat będzie działać?

    OdpowiedzUsuń
    Odpowiedzi
    1. Pomijam już te kosmiczne rezystory 10K ale weź ty popatrz co tam narobiłeś .... to nie ma prawa działać :(

      Usuń
    2. Sam się zastanawiam co ja zrobiłem. :) Może to późna pora.

      Schemat poprawiłem. Teraz ma to prawo działać?
      http://obrazki.elektroda.pl/7006337100_1359923433.png

      Usuń
    3. Tak teraz wygląda że jest OK ;) .... takie coś powinno również działać.

      Usuń
  17. A jakie napięcie trzeba podać na nóżkę 14-tą układu 74125? 5V czy 3,3 V?

    OdpowiedzUsuń
    Odpowiedzi
    1. Po pierwsze widać to na schemacie, po drugie widać to w nocie PDF scalaka .... no oczywiście że 3,3V

      Usuń
  18. Chciałbym zapytać, bo nie widzę żadnej zworki "self programming", czy można dodać od pinu RST zworkę do minusa? bo SMD to trochę ciężko zaprogramować "w powietrzu"

    OdpowiedzUsuń
    Odpowiedzi
    1. Jestem początkujący ale już zdążyłem się przejechać na programatorze za 15zł, co się okazało miał problemy sam ze sobą i który po całym dniu walk odesłałem ;-) Nie mam pieniędzy na kupno ATB i chciałbym zrobić sobie dobry programator sam.

      Mam pytanie odnośnie zworki "Self Programming". W układach bez bufora ta zworka zwiera bezpośrednio RST ze złącza Kanda razem z pinem RST w Atmega8. Stąd pytanie czy zrobić to w ATB USBasp tak jak napisałem czy podpiąć się przed buforem, czyli do nóżki nr 2 w układzie 74LVC125 i ją zewrzeć zworką z RST uC na czas self programming?

      Pytanie nr 2 do czego służą zworki Z3 i Z4 ? W innych układach np. AVT5325 nie ma zworki ZW3..

      Ostatnie pytanie: czy wykonując układ z powyższego schematu Pana Mirka i wgrywając HEX z fischl.de wszystko będzie działać ? Bo np. we wspomnianym kicie AVT piny 1,4,10,13 są połączone poprzez rezystor z zasilaniem 5V a tutaj z PC1 (ADC1) a tam jest polecane wgranie wsadu własnie z fischl.de. Przecież w instrukcji ATB pisze, ze firmware jest modyfikowany stąd moje pytanie czy po zrobieniu tego programatora i wgraniu wsadu niemieckiego układ będzie pełnosprawny jak wymyślił Pan Mirek?

      Pozdrawiam, Bartłomiej.

      Usuń
    2. Na początek zrób sobie bez tego LVC125 i zobacz o co przede wszystkim chodzi, będzie działać ...

      Usuń
  19. Może i jestem uparty jednak staram się kierować taką zasadą, że jak coś robić to dobrze ;-) Zwłaszcza, że w tym przypadku jeśli chodzi o wykonanie płytki mogę liczyć na pomoc mojego bardziej doświadczonego kolegi, koszt i skomplikowanie w porównaniu nieznacznie większe, a programatorów nie zamierzam robić w kilku egzemplarzach ;-)

    Po uważnym przeczytaniu instrukcji obsługi zauważyłem, że wyprowadzone są dodatkowe pady do aktualizacji firmware, co wynika myślę z tego jak przeczytałem na innym forum, że bufory są jednokierunkowe. Więc te pady są bezpośrednio podłączone z pinami MOSI, MISO, SCK, GND, VCC i AVCC w Atmedze8A ?

    Napisane było też w tej instrukcji, że zasilanie na czas aktualizacji firmware trzeba podłączyć z zew. programatora. Ma to być 3.3V czy 5V (na schemacie 3.3V jednak wolę spytać bo w dwóch "standardowych" programatorach, z którymi miałem do czynienia jest 5V na wyjściu) ?

    W mojej nauce idę tokiem książki (jestem dopiero na początku) a także równolegle z książką uczę się i wykonuję proste układziki z filmików na YT. Na 1. czy 2. filmiku dla początkujących mówił Pan, że jeśli ktoś będzie chciał zrobić sobie programator z buforem to może liczyć na Pana pomoc :-) Tak przy okazji możliwości kontaktu z Panem powiem, że jestem bardzo zadowolony z tych form nauki, bo wszytko jest tłumaczone "jak chłopu na miedzy", zarazem ogarnięte (np. AVGuides), usystematyzowane w jednym miejscu i robione przez człowieka, który wie co robi, co bardzo sobie cenię pośród natłoku innych kursów, stron czy blogów i ogólnego zagubienia chyba typowego dla początkujących. Dla mnie absolutna rewelacja ;-)

    Bartłomiej

    OdpowiedzUsuń
    Odpowiedzi
    1. podczas programowania wsadu w programatorze normalnie zasilamy go z +5V

      Usuń