logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Optoizolowany programator AVR

manekinen 22 Sie 2009 14:24 13150 19
REKLAMA
  • Optoizolowany programator AVR

    Programator może się pomyślnie komunikować z układami AVR zasilanymi już od 1.8V, i aż do 6V, i o różnicy potencjałów do 2.5kV. Czegoż więcej chcieć? Rolę izolatora pełnią transoptory 6N137 znajdujące się na liniach MOSI, MISO, i SCK. Są to szybkie transoptory, o przepustowości do 10mbit/s. Na linii reset znajduje się zwykły transoptor typu PC817. Do strony “wtórnej” z układu docelowego należy doprowadzić jego napięcie zasilania. Za pomocą zworki JP1 można połączyć masę obydwu stron jeśli nie jest wymagana izolacja, zworką JP2 można połączyć linie zasilające aby zasilić układ docelowy z programatora, a zworką JP3 włączamy programowanie układów z zegarem poniżej 1.5MHz. Z początku miała być to izolacja galwaniczna ale ze względu na trudnodostępność odpowiednich układów zdecydowałem się na izolację optyczną – a z pomocą przyszedł mi ten wątek. Usunięte zostały niepotrzebne linie Rx i Tx z racji tego że autor przez 4 lata nie wprowadził ich obsługi, i raczej się na to nie zapowiada. Usunięta też została zworka self-programming zajmująca miejsce, aktualizując firmware raz do roku można się pofatygować i zewrzeć linie ręcznie. Tutaj znajdue się szerszy opis programatora, a tutaj strona autora wraz z najnowszym firmware i innymi wersjami programatora. Płytka została przystosowana do pudełeczka po tzw. samplach.


    Optoizolowany programator AVR Optoizolowany programator AVR Optoizolowany programator AVR Optoizolowany programator AVR

    Optoizolowany programator AVR Optoizolowany programator AVR Optoizolowany programator AVR Optoizolowany programator AVR

    Optoizolowany programator AVR Optoizolowany programator AVR




    Nowością natomiast ( w firmware 2009.02.28 ) jest programowe wybieranie prędkości programowania, nie używając żadnej zworki, z poziomu avrdude można wybrać jedną z 12 prędkości SCK. Od 500Hz do 1.5MHz! Wyboru dokonujemy za pomocą dodatkowego przełącznika “-B wartość“. Więc od teraz można zaprogramować nawet układ z ustawionymi fusebitami 32KHz /8 (zegar 4096Hz), a wybierając prędkość 1.5MHz (wymagany zegar 8MHz) układ zaprogramujemy 4 razy szybciej niż w poprzedniej wersji firmware (375KHz). Poniżej znajduje się spis dostępnych prędkości (przykładowe użycie “-B 40.00″ da nam prędkość 32KHz). Aby skorzystać z tego udogodnienia, należy przekompilować avrdude wraz z patchem avrdude.diff lub pobrać już przekompilowany w załączniku (dzięki Tomasz). Podane niżej liczby mają niewielki rozrzut w skrajnych wartościach, avrdude zawsze wyświetli informację z jaką prędkością rozpoczyna programowanie.

    mniej niż 0.5 lub w ogóle – ustawienie domyślne zworką
    0.5 – 1.0 -> 1.5 MHz
    1.0 – 2.0 -> 750 kHz
    2.0 – 4.0 -> 375 kHz
    4.0 – 8.0 -> 187.5 kHz
    8.0 – 20.96 -> 93.75 kHz
    20.96 – 46.88 -> 32 kHz
    46.88 – 93.75 -> 16 kHz
    93.75 – 187.5 -> 8 kHz
    187.5 – 375.0 -> 4 kHz
    375.0 – 750.0 -> 2 kHz
    750.0 – 1500.0 -> 1 Khz
    więcej niż 1500.0 -> 500 Hz

    UWAGA! Jeśli chcemy naprawdę używać programatora przy układach o różnicy potencjałów do 2.5kV, należy starannie odizolować obie połówki po stronie druku, zwracając szczególna uwagę na pady zworek do łączenia zasilania i masy. Są one bowiem bardzo blisko siebie, należy umieścić między nimi kawałek izolatora, a przy samym programowaniu także włożyć kawałek izolatora pomiędzy piny od strony elementów. Piny te są oddalone od siebie zaledwie o 1.5mm, więc przy wyższej wilgotności powietrza zachodzi wysokie ryzyko przebicia. Układ nie był testowany z takimi napięciami, i nie ponoszę żadnej odpowiedzialności za ewentualne szkody – robisz to na własne ryzyko!


    W załączniku projekt płytki eagle, projekt płytki PDF, nowy firmware, nowe sterowniki (opcjonalnie) Co do nowszych sterowników czytać tutaj -> https://www.elektroda.pl/rtvforum/topic1276935.html

    Urządzenie powstało już w kwietniu, i od tamtej pory nie było ani jednego problemu z programowaniem, ostatnio dużo programowałem przy napięciach 2V (mega88v).
    Załączniki:
    • usbasp_opto.rar (685.86 KB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    manekinen
    Poziom 29  
    Offline 
    manekinen napisał 1629 postów o ocenie 2361, pomógł 76 razy. Mieszka w mieście Kętrzyn. Jest z nami od 2006 roku.
  • REKLAMA
  • #2 6921554
    Konto nie istnieje
    Poziom 1  
  • REKLAMA
  • #3 6921576
    REVISOR
    Poziom 25  
    Posty: 701
    Pomógł: 58
    Ocena: 56
    Obudowa zapewne po samplach Maxima, układ bardzo przydatny, zwlaszcza jak się nie chce uwalić usb w drogim komputerze. Przyłączam się do pytania: jak został wykonany opis na płytce?
    Poza tym jak sam autor pisze przydało by się zadbać o odstęp pomiędzy ścierzkami i elementmi izolowanych stron.
  • #4 6921647
    Konto nie istnieje
    Poziom 1  
  • #5 6921933
    manekinen
    Poziom 29  
    Posty: 1629
    Pomógł: 76
    Ocena: 2361
    d-evil przepraszam za błąd, transoptory to 6N137. Poprawiłem też linki w opisie, bo cały opis skopiowałem ze swojej strony i wkleiłem zapominając o odnośnikach :)

    Napisy wykonane termotransferem, kredę z toneru można łatwo usunąć poprzez zanurzenie płytki w roztworze kwasku cytrynowego, ale akurat chciałem wypróbować białe napisy i nie usuwałem kredy - całość polakierowałewm zwykłym lakierem w spray'u, niestety część kredy nasiąkła i stała się czarna.

    Co do avrdude: czytaj opis, dodałem link. Skompilował je kolega z naszego forum.

    Revisor Tak, obudowa od maxima. Transoptory nie tylko pełnią rolę zabezpieczenia komputera, ale również umożliwiają programowanie AVR'a zasilanego niższym napięciem (kto kiedykolwiek próbował zaprogramować układ zasilany z np. 2V, sygnałami 5V, ten wie jak szybko układ potrafi umrzeć). odstępu większego między ścieżkami nie zrobisz, ale zawsze można wkleić kawałek izolatora i psiknąć lakierem izolacyjnym.
  • #6 6922234
    grendel123
    Poziom 15  
    Posty: 245
    Pomógł: 1
    Ocena: 25
    --> d-evil

    Resztki po papierze kredowym usuwa się idealnie mocząc płytkę w occie i pocierając delikatnym pędzelkiem. Powierzchnia tonera jest wtedy błyszcząca i nie posiada przebarwień.
  • #7 6923109
    rpal
    Poziom 27  
    Posty: 1502
    Pomógł: 72
    Ocena: 49
    Takie pytanie, co z wyjątkiem izolacji galwanicznej jest odkrywczego w tej kolejnej mutacji USBasp ?
    Dla amatorów termotransferu, dość łątwo resztki papieru kredowego można usunąć w 10% kwasie solnym, wystarczy potem musnąc powierzchnię watą lub czymś miękkim i znika. Zmienia się czasem kolor na granatowy (myśle o tonerze) ale to zależy już od rodzaju tonera.
  • #8 6923586
    kulpina
    Poziom 14  
    Posty: 166
    Można też delikatnie natłuścić napisy chociażby kremem do rąk. Papier staje się wtedy przezroczysty. Sposób nietypowy, aczkolwiek skuteczny ^^

    :arrow: grendel123
    Ten ocet to serio działa? Nie byłoby później jakiś uszkodzeń tonera/ problemów w trawieniu gdybym chciał tak potraktować płytkę przed trawieniem? Mam problemy z resztaki papieru na płytkach wlaśnie...

    I pytanie ogólnie. Czy ta modyfikacja i każda inna USBasp działa pod vistą x64?
    Zakładam, że nie każdy ma x64 i nie moze sprawdzić, więc inne pytanie. Czy trzeba wgrywać jakieś dodatkowe sterowniki, czy całość działa już na tym o jest w kompie?
  • #9 6923908
    grendel123
    Poziom 15  
    Posty: 245
    Pomógł: 1
    Ocena: 25
    --> kulpina
    Ja tak robię i nie mam żadnych problemów, a ocet jest w każdej kuchni (nie to co kwas solny :D). Trzeba zalać płytkę na minutę i potrzeć albo opuszkami palców, albo delikatnym pędzelkiem. Oczywiście toner musi być dobrze przyklejony do płytki (ja używam laminatora).
  • REKLAMA
  • #10 6924008
    kulpina
    Poziom 14  
    Posty: 166
    No toner jak sie przyklei to już się trzyma, bo próbowałem szczotką trzeć płytkę i toner się nie uszkodził, ale na papier to średnio dobry sposób.
    Ja korzystam z żelazka, a ten laminator to co to? :D
  • REKLAMA
  • #11 6924250
    grendel123
    Poziom 15  
    Posty: 245
    Pomógł: 1
    Ocena: 25
    Laminator to takie urządzenie do wtapiania specjalnej folii w różne dokumenty w celu ich ochrony - na aukcjach są już od 30zł. Ustawiam na swoim 130° i przepuszczam kilka razy płytkę z przyklejonym papierem. Toner przyczepia się idealnie na całej powierzchni. Poszukaj w innych tematach. Bardzo wygodne rozwiązanie.
  • #12 6924799
    master_pablo
    Poziom 16  
    Posty: 276
    Pomógł: 11
    Ocena: 30
    Ciekawe, ze te optoizolatory dzialaja przy takim niskim napieciu zasilania, w nocie katalogowej producent pisze o zasilaniu 4,5-5,5V, wiec miejmy nadzieje, ze to nie kwestia szczescia :). Troche to wyjscie prymitywne, ja bym tam jeszcze bufor z wyjsciami trojstanowymi dorzucil, ale jak dziala i autor jest zadowolony, to nie ma sie co na ten temat rozwodzic.

    Co do czyszczenia tonera z papieru, to nie wiem, jaki to ma sens przed trawieniem - w koncu to dodatkowe zabezpieczenie przed substancja trawiaca. Ale jesli chodzi o opisy, to bede musial wyprobowac ocet :).
  • #13 6925916
    morswin89
    Poziom 23  
    Posty: 834
    Pomógł: 23
    Ocena: 190
    Czy kolega grendel123 mógłby dokładniej opisać robienie płytek laminatorem. Chodzi mi czy każdy sie do tego nadaje czy są modele które lepiej sie nadają i czy trzeba go jakoś specjalnie przerabiać?
  • #14 6926033
    kulpina
    Poziom 14  
    Posty: 166
    master_pablo napisał:
    Co do czyszczenia tonera z papieru, to nie wiem, jaki to ma sens przed trawieniem - w koncu to dodatkowe zabezpieczenie przed substancja trawiaca. Ale jesli chodzi o opisy, to bede musial wyprobowac ocet .


    A wie kolega jakie to świetne zabezpieczenie, jak sie ma odstęp ścieżka-pad 10mils i tam wlezie papier? :D
    Dlatego tak ciesze się na ten ocet ;D
  • #15 6926368
    grendel123
    Poziom 15  
    Posty: 245
    Pomógł: 1
    Ocena: 25
    Panowie - troszkę zboczyliśmy z tematu :D
    Stosuje zwykły laminator bez przerabiania ustawiony na wysoką temperaturę. Dla pewności płytkę przepuszczam przez niego 10 razy (za każdym razem obracam ją o 180°). Przerobiony na wyższą temperaturę byłby lepszy, ale obawiam się o plastiki w środku - wyższej temperatury to ten mój by nie wytrzymał. Niektórzy stosują tzw. fuser'y z drukarek laserowych lub kserokopiarek.
  • #16 6926707
    manekinen
    Poziom 29  
    Posty: 1629
    Pomógł: 76
    Ocena: 2361
    rpal - nie ma nic odkrywczego, po prostu uwaliłem nie jeden układ programując bez izolacji i tak oto powstała taka mutacja.

    master_pablo - zasilanie diody nadawczej tych transoptorów, dla załączenia wysokiego stanu to 2V (high level enable voltage min.2V) i tak też działają. Tylko jeden transoptor jest zasilany niskim napięciem, ten który obsługuje linię powrotną. Rezystor ograniczający prąd dobrałem tak aby transoptor działał już od 1.8V, ale też żeby dioda nie uległa uszkodzeniu przy 6V. Przed złożeniem, na płytce stykowej testowałem każdy transoptor przy niskim napięciu, i każdy jeden pracował poprawnie przy 1,5V (poniżej tego napięcia atmega88v nie działała). Te 1,8V troche nagięte ale przetestowane i nie było ani jednego problemu. W razie kłopotów można zmniejszyć prędkość.

    Co do napisów - pisałem i napisze jeszcze raz, CELOWO nie usuwałem kredy z toneru bo chciałem sprawdzić czy uda się zrobić białe napisy. Ktoś na PW pytał jakiego lakieru użyłem, najzwyklejszy przeźroczysty lakier do kupienia w sklepie motoryzacyjnym. Nie kombinujcie z octem czy jakimiś kwasami - idealnie radzi sobie kwasek cytrynowy, wystarczą 2 minuty i mamy ładny czarny toner.

    Dam jeszcze fotkę wykonanych przeze mnie opisów na płytkach innego urządzenia, tak jak napisałem kwasek cytrynowy i lakier, oto efekt:


    Optoizolowany programator AVR
  • #17 6927921
    master_pablo
    Poziom 16  
    Posty: 276
    Pomógł: 11
    Ocena: 30
    Swietnie te plytki wygladaja. A na jakim etapie wiercisz otwory?
  • #18 6945992
    matelektronik
    Poziom 17  
    Posty: 296
    Pomógł: 12
    Ocena: 40
    Napisz coś więcej nt tych płytek. Są naprawdę świetne. Z jakiej drukarki korzystasz ???
  • #19 6950665
    manekinen
    Poziom 29  
    Posty: 1629
    Pomógł: 76
    Ocena: 2361
    Tylko nie zróbmy wielkiego offtopu o tonerze :)

    Drukarka, najtansza z nazwyklejszych, 600dpi. W dodatku zajeżdżona że ho ho.
    Papier kredowy zwykły z pobliskiego sklepu - nie jakieś wynalazki z allegro :)
    Płytka po trawieniu ścieżek powiercona a otwory wyrównane. Odtłuszczam tym co pod ręką, czy denaturatem czy rozcieńczalnikiem bez różnicy.
    I tak samo jak w przypadku ścieżek... płytka stroną miedzi ląduje na żelazku, na to papier z nadrukowanym opisem, i dociskam zwiniętą szmatką obracając ją lekko (nie przesuwam po papierze), trwa to może ze 2 minuty, nie żałuje.
    Następnie do detergentu (gorąca woda z proszkiem do prania świetnie sobie radzi), po 5 minutach papier łatwo odchodzi (do samego laminatu tak nie przywiera jak do miedzi). Jeśli gdzieś został, to palcami delikatnie usuwam, ale nie tre żeby nie uszkodzić nadruku. Reszta białego syfu 9zwanego potocznie kredą :) ) odchodzi w roztworze ciepłej wody i kwasku cytrynowego (widać reakcję kredy z kwaskiem), niech leży sobie tam aż przestaną się tworzyć bąbelki/kreda zejdzie. Po wyschnięciu nie powinno być białych śladów.
    Lakieruje zwykłym lakierem przeźroczystym w spray'u, z ok 15cm, nakładam jedną grubszą powłokę tak aby była równomierna i szklista. 10 minut i gotowe, po polutowaniu elementów całą płytkę czyszcze pędzelkiem najpierw denaturatem, a gdy pozbęde się wszelakich topników, płynem do szyb i pod bieżącą wodę :)
  • #20 9669193
    manekinen
    Poziom 29  
    Posty: 1629
    Pomógł: 76
    Ocena: 2361
    Aktualizacja

    Nasz kolega z forum (BoskiDialer) napisał dwie poprawki do softu USBASP, umożliwiające programowanie układów TPI (nowa seria attiny) oraz układów z pamięcią większą niż 128kB - jest to w oficjalnym firmware 2011-05-28 LINK

    Niestety programatory z optoizolacją (tak jak ten) nie potrafiły programować układów TPI - układy TPI używają dwukierunkowej linii DATA, a transoptor mamy jednokierunkowy. Rozwiązaniem było wyprowadzenie linii MOSI sprzed izolacji - działać działało ale traciliśmy izolację.

    Powstała więc kolejna poprawka softu. Aby zaprogramować układ TPI nie tracąc izolacji, wystarczy połączyć obydwie linie MOSI i MISO do linii DATA - proste :)

    Wsad (nieoficjalny) znajduje się tutaj - https://www.elektroda.pl/rtvforum/topic1861848.html#9666520

Podsumowanie tematu

✨ Przedstawiono projekt optoizolowanego programatora AVR, który komunikuje się z układami AVR zasilanymi w zakresie 1,8V do 6V, z izolacją galwaniczną do 2,5kV. Izolację zapewniają szybkie transoptory 6N137 na liniach MOSI, MISO i SCK oraz transoptor PC817 na linii reset. Programator umożliwia zasilanie układu docelowego z własnego źródła lub z programatora poprzez zworki JP1, JP2 i JP3, które także pozwalają na programowanie układów z zegarem poniżej 1,5MHz. Autor potwierdził, że transoptory działają poprawnie nawet przy napięciu 1,8V, co jest nietypowe, ale przetestowane. Opisy na płytce wykonano metodą termotransferu z użyciem papieru kredowego i tonera, a do usuwania resztek papieru polecano moczenie w occie lub kwasku cytrynowym. Dyskutowano także o metodzie nanoszenia nadruków na płytki za pomocą laminatora. W późniejszej aktualizacji podano, że programator wymagał modyfikacji firmware USBasp, aby obsłużyć nowe układy TPI (nowa seria attiny) oraz układy z pamięcią powyżej 128kB. Problem z programowaniem TPI wynikał z jednokierunkowości transoptorów, rozwiązano to łącząc linie MOSI i MISO do linii DATA, co pozwoliło zachować izolację. Projekt jest praktyczny, estetycznie wykonany i zabezpiecza komputer przed uszkodzeniem podczas programowania niskonapięciowych układów AVR.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA