Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Klon STK500 na ATmega8 i FT232 przystosowany do pracy z Atmel Studio 7

vidmo91 07 Nov 2018 16:30 9822 6
IGE-XAO
  • Od dawna mam programator AVT prog2, urządzenie tożsame z kitem AVT5125.
    Działa dobrze z avrdude, także nadaje się jeszcze do czegoś, ale chciałem więcej. Mój problem polegał na tym, że programator nie współpracował z Atmel Studio (oczywiście można zmusić AS do wykorzystania avrdude, ale po co skoro nie trzeba, no i zmuszanie to ma duże ograniczenia).
    Problem można rozwiązać edytując dll-kę AS, ale pojawia się z powrotem po każdej aktualizacji.
    AS informuje nas przy próbie połączenie z programatorem, że oczekuje komunikacji z STK500_2 a nie AVRISP_2. Dlatego wystarczy w programie ATmegi dostępnym na EP.com.pl podmienić ten string. Problem rozwiąże się na stałe, a programator nie straci możliwości współpracy z avrdude.

    BTW jest to chyba najtańszy programator AVR-SPI współpracujący z AS, (zakładając wykorzystanie taniej przejściówki USB<>UART). Schemat takiego połączenia (z wykorzystaniem schematu z instrukcji AVT5125):
    Klon STK500 na ATmega8 i FT232 przystosowany do pracy z Atmel Studio 7
    Programator może stabilnie pracować z zasilaniem 3,3V. Pracuje stabilnie i jest przyjemny w użyciu, czego nie mogę powiedzieć o moim drugim programatorze: klonie AVRISP mkII. AS często nie chce nawiązać z nim komunikacji, natomiast z prog2 łączy się bez bólu i od razu. Programator pozwala graficznie ustawiać fusy, programować z prędkością od 17kHz do 1,8MHz, czyścić, odczytywać i zapisywać pamięci mikrokontrolerów.
    Klon STK500 na ATmega8 i FT232 przystosowany do pracy z Atmel Studio 7

    Załączam gotowy program dla chętnych:
    avtprogst..00.bin Download (8 kB)Points: 4 for user

    Cool? Ranking DIY
    Can you write similar article? Send message to me and you will get SD card 64GB.
    About Author
    vidmo91
    Level 11  
    Offline 
    vidmo91 wrote 70 posts with rating 67, helped 0 times. Live in city Kraków. Been with us since 2009 year.
  • IGE-XAO
  • IGE-XAO
  • #3
    vidmo91
    Level 11  
    Tylko programuje, do debugowania potrzebna jest co najmniej ATmega 32U4 (~15zł w TME + ~5zł drobnica).

    Koszt:
    ATmega8A ~8zł (TME)
    Konwerter USB<>UART ~4zł (Allegro, 6zł z wysyłką)
    Drobnica tj. kwarc i elementy pasywne ~2zł

    Najprawdopodobniej można też wykorzystać UsbAsp, byle z ATmegą8. Trzeba mieć jakiś inny programator żeby to przeprogramować UsbAsp (np. Arduino), trzeba też zmienić połączenia, ale jest to jak najbardziej wykonalne.
  • #4
    kaczakat
    Level 33  
    Może nie tak tani, ale chyba najprostszy jest wg mnie programator klon MKII zrobiony z klona Arduino MICRO z Atmega32u4. Bierzesz tego MICRO (3$) dwa rezystory 10k (opcjonalnie, jak chcesz by AS odczytywało napięcie układu programowanego, robi się dzielnik miedzy GND i VCC targetu do pinu A0, a jak nie to można spiąć A0 z VCC Micro, żeby AS się nie pluł), parę kabelków, wgrywasz hexa z załącznika i programator MK2 SPI gotowy (sprawdzony w AS 6.2, 7, Arduino z AVRDUDE 6.3, AVR LAB++). Reset idzie z pinu 8 MICRO, reszta to zwykłe SPI/ISP (MOSI, MISO, SCK z pinów 16, 14 i 15) zgodnie ze schematem Arduino MICRO. Miałem kiedyś zainstalowanego klona MK2, więc po włączeniu Arduino Micro z tym softem od razu wykrył znane urządzenie. Binarka jest przeróbką z projektu LUFA. Dodatkowo nie potrzebujesz żadnego innego programatora do zaprogramowania. W załączniku jest AVRDUDE i plik bat, a Micro przylatuje z bootloaderem. Po resecie przez 6-8 sekund zmienia port na inny COM do wgrywania softu. Trzeba sprawdzić jaki to i podmienić w pliku "start.bat" numerek, znowu zresetować, odpalić bat i gotowe. Oczywiście prościej jest mieć programator USBASP i wgrać np. AVRLAB++. Przywrócenie softu z bootloaderem to też już tylko innym programatorem, bo bootloader zostanie oczywiście nadpisany. W Win10 z AS7 nie miałem żadnego programatora wgranego, po podłączeniu zainstalował sobie wszystko sam (oczywiście był AS7 wgrany wcześniej). Nieco kłopotliwe jest użycie interfejsu TPI, bo istotny pin jest użyty do leda i nie jest wyprowadzony na pinheader. Trzeba dolutować kabelek jak na fotce pomarańczowy do rezystora po prawej (tu jest sygnał TPICLK), do tego wyprowadzić na wspólną linię sygnały RX/TX przez rezystory R220-470 (do TPIDATA), 8 do reset i można się bawić również z prockami Attiny10, itp. Ale jak ktoś przylutował Attiny10 to z tym pójdzie łatwiej. Jak widać niestety na fotce mojego rezystora tam już nie ma, bo miałem długi i gruby kabelek, którym majdałem po stykówce. Nie jest to dobry pomysł, po kilku takich został mi w ręce razem ze ścieżką, musiałem wlutować się dalej do ścieżki. Po dodaniu regulatora 3.3V i konwertera poziomów logicznych/bufora można również programować Xmega, ale to już by podrożyło programator o kolejnego $, bo całość trzeba by już jakoś ułożyć na płytce i dołożyć trochę scalaków. W najprostszej wersji do ISP to Arduino Micro + 5 kabelków żeńskich (bez zasilania układu). Wiem, nie ma bufora itp., jak coś pójdzie źle to dycha w plecy.
    Dodatkowo na pinie 9 jest sygnał zegara 4MHz - na wypadek jakby komuś z fusami nie wyszło. PDI już mi się nie chciało testować.
    Klon STK500 na ATmega8 i FT232 przystosowany do pracy z Atmel Studio 7
    Klon STK500 na ATmega8 i FT232 przystosowany do pracy z Atmel Studio 7
    Klon STK500 na ATmega8 i FT232 przystosowany do pracy z Atmel Studio 7

    Całość zapożyczona od przyjaciół ze wschodu: http://arduino.ru/forum/proekty/delaem-programmator-avrisp-mkii-za-5-minut. Szukałem części do swojego programatora, ale AT90USB162 z USB to 2.5$, Atmega32U4, która też była jako opcja w LUFA, taka sama jak w Micro ale goła bez płytki jest droższa/w tej samej cenie, więc przerzuciłem się na szukanie czegoś gotowego do MICRO. Złożyłem to z ciekawości, w moim MK2 był tylko zimny lut i w międzyczasie i tak zaczął działać.
    Oczywiście klon micro kupiony w PL to już ze 20zł i wysyłka, ale jak ktoś na szybko chce się poratować i akurat ma w szufladzie to polecam.
    Problemów logicznych z AS nie miałem żadnych, tylko stracony rezystor, ten led już nie zaświeci :(.

    @leonow32 otwórz sobie PDF z instalki AS, tam jest rozdział Supported Devices i opisany każdy procek wraz z programatorami, co mogą, a co nie mogą w zakresie programowania i debugowania. Ani MK2 ani STK500 nie są wymienione z opcją debugowania.
  • #5
    Janusz_kk
    Level 34  
    kaczakat masz plusa za to info.
  • #6
    konradxdx
    Level 9  
    Janusz_kk wrote:
    kaczakat masz plusa za to info.
    Niektórzy narzekają na arduino, ale nie wiedzą, ile przydatnych urządzeń i programów na tym powstało. Skoro już jesteśmy w temacie programowania, to na arduino jest jeszcze ciekawy programik, pozwalający zrobić z atmegi328 programator UPDI do nowych attiny: https://github.com/ElTangas/jtag2updi