Sugestie dotyczące małego i poręcznego złącza do programowania w obwodzie?

21

Mam wiele płytek drukowanych, które wykorzystują AVR w opakowaniu SMD, a ponieważ często zmieniam oprogramowanie układowe w prototypowych płytach, staram się znaleźć najlepsze rozwiązanie, aby szybko i łatwo zaprogramować AVR.

Pierwszym podejściem było posiadanie standardowego nagłówka (2x5 pinów, .1 ") na płycie, ale ponieważ są one nieporęczne (dla rozmiaru płyt, z którymi mam do czynienia), zacząłem mieć tylko otwory kontaktowe bez lutowania nagłówek i wygiął szpilki nagłówka za pomocą szczypiec, aby móc „zatrzasnąć” go na płycie. Nie jest to optymalne rozwiązanie, ale zadziałało.

Następnym krokiem było użycie złotych palców (tzn. Jedna krawędź płyty odsłoniłaby niektóre kontakty, jak te stare płyty ISA, ale oczywiście tylko z kilkoma kontaktami). Problem polega na tym, że koszty zarządu rosną i nadal korzystają z wielu „nieruchomości”.

Wszelkie sugestie dotyczące małych + tanich + czystych alternatyw? Idealnie, bez konieczności lutowania czegokolwiek na planszy (jak złotymi palcami). Myślałem o kilku małych stykach na płycie i może o dwóch wyrównywających się otworach, jeśli istnieje złącze, które mogłoby się tam zmieścić i w jakiś sposób pozostało na miejscu podczas programowania.

BTW, chociaż standardowe złącze ma 10 pinów, tylko 6 jest wymaganych.

fceconel
źródło
Sugeruję, aby tytuł był bardziej ogólny. To pytanie nie jest specyficzne dla mikrokontrolerów Atmel. Co powiesz na: „Sugestie dotyczące małego i poręcznego złącza do programowania w obwodzie?”.
Dave.Mech.Eng

Odpowiedzi:

10

Spójrz na www.tag-connect.com . Dostarczają kable do programowania, które pasują do układu padu małej płytki. Uwzględnij układ na swojej planszy i cały zestaw.

Walter Greene
źródło
Właśnie tego szukałem, wielkie dzięki!
fceconel
15

Wybierz zestaw testowy, jeśli wybierasz się na produkcję.

Możesz łatwo do nich dotrzeć za pomocą szpilek pogo - wbijasz je w deskę do chleba we wcześniej określonych miejscach i po prostu dociskasz do niej swoją tablicę. Stosuję to podejście do ICSP Microchip całkiem dobrze - pozwala również umieścić tabliczki dotykowe niemal w dowolnym miejscu na płytce drukowanej - co upraszcza routing gęstych obwodów.

Adafruit ma ładną paczkę, ale można je również kupić u dystrybutora magazynu, takiego jak Digikey (USA) lub Farnell (UE).

http://www.adafruit.com/products/394


Dodano: Mój ulubiony sposób używania pinów pogo:

Weź 3 płytki drukowane urządzenia docelowego.

Płytka drukowana nr 1 jest docelową płytką drukowaną - zostanie zaprogramowana i należy ją w pełni wypełnić.

Płytka drukowana nr 2 to płytka prowadząca - wywierć otwory (wystarczająco duże, aby pomieścić główkę szpilki pogo) przez wszystkie pola testowe - jest łatwiejsze, ponieważ widzisz lokalizację. Jeśli to konieczne (na przykład brak otworów montażowych), wywierć również otwory na przekładki - poświęcasz tę płytkę drukowaną, jeśli martwisz się kosztem przy małej objętości, skopiuj projekt na pustą plastikową płytkę i użyj go zamiast.

Płytka drukowana nr 3 to podłączona płytka drukowana - ponownie wywierć otwory przez wszystkie podkładki testowe, tym razem wystarczająco duże, aby pasowały do ​​ogona szpilki pogo. Wywierć otwory na podkładki dystansowe - jest to również ofiarna płytka drukowana.

Przylutuj piny pogo do płytki drukowanej nr 3, na takiej głębokości, aby głowice wystawały 5 mm nad płytką drukowaną nr 2 za pomocą podkładek dystansowych. Przylutuj wszystkie wymagane kable.

Nałożyć taśmę elektryczną lub lakier izolacyjny na PCB2.

Wkręć elementy dystansowe, przykręć płytkę drukowaną nr 2 powyżej. Powinno to wyglądać tak, jakby wystające były tylko głowice szpilek pogo.

Naciśnij docelową płytkę drukowaną nr 1, wyrównując ją z płytką drukowaną nr 2.

Zysk :)

qdot
źródło
Czy wiesz z jakiego materiału są wykonane? Pytam, ponieważ nie byłoby praktyczne stosowanie elementów dystansowych, ale jeśli magnetyczny, mógłbym przytrzymać je w miejscu za pomocą magnesu po drugiej stronie płytki.
fceconel,
Nie przejmuj się elementami dystansowymi, w większości przypadków szpilki pogo mają wystarczająco dużo, aby poradzić sobie z płytką drukowaną pod niewielkim kątem. Liczy się to, czy można uzyskać prawidłowe dopasowanie płytki drukowanej do pinów.
qdot
1
Dodano sekcję o tym, jak używam pinów pogo w programowaniu na małą skalę (10+).
qdot
1
@qdot - Twoja metoda jest bardzo podobna do linii produkcyjnych pinów pogo Sparkfun , które zawierają kilka ładnych ilustracji dla tej metody. Ja osobiście nie lubię tego; ale mogę wysłać mój pogo pin do maszyny CNC, która wierci otwory w odpowiednich miejscach kawałkiem fenolu, który został przycięty do odpowiedniego kształtu dla mojej maszyny testowej :)
Kevin Vermeer
7

Odpowiedź udzielona przez @qdot jest dobra. Pomyślałem, że wspomnę, że widziałem, jak ktoś wdraża alternatywny projekt nagłówka programowania. Używał grubych szpilek pogo, które wydawały się lekko zwężać. Badana płyta miała duże, pokryte galwanicznie otwory / przelotki, które tworzyły odpowiedni kontakt z kołkami pogo w celu wykonania połączenia elektrycznego. Oznacza to, że kołek pogo może być włożony do galwanizowanego otworu i zapewniłby wystarczające, ale nie zbyt ciasne dopasowanie. Kilka pinów pogo wlutowano w płytkę drukowaną, tak aby pasowały do ​​przelotek na płycie testowej i łączyły się z nią. W ten sposób stworzył własne złącze pogo pin do połączenia z płytką testową. Wierzę, że wykonał tę pracę z platerowanymi otworami, w których można umieścić standardowy nagłówek ISCP o skoku 0,1 ". Zamiast lutować w nagłówku, po prostu skojarzył z nim swoje złącze pogo-pin i mógł przez to zaprogramować mikro. Wydawało mi się to bardzo wygodne. Próbowałem znaleźć zdjęcie tego, ale wydaje się, że jest to stosunkowo wyjątkowe podejście do tego problemu. Szpilki wyglądały mniej więcej tak jak na tym zdjęciu, ale miały stożek na sprężystej części szpilki, dzięki czemu pasowały ściśle do otworu przelotowego na testowej płytce drukowanej:

podobny kołek sprężynowy

http://search.digikey.com/ca/en/products/0906-4-15-20-75-14-11-0/ED8184-ND/1147052

To jest tak blisko, jak mogę znaleźć zdjęcie ilustrujące ten pomysł:

podobny system

https://www.mill-max.com/new_products/detail/22

Pomyślałem, że to interesujące, ponieważ w tym układzie piny pogo utrzymywały płytkę testową w miejscu oprócz zapewniania połączenia elektrycznego. Jeśli używasz kołków pogo, które dociskają podkładki, musisz również znaleźć sposób na ograniczenie płyty, tak aby jedyny stopień swobody był w kierunku uruchamiania kołka pogo i aby zapewnić ciągły lekki nacisk. To znaczy, że musisz zrobić urządzenie testowe. Metodą sugeruję, że nie musisz robić urządzenia testowego.

Dave.Mech.Eng
źródło
1
W mgnieniu oka możesz wbić kołki pogo bezpośrednio do gniazda żeńskiego (takiego jak na PicKit) i użyć tego 5-pogo urządzenia jako złącza kompresyjnego.
qdot
Niedawno użyłem części z serii, które podłączyłem w powyższym komentarzu, do programowania w środowisku produkcyjnym o niskim nakładzie. Zespoły pogo wymagają jednak lutowania rozpływowego na płycie programującej, co dla niektórych może stanowić problem.
B Pete,
Wydaje się obiecujące ... w zależności od wymaganego rozmiaru otworu może być lepszym rozwiązaniem niż szpilki pogo, ponieważ nie ma potrzeby, aby dodatkowe części utrzymywały go na miejscu. Kupię trochę i spróbuję.
fceconel,
5

Szukając rozwiązania tego samego problemu, natknąłem się na Pogo-Key , płytę open source do tworzenia klucza programowania opartego na pogo-pinach. Podobne do wspomnianych wcześniej Tag Connect, które możesz zbudować sam, ale bez szpilek rejestracyjnych lub nóg, które przypinają go do deski.

Brian Campbell
źródło
To naprawdę dobra tania alternatywa. Ale głównym problemem nie jest sposób zablokowania złącza na miejscu, to główny powód, dla którego zaakceptowałem odpowiedź tag-connect jako najlepszą. Sam próbowałem zrobić złącze ze szpilkami pogo, ale z tego powodu zrezygnowałem z tego pomysłu.
fceconel,
Jest to miła funkcja, choć marnuje trochę miejsca na desce w otworach, przez które przechodzą klipy. Wygląda na to, że klawisz pogo został zaprojektowany z myślą o naprawdę ograniczonej przestrzeni na płycie, na płycie wielkości przycisku.
Brian Campbell,
Rzeczywiście, idealnym rozwiązaniem byłoby zablokowanie go za pomocą narzędzia zewnętrznego w stosunku do płyty. Kiedyś myślałem o zaprojektowaniu modelu 3D nieco podobnego do spinacza do bielizny, do którego podłączono złącze pogo, i zamawiałem go w Shapeways, ale odradzałem go, gdy wiedziałem, że jest gotowy produkt.
fceconel,
(może należeć jako osobna odpowiedź), ale każdy, kto szuka tego typu rozwiązania z klipsem, dfrobot ma klip eClip ( tutaj dokumentacja ). konstrukcja pozwala na dołączenie dołączonych pinoutów + pogos dla niektórych standardowych rozmiarów, lub zaprojektować własną płytkę drukowaną pasującą do sprzętu i przełączać się między różnymi układami pinów. pliki szablonów znajdują się na github. Konstrukcja jest bardzo solidna, a przy większych szpilki pogo wspomniano tutaj , może pracować z pustymi wysianych otworów
overprescribed
3

Do ciasnych desek używam zestawu podkładek o wymiarach pasujących do listwy szpilkowej o rozstawie 1,27 mm, z otworami wystarczająco dużymi na szpilki. Do połączenia ręcznego używaj dość długich pinów (8-10 mm), a po prostu włóż szpilki i przytrzymaj je z naciskiem przyłożonym równolegle do płytki drukowanej, dzięki czemu sprężystość każdego z pinów zapewnia dobry kontakt z bokami platerowanych otworów.

mikeselectricstuff
źródło
1

Idź palcami bez złocenia. Dlaczego potrzebujesz wysokiej niezawodności złotych palców, kiedy złącze płytki będzie obsługiwane w czasie rzeczywistym? Aby nawiązać kontakt, użyj złącza krawędziowego płyty.

SteveR
źródło
Dzięki, zgadzam się, że powinno to obniżyć koszty, ale to nie jedyny problem. Bajka, z której korzystam, jest dodatkowa, gdy na krawędziach są kontakty, a także problem z przestrzenią zajmowaną przez palce.
fceconel,
1

W rzeczywistości nie potrzebujesz 6 pinów dla ISP, szczególnie jeśli możesz ponownie użyć połączeń zasilania płyty.

Oprócz odniesienia do podłoża potrzebujesz resetowania, zegara i dwóch kierunków danych, w sumie 4 lub 5.

W tym momencie możesz użyć jednorzędowego nagłówka, nielutowanego, i przytrzymać szpilki nagłówka pod kątem do płytki, aby zapewnić kontakt.

Zaletą tego w porównaniu z pinami pogo jest to, że piny nagłówka są bardziej trwałe, tańsze w wymianie (użyj gniazda na kablu i wymiennego luźnego paska pinów pomiędzy nimi) i są dostępne w większej gęstości.

Piny Pogo mają sens, gdy masz dużo połączeń do odebrania, musisz je zlikwidować dla operacji trwających dłużej niż kilka sekund lub gdy są one rozrzucone wokół planszy, a nie w wygodnym krótkim rzędzie. Ale wymagają zaprojektowania urządzenia.

Chris Stratton
źródło
6 pinów wynika z tego, że płyta nie jest zasilana w inny sposób po zaprogramowaniu (podłączyłem zasilanie do programatora AVR, aby móc po prostu podłączyć, zaprogramować i rozłączyć).
fceconel,
1
Rozumiem. Zawsze istnieje możliwość użycia klipsów aligatora lub grabberów lub zamierzonej wiązki przewodów zasilających. Wiele zależy od tego, ile z nich zostanie zrobionych przez to, jak ostrożny będzie technik - wielkość (lub wymaganie podwójnej linii) wskazuje na inwestowanie w starannie zaprojektowane przyrządy z pogosami, prototypowa skala wskazuje na proste, pragmatyczne, łatwe w utrzymaniu rzeczy jak pojedynczy liniowy nagłówek trzymany pod kątem.
Chris Stratton
1
OK, ale jest pewien haczyk: jeśli stracisz połączenie z jednym z pinów podczas programowania, ryzykujesz, że AVR znajdzie się w stanie niemożliwym do odzyskania (zrobiłem to dwa razy). Dlatego szpilki pogo stają się ważniejsze, aby mieć pewność, że tak się nie stanie.
fceconel
@ fceconel - dobra uwaga, trzymanie pod kątem to technika, której używałem raczej w przypadku CPLD niż AVR (do których do tej pory byłem w stanie uwzględnić rzeczywiste złącza)
Chris Stratton
@fceconel - „Unrecoverable”? Masz programistę w swoich rękach! To nie tak, że polegasz na bootloaderze. Przypuszczam, że możliwe jest, że utraciłeś połączenia zasilania i zasilasz AVR przez diody ochronne na stykach IO (które mogłyby go uszkodzić), ale uszkodzenie danych nie powinno stanowić problemu.
Kevin Vermeer