Programator na USB (USBasp)


9.66667
Ocena: None Średnia: 9.7 (9 głosujących)

Opisywany układ jest programatorem mikrokontrolerow AVR, wzorowanm na bardzo popularnym projekcie opracowanym przez http://www.fischl.de/usbasp/. Zaletą układu jest prostota (Tylko mikrokontroler ATMEGA8 i kilka dodatkowych elementow) i łatwość obsługi, a fakt że wspołpracuje on z komputerem przez port USB sprawia, że bez problemu można go używać na laptopie oraz komputerach z płytami głownymi pozbawionymi portu LPT (obecnie coraz trudniej o dobrą płytę z portem LPT). Transmisją sygnału przez USB zajmuje się mikrokontroler, więc nie jest wymagany żaden dodatkowy kontroler USB. Dodatkową ważną zaletą tego projektu jest szybkość programowania dochodząca do 5KB/s oraz możliwość jej zredukowania na potrzeby programowania mikrokontrolerow z zegarem <1.5MHz. Jedynym problemem jaki pojawi się na początku to konieczność zaprogramowania mikrokontrolera sterującego za pomocą dowolnego innego programatora. Najprościej jest to zrobić korzystając z opisu dostępnego tutaj. Do obsługi programatora najlepiej nadaje się program avrdude, gdyż działa on na wielu systemach operacyjnych. Testowałem go na Archlinux 64 , PLD Titanium, Windows XP i Vista.

Działanie:


Schemat ideowy programatora przedstawiony jest na rysunku poniżej:

Sercem układu jest mikrokontroler U1 (Atmega8) wraz z rezonatorem kwarcowym X1 (12MHz) i kondensatorami C1 (22pF) i C2 (22pF). Złącze RxD/TxD wraz z rezystorem R7 (1k) umożliwiają budowę interfejsu RS232 (w tej wersji nie jest wykorzystywany). Diody D3 i D4 wraz z rezystorami R5 (470R) i R6 (470R) stanowią kontrolkę zasilania i programowania. Rezystor R1 (10k) wymusza stan wysoki na pinie reset mikrokontrolera, gdy nie jest on wykorzystywany (po zaprogramowaniu układu U1). Z1 jest złączem USB typu B, służącym do komunikacji z komputerem i zasilania programatora oraz programowanego układu (gdy prąd nie przekracza 500mA). Kondensatory C3 (4,7uF) i C4 (100nF) filtrują napięcie zasilające a diody D1 (Zenera 3,6V) i D2 (Zenera 3,6V) dbają aby napięcia na liniach D+ i D- portu USB nie przekroczyły 3,6V. Rezystory R2 (2,2k) oraz R3 (68R) i R4 (68R) są konieczne dla poprawnego działania USB. Złącze Prog jest złączem programującym przez które w pierszej fazie programujemy układ U1 a później stanowi ono wyjście naszego programatora. Zworka S_Prog (Self Program) umożliwia uaktalnienie oprogramowania w układzie (zaprogramowanie U1). S_SCK (Slow SCK) zapewnia obniżenie częstotliwości zegara taktującego programowanie i możliwość zaprogramowania mikrokontrolerów działających na niskiej częstotliwości (<1,5MHz). Zworka S_Target (SUpply Target) podłącza zasilanie do programowanego układu.

Budowa:


Programator można zbudować w oparciu o płytkę drukowaną dostępną tutaj lub dowolną inną dostępną na stronie http://www.fischl.de/usbasp/. Rysunek w odbiciu lustrzanym znajduje się tutaj. Montaż rozpoczynamy od wlutowania jednej zworki znajdującej się pod układem scalonym U1. Kolejność pozostałych elementów jest dowolna ale polecam rozpocząć montaż od złącza USB. Pod mikrokontroler zalecam zastosowanie podstawki. Pomocą przy konstrukcji może okazać się dostępny tutaj schemat montażowy.

Gdyby chtoś chciał wykonać wersję płytki ze złączem KANDA, poniżej znajdują się odpowiednie wyprowadzenia tego złącza:

Wykaz Elementów:


1x Listwa Goldpin 1x2 (RxD/TxD)
3x Listwa Goldpin 1x3 + zworka
1x Listwa Goldpin 1x8
1x Złącze USB typu B (do druku)
1x Kabel USB_A - USB_B (taki jak do drukarki)

1x 1k
1x 2,2k
1x 10k
2x 68R
2x 470R

2x 22pF
1x 100nF
1x 4,7uF Elektrolit

1x Rezonator Kwarcowy 12MHz
2x Dioda Zenera 3V6
2x Dioda LED
1x Mikrokontroler ATMEGA8 + Podstawka

Programowanie:


Program do mikrokontrolera został napisany przez Thomasa Fischl'a i wszystkie jego wersje, począwszy od tych najwcześniejszych (wraz z kodami źródłowymi) można znaleźć na stronie autora. W moim projekcie zastosowałem wersję programu usbasp.2006-12-29.tar.gz dla mikrokontrolera ATMega8. Do mikrokontrolera należy załadować plik usbasp.atmega8.2006-12-29.hex znajdujący się w katalogu "/bin/firmware/". Z nowszą wersją oprogramowania miałem pewne problemy ale może to tylko przypadek :).

Po zaprogramowaniu mikrokontrolera czas na ustawienie jego bitow konfiguracyjnych (Fuse Bitow). Ogolnie powinno to wyglądać tak: ("1" oznacza bit niezaprogramowany, tak jak w kartach katalogowych)

Fuse high byte: 0xc9 (szesnastkowo)
RSTDISBL = 1
WDTON = 1
SPIEN = 0
CKOPT = 0
EESAVE = 1
BOOTSZ1 = 0
BOOTSZ0 = 0
BOOTRST = 1

Fuse low byte: 0x9f (szesnastkowo)
DODLEVEL = 1
BODEN = 0
SUT 1..0 = 01
CKSEL 3..0 = 1111

Rysunek poniżej przedstawia ustawienia fusebitów (Screen z programu BASCOM AVR):

Ustawienia fusebitów w programie Burn-O-Mat przedstawione są poniżej:

Obsługa:


a) Linux


1. Instalujemy program avrdude ze standardowego repozytorium
2. Podłączamy programator do portu USB (zworka S_Prog powinna być rozwarta)
3. Podstawowe komendy:

Tylko odczyt sygnatury: (m8 to typ mikrokontrolera)

avrdude -p m8 -c usbasp

Odczyt programu z pamięci mikrokontrolera do pliku *.hex

avrdude -p m8 -c usbasp -U flash:r:program.hex

Zapis programu z pliku *.hex do pamięci mikrokontrolera

avrdude -p m8 -c usbasp -U flash:w:program.hex

b) Windows


1. Włączamy programator do portu USB
2. Rozpocznie się instalacja sterownika dla USBasp. Wybieramy sterownik z folderu "/bin/win-driver/" (znajdziemygo po rozpakowaniu pliku usbasp.2006-12-29.tar.gz)
3. Ściągamy skompilowaną wersję programu avrdude (patrz załączniki)
4. Uruchamiamy konsolę "cmd"
5. Dalsze czynności tak jak dla systemu Linux od punktu 2

Pod Windowsem istnieje możliwość współpracy opisywanego programatora z programem BASCOM AVR. Aby to zrobić wykonujemy następujące czynności:
1. Klikamy Options->Programmer
2. W polu programmer wybieramy extrenal programmer
3. W części other w polu program wybieramy scieżkę do avrdude
4. W części other w polu parameter wpisujemy : "avrdude" -p m8 -c usbasp -U flash:w:"{FILE}":a -U flash:v:"{FILE}":a

"m8" musimy zamienić na odpowiedni typ mikrokontrolera, który chcemy programować (najczęściej jest to: t2313, m8, m16, m32 lub m162)

Zdjęcia Projektu:

ZałącznikWielkość
Schemat63.12 KB
Płytka11.52 KB
Płytka (odbicie lustrzane)11.56 KB
Płytka (6 na stronie)55.19 KB
Montowanie15.67 KB
Opis płytki 6.59 KB
Opis płytki (odbicie lustrzane)6.63 KB
Punkty lutownicze6.38 KB
Punkty lutownicze (odbicie lustrzane)6.43 KB
Płytka (Złącze KANDA)12.07 KB
Płytka (Złącze KANDA) (odbicie lustrzane)12.05 KB
Płytka (Złącze KANDA) (8 na stronie)78.15 KB
Montowanie (Złącze KANDA)16.36 KB
Opis płytki (Złącze KANDA)6.69 KB
Opis płytki (Złącze KANDA) (odbicie lustrzane)6.67 KB
Punkty lutownicze (Złącze KANDA)6.66 KB
Punkty lutownicze (Złącze KANDA) odbicie lustrzane) 6.66 KB
AVRDUDE 5.5 (plik *.exe i *.conf)95.06 KB



Portret użytkownika Abichasim

Problem z połączeniem

Witam

Zbudowałem ten programator do Twojej uniwersalnej płytki testowej avr i mam problem z połączeniem.Mega 8 zaprogramowana przez stk200.Software z 2006,fusebity ustawione i sprawdzone.
Wlutowałem,ładnie wykryło usbasp,zainstalowałem sterowniki i zaczyna się problem.

Quote:

"C:\Documents and Settings\Abichasim\Pulpit\avrdude\avrdude.exe" -p m16 -c usbasp -P lpt1

avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude.exe done. Thank you.

Z opcją -F

Quote:

avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude.exe: Device signature = 0x000000
avrdude.exe: Yikes! Invalid device signature.
avrdude.exe: Expected signature for ATMEGA16 is 1E 94 03

avrdude.exe done. Thank you.


Zielona dioda się świeci.SSck włączone.Programator na execute reaguje mignięciem pomarańczowej diody.W czym może tkwić problem?

Portret użytkownika mirley

Re: Programator

Wszystko wskazuje na to że programator działa poprawnie a masz problem z komunikacją z prockiem programowanym. Płytka testowa ma swój programator, więc chodzi Ci o ten na płytce czy dołączyłeś zewnętrzny?

Na marginesie to opcja -F jest do niczego nie potrzebna, a w wywołaniu nie powinno być -P lpt1. Rozumiem że próbujesz odpalić to za pomocą samego avrdude co jest dobrym pomysłem.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Abichasim

Chodzi mi o programator

Chodzi mi o programator wbudowany w płytkę.Programuje przy pomocy avrdude 5.5 z nakładką graficzną.Logi z góry były bez wpiętego procesora programowanego.Chciałem tylko połączyć się z programatorem.

Teraz dam logi z wpiętym procesorem:
Z opcją -F: (Bez -F jest tak jak na w poprzednich logach)

Quote:

avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude.exe: Device signature = 0xffff00
avrdude.exe: Expected signature for ATMEGA16 is 1E 94 03
avrdude.exe: current erase-rewrite cycle count is 16776960 (if being tracked)

avrdude.exe done. Thank you.

Za każdym razem zmienia się Device signature i liczba current erase-rewrite cycle count.
Zasilanie jest na programatorze jak i na atmedze16

Portret użytkownika mirley

Re: Usbasp

W takim razie masz gdzieś zwarcie lub przerwę na płytce..... sprawdż miernikiem czy jest przewodzenie od M8 w programatorze do Mega16 na płytce górnej. Sprawdź czy nie ma zwarć. Sprawdź zworkę slow SCK

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Abichasim

Ale się naszukałem,winne było

Ale się naszukałem,winne było złe polutowanie SSck (przyciski w drodze,połączyłem drucikami)
Dzięki za pomoc

Portret użytkownika rysiek55

Quote:Na marginesie to opcja

Quote:
Na marginesie to opcja -F jest do niczego nie potrzebna, a w wywołaniu nie powinno być -P lpt1

Opcja -F powoduje tylko wyłączenie weryfikacji sygnatury procesora z typem podanym w opcji -p
Też myślę, że nie powinno być -P lpt1.
Pozdrawiam

-

Ryszard z Wrocławia
GG: 2272319

Portret użytkownika polak

cena

jaka będzie cena bez kabla usb ,laminatu

Portret użytkownika mirley

Re: usbasp

Jak się robi samemu to pewnie w 20-25zł da się zmieścić

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Dj&#039;Iskra

Witam, z elektroniki jestem

Witam, z elektroniki jestem zielony ale zastawiam się nad małym odchudzeniem tego schematu, tj. wyrzuceniem w ogóle tego złącza RxD/TxD (mi się to raczej nie przyda) i tak czysto teoretycznie wyrzucenie tych ledów D1, D2, tylko wówczas jak mi się wydaje trzeba by było troszkę zwiększyć R5 i R6, aby na wejściu PC0 PC1 było te 0,04 mA (zgodnie z dokumentacja atmegi). I tak pytanie techniczne jeszcze od laika, gdybym np. zaprogramował tego U1 bezpośrednio podpinając pod lpt (bez tego ustrojstwa), to mógłbym go programować na zegarze wewnętrznym 1 MHZ, czy konieczne jest podłączenie zewnętrznego rezonatora ?

Proszę o wyrozumiałość i pozdrawiam

Szymon

Portret użytkownika mirley

Re: USBASP

Jak wyrzucisz ledy D3, D4 (D1 i D2 to zenerki) to rezystory R5 i R6 sa do niczego nie potrzebne i można je też wyrzucić. Osobiście bym nie wyrzucał tych ledów ale to moje zdanie. Co do programowania to możesz zaprogramować flasha na 1MHz wewnętrznym oscylatorze ale w momencie jak przestawisz fusy na kwarc to procesor przestanie odpowiadać

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika polak

adaptery

dało by się dorobić adaptery

Portret użytkownika mirley

re: Adaptery

jakie adaptery? nie wystarczy Podstawka Programująca z mojej strony?

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika polak

zasilanie

Usb wystarczy do zasilania i czy zarazem bedzie przesylal dane

Portret użytkownika mirley

Re: usbasp

ja podpinam programowany układ pod usbaspa, chyba że pobiera dużo prądu. Przeważnie z 400mA da się pobrać.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gavron04

Witam. (Dotychczas

Witam. (Dotychczas programowałem na pożyczonym od kolegi STK500 v2). Zrobiłem USBasp + podstawka. JEdnak w programie burn o mat, nie wykrywa go (w ustawieniach mam USBasp i port USB) Jak klikam flash,wywala błąd. Mam WIN 7, 32bity. W menedżerze urządzeń USBasp mam w LibUSB-Win32 Devices/USBasp

Portret użytkownika mirley

Re: Usbasp

Testuj to w samym avrdude a nie w nakładce na niego. Poczytaj u mnie na stronie artykuł o programowaniu za pomocą avrdude. Zacznij od identyfikacji dołączonego procesora a nie od wgrywania flasha nie wiadomo gdzie.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gavron04

Zwarłem na S_SCK i


Zwarłem na S_SCK i poszło.

C:\Users\Matt\Downloads\avrdude58\avrdude.exe -C C:\Users\Matt\Downloads\avrdude58\avrdude.conf -p t2313 -P usb -c usbasp  -U flash:w:C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex:a 
 
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions
 
Reading | ################################################## | 100% 0.02s
 
avrdude.exe: Device signature = 0x1e910a
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: reading input file "C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex"
avrdude.exe: input file C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex auto detected as Intel Hex
avrdude.exe: writing flash (1934 bytes):
 
Writing | ################################################## | 100% 9.86s
 
avrdude.exe: 1934 bytes of flash written
avrdude.exe: verifying flash memory against C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex:
avrdude.exe: load data flash data from input file C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex:
avrdude.exe: input file C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex auto detected as Intel Hex
avrdude.exe: input file C:\Users\Matt\Downloads\TermUnTermostatTiny2313.hex contains 1934 bytes
avrdude.exe: reading on-chip flash data:
 
Reading | ################################################## | 100% 8.55s
 
avrdude.exe: verifying ...
avrdude.exe: 1934 bytes of flash verified
 
avrdude.exe done.  Thank you.

C:\Users\Matt\Downloads\avrdude58\avrdude.exe -C C:\Users\Matt\Downloads\avrdude58\avrdude.conf -p t2313 -P usb -c usbasp  -u -U efuse:w:0xFF:m -U hfuse:w:0xDF:m -U lfuse:w:0x7F:m 
 
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions
 
Reading | ################################################## | 100% 0.03s
 
avrdude.exe: Device signature = 0x1e910a
avrdude.exe: reading input file "0xFF"
avrdude.exe: writing efuse (1 bytes):
 
Writing | ################################################## | 100% 0.01s
 
avrdude.exe: 1 bytes of efuse written
avrdude.exe: verifying efuse memory against 0xFF:
avrdude.exe: load data efuse data from input file 0xFF:
avrdude.exe: input file 0xFF contains 1 bytes
avrdude.exe: reading on-chip efuse data:
 
Reading | ################################################## | 100% 0.01s
 
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of efuse verified
avrdude.exe: reading input file "0xDF"
avrdude.exe: writing hfuse (1 bytes):
 
Writing | ################################################## | 100% 0.01s
 
avrdude.exe: 1 bytes of hfuse written
avrdude.exe: verifying hfuse memory against 0xDF:
avrdude.exe: load data hfuse data from input file 0xDF:
avrdude.exe: input file 0xDF contains 1 bytes
avrdude.exe: reading on-chip hfuse data:
 
Reading | ################################################## | 100% 0.01s
 
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of hfuse verified
avrdude.exe: reading input file "0x7F"
avrdude.exe: writing lfuse (1 bytes):
 
Writing | ################################################## | 100% 0.03s
 
avrdude.exe: 1 bytes of lfuse written
avrdude.exe: verifying lfuse memory against 0x7F:
avrdude.exe: load data lfuse data from input file 0x7F:
avrdude.exe: input file 0x7F contains 1 bytes
avrdude.exe: reading on-chip lfuse data:
 
Reading | ################################################## | 100% 0.01s
 
avrdude.exe: verifying ...
avrdude.exe: 1 bytes of lfuse verified
 
avrdude.exe done.  Thank you.

Tylko ta linijka mnie niepokoi :

avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.

Portret użytkownika mirley

Re: AVRDUDE

To ostrzeżenie, mówi o tym że avrdude nie może ustawić okresu przebiegu na SCK. Czyli zrobić programowego SLOW SCK, tego co zrobiłeś zworką. Musiał być wgrać do usbaspa najnowszego hexa ze strony autora. Ja używam starszej wersji hexa bo działał mi lepiej. Zawsze jest wykrywana w systemie tylko trzeba przy nowych procka pamiętac o zworce S_SCK, potem jak przestawiasz fusy i taktowanie jest szybsze to zworkę trzeba zdjąć

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika robgnia

Witam

Po ciężkich bojach z tym programatorem ;-) mogę to tak nazwać muszę przyznać że sprawuje się wyśmienicie tak jak już ktoś napisał że działa z atmega 8l 8pu fakt że przetaktowany ale najważniejsze że działa narazie sprawdzałem z attiny 2313 i atmega 8515 problem polegał na tym że nie wykrywało mi tych układów w avrdude i baskom avr ale to było spowodowane tym że dane układy były już używane attiny w unlooperze a atmega w karcie funrarri wieć trzeba było zastosować zewnętrzny kwarc żeby zmienić fusebits po tych zmianach procki są ładnie wykrywane przez programator.Programator zmontowany na płytce uniwersalnej narazie bez obudowy ale przyjdzie czas na ładnie wykonaną płytkę i obudowę.Może razem damy radę zrobić programator uniwersalny typu usb prog żeby można było programować pamięci pic to już by było coś albo połączenie picload i usbasp.

Pozdrawiam

Portret użytkownika pablo5

Zworka S_SCK

Witam, czytając powyższe komentarza doczytałem, że nową ATmege należy programować ze zwartą zworką S_SCK. Tak też zrobiłem i wszystko było ok. Jednak kiedy ten sam uC chciałem kolejny raz zaprogramować, to zworka S_SCK musiała być zwarta, bo inaczej nie dało się zaprogramować. I w związku z tym mam pytanie, czy jeżeli używam wewnętrzny oscylator i w programie wpisuję komendę $CRYSTAL = 8000000, to czy to wystarcza, żeby uC po pierwszym zaprogramowaniu był już taktowany z częstotliwością 8MHz? Czy może jeszcze muszę coś zmieniać w fusebitach?

Portret użytkownika mirley

Re: S_SCK

S_SCK ma być zwarte zawsze wtedy gdy taktowanie jest mniejsze niż 1.5MHz. Jeśli nie przestawiłeś fusebitów i dalej są fabryczne to niezależnie od tego co będzie w programie to i tak masz 1MHz taktowania. W programie Crystal podajesz żeby kompilator wiedział jak będzie szybko działał procek, żeby mógł obliczyć opóźnienia wymagane do niektórych poleceń. Dlatego ustawiasz w fusebitach to co potrzebujesz a potem wpisujesz to do programu żeby się zgadzało ze stanem faktycznym.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika pawel3008

Witam ostatnio kupiłem

Witam ostatnio kupiłem komputer z systemem windows Xp i mam mały problem z avrdude-Gui 1.0.5 ponieważ przy próbie połączenia z mikrokontrolerem np attiny2313 pokazuje komunikat
avrdude.exe: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc
przy czym menedżer urządzeń pokazuje ze sterownik usbasp win-driver jest zainstalowany i działa poprawnie
natomias program Bascom -avr działa normalnie i łączy sie z programowanym układem
dodam ze przed zmianą komputera na oprogramowaniu Visty obydwa programy avrdude-Gui oraz Bascom -avr
komunikowały sie bezproblemowo z programowanymi mikrokontrolerami
pozdrawiam

Portret użytkownika mirley

Re: USbasp

Co do avrdude-gui to nie pomogę bo nie mam żadnego doświadczenia z tym programem. Poszukaj w opcjach czy nie ma czegoś głupiego zaznaczone albo czy nie trzeba wskazać gdzieś ścieżki do pliku konfiguracyjnego avrdude w programie. Tak przynajmniej jest w Burn-o-Macie którego używam

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika hubi121212

Goldpiny

Witam jaki raster mają mieć goldpiny ? I jak nazywają się te konektory we wtyczkach do goldpinów , nigdzie tego znaleźć nie moge.

Portret użytkownika gavron04

Goldpiny

Raster 2.54mm. Chyba chodzi Ci o to złącze > KANDA > Gniazdo IDC 10pin na taśmę/ Wtyk IDC 10pin prosty

Portret użytkownika mirley

Re: Usbasp

Jeśli chodzi o pojedyncze złącze to ja znam to pod nazwą złącza BLS http://sklep.avt.pl/go/_search/full_search.php?SEARCH_FORM=&search_query_words=BLS&x=0&y=0&type=all

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika qUKARO

cannot set sck period. please check for us

Witam.

Na początek problem, w dalszej części opis.
Problem to :

avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: error: programm enable: target doesn't answer. 1 
avrdude.exe: initialization failed, rc=-1
             Double check connections and try again, or use -F to override
             this check.

A więc po kolei :
- uC to mega128A, prosto ze "statku", defaultowy zegar
- uc wlutowany w gotowy układ, linie dla programatora wyprowadzone na gold pinach.
- sam układ na razie jest "goły" tylko uC i wyprowadzenia dla programatora
- programator to USBasp z najnowszymi driverami
- używam własnoręcznie przekompilowanego avrdude 5.10
- każdy inny uC odpowiada, mega16, mega32
Sprawdziłem :
- pracę avrdude oraz burn-o-mata
- sprawdziłem jakość połączeń
- dołączyłem odsprzęgający kondensator na wejściu uC 100n stały
- potrójnie sprawdziłem poprawność schematu, dołączenie wyprowadzeń

Moje pytanie jest następujące, co jeszcze ewentualnie może być nie tak ? Dlaczego to nie odpowiada.

PS. ze starszym avrdude dostawałem błędy typu (piszę z pamięci) :
sygnatura urządzenia nie zgadza się z tym od mega128, wartości sygnatury randomowe 0x00000 albo z ff.

Portret użytkownika mirley

Re: USBASP

Procesor jest nowy więc napewno należy obniżyć częstotliwość SCK, można to zrobić opcją, tak mi się wydaje. Ja jednak zawsze kozystam ze zworki. Czy wszystkie zasilania i masy mikrokontrolera są podpięte? czy jest zasilanie 5V względem wspólnej masy z programatorem?

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika qUKARO

Re: USBASP

Jak każda atmega, przynajmniej z tych o których wiem na starcie ma wewnętrzny oscylator RC 1MHz.
Częstotliwość ustawiana zworką dla usbasp, oraz przez program dla mk2 który zakupiłem ostatnio. Nic to nie daje.
Zasilanie z programatora, a więc wspólna masa, wspólne napięcia logiczne.
Dostałem w łapki nową atmegę więc sprawdzę w czym rzecz, czy aby to nie wina wcześniejszego układu.

Portret użytkownika qUKARO

Re: USBASP

Na początek powiem jedno, czytanie pięć razy datasheety popłaca, podążając tym tropem nie czytanie ich boli.

Sekcja Memory Programming / Serial downloading pokazała mi o co chodzi.
Dla potomnych, atmega128 i wszystkie pochodne oparte o ten sam pinout mają inne piny do ISP.

MOSI - PE.0
MISO - PE.1
SCK - PB.1
RESET - pin20

Dziękuje, dobranoc :)

Portret użytkownika Anonim

Zworki

Pod jaką nazwa szukać takich zworek jak w tym projekcie? Mogę zastosować wtyk 403 2pin i do tego gniazdo 402 2pin ze zwartymi pinami?

Portret użytkownika mirley

Re: Zworki

wtyk czyli to co lutujesz do płytki to poprostu goldpin prosty jednorzędowy. Sprzedawany przeważnie w odcinkach po 40 pinów. Ułamujesz ile potrzeba. Zworka natomiast jest dostępna w każdym sklepie elektronicznym i pewnie komputerowym też

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika gosc2

jak kasować przez avrdude

jak kasować przez avrdude dane zapisane na ATMEGA32

Portret użytkownika mirley

Re; AVRDUDE

Popatrz do helpa jest opcja -e, która powinna skasować procka

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Mielczar

AVR Doper

Witam,
Używam programatora wg. Twojej płytki od prawie 2 lat i spisuje się świetnie, ale nie o tym chciałem napisać. Jak pewnie się orientujesz istnieje programator o nazwie AVR Doper, który ma firmware zbliżony do STK500 i tak jest identyfikowany przez oprogramowanie. Podobno istnieje możliwość użycia wsadu tego programator do hardware USPasp. Czy może próbowałeś już robić coś takiego? Ewentualnie z jakim skutkiem? Chodzi mi głowienie o to, że USBasp nie współpracuje z AVRStudio którego używam, a korzystanie z osobnego programatora jest lekko niewygodne dla mnie. Piszę rónież w BASCOMie, ale tam USBasp jest obsługiwany poprawienie za co wielki plus :)

pozdrawiam

Portret użytkownika Kriss

Vista

Witam może ktoś miał podobny problem z zainstalowaniem sterowników do usbspa. Posiadam system viste i gdy podpinam programator pierwszy raz oczywiście pojawia się okienko że urządzenie nie zostało rozpoznane. Wchodzę w menadżer urządzeń i wskazuje ścieżkę do katalogu ze sterownikami, otrzymuję taki komunikat. "Określony folder nie zawiera zgodnego oprogramowania sterownika dla urządzenia. Jeśli folder zawiera sterownik, upewnij się że sterownik jest przeznaczony dla urządzenia Systemu Windows dla Systemów 32-bitowych." Pomimo że sterowniki są do systemu 32 bitowego.
Moje pytanie co robię nie tak i czy u was również pojawiały się takie problemy.

Atmege 8 programowałem w Burn-o-Mat fusy ustawione według obrazka z pierwszej strony.
Programowanie jak i weryfikacja przebiegły pozytywnie.

Proszę o pomoc.

Portret użytkownika mirley

Re: USBASP

Nie próbowałem załadować żadnego innego firmware do USBASPA, możesz to spróbowac zrobić w wolnej chwili i napisac o wynikach.

---------

CO do sterowników to czy po włożeniu USBASPA system pyta o sterowniki? Rozumiem że potem wybierasz plik inf i jest problem. nie ma tam opcji "mimo to instaluj". Przewaznie zawsze jest problem z podpisywaniem sterowników ale pod vistą dawno temu sprawdzałem i działało.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika kriss18

no właśnie pyta o sterowniki

no właśnie pyta o sterowniki gdy wybieram blik inf to wyskakuje ten błąd. nie ma nigdzie opcji instaluj mimo to. Czy może być to błąd programowania (choć było successfully) Czy coś od systemu??

Portret użytkownika mirley

Re: usbasp

prosta sprawa, podłącz programator do kompa gdzie jest winxp i sprawdź.

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika kriss18

Podłączając programator do

Podłączając programator do komputera z systemem Windows xp oczywiście wyskakuje okienko żę urządzenie nie zostało rozpoznane. Więc wybieram aby zainstalował urządzenie z lokalizacji. Wybieram dysk i wskazuje sterownik i co... i wyskakuje informacja że w danej lokalizacji nie ma informacji o wskazanym urządzeniu już mam dosyć tego programatora :[

Portret użytkownika Mielczar

Której wersji sterownika i

Której wersji sterownika i firmware używasz? Miałem podobny problem ze starszymi wersjami, ale ostatnia dostępna na stronie działa ok na xp, vista x64 i win7 x32.

-

"be the change you want to see in the world"

Portret użytkownika kriss18

Używam tej wersji ktora jest

Używam tej wersji ktora jest podana tutaj na stronie w linku na innej nie probowałem jesli mogę poprosic o link do atualnej wersji oprogramowania to byl bym wdzieczny...

Portret użytkownika mirley

Re: Usbasp

To ze nie umiesz zainstalować sterów to nie znaczy że programator jest zły. musisz wskazać odpowiedni folder w plikach które rozpakujesz po ściągnięciu. Folder /bin/win-driver

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika Mielczar

Ostatnią wersje firmware i

Ostatnią wersje firmware i sterowników znajdziesz pod tym LINKIEM

Po rozpakowaniu zaprogramuj procek odpowiednim dla niego firmware'em(np dla ATmega8):

Quote:
...\usbasp.2011-05-28\bin\firmware\usbasp.atmega8.2011-05-28.hex

Następnie zainstaluj sterownik dla windows, znajdujący się w:

Quote:
...\usbasp.2011-05-28\bin\win-driver\libusb_0.1.12.1

Pamiętaj, że przy wyborze folderu ze sterownikiem należy wskazać odkładnie ten folder:

Quote:
libusb_0.1.12.1

-

"be the change you want to see in the world"

Portret użytkownika kriss18

Quote:To ze nie umiesz

Quote:
To ze nie umiesz zainstalować sterów to nie znaczy że programator jest zły. musisz wskazać odpowiedni folder w plikach które rozpakujesz po ściągnięciu. Folder /bin/win-driver

Nie to że nie umiem bo jak by było wszystko w porządku tak jak opisałeś to bym nie zadawał pytań poza tym wskazuję odpowiedni folder tylko że windows nie chce ich przyjąć i nie powiedziałem że programator jest zły tylko uważam że może coś źle zrobiłem.

Dzięki Mielczar za profesjonalne podejście. Linki sprawdzę i mam nadzieję że myknie...

Portret użytkownika darek793

Mój Usbasp

Witam wszystkich
Nie wiem czy piszę w dobrym dziale, ale chciałem się pochwalić, że zrobiłem wyżej zaprojektowany programator i nie mam z nim żadnych problemów. Było to moje pierwsze starcie z mikrokontrolerami i termotransferem( wszystki informacje są z tej strony), ale operacja przebiegła bez najmniejszych problemów i odpaliłem go od strzału. Jedyną zmianą w stosunku do orginału jest zastosowanie Atmegi8L. Przy okazji więc, rozwiewa to wątpliwości co do zastosowania tego układu. Programator bez problemu komunikuje się z komputerem (Win7 32bit) i jest poprawnie rozpoznawany przez popularne programy (Bascom, Burn-O-Mat, Khazama). Nie mam jeszcze doświadczenia w programowaniu, więc będę pewnie częstym gościem forum, bo pierwszy sukces zachęcił mnie do zgłębiania wiedzy o mikrokontrolerach. Dziękuje za projekt i życzę dalszych tak udanych konstrukcji.

Portret użytkownika trentchu

podstawka

Czy jest możliwe zmodyfikowanie płytki programatora tak by za wyjściem Prog(7pin) na płytce poprowadzić te 6 ścieżek(VCC,GND,CLK,MOSI,MISO,RST) pod podstawkę (powiedzmy DIL-28) i za pomocą takiej konstrukcji programować uC bez konieczności wyprowadzania złącz do programowania na budowanych układach ??
Czyli chodzi mi o to, by do programatora ICSP(do jakichkolwiek uC) dobudować podstawkę programującą (lub kilka).

Portret użytkownika mirley

Re: Podstawka

Podstawka taka istnieje już w moich projektach.... popatrz dobrze. Wystarczy połączyć kablem

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.

Portret użytkownika veb

problem

Witam,

Z wielkim entuzjazmem zabrałem się za wykonanie opisanego programatora, jednak po wytrawieniu płytki i wlutowaniu elementów przyszło równie wielkie rozczarowanie ponieważ układ nie działa. Opiszę po kolei tok realizacji, może ktoś z użytkowników dostrzeże błąd.
Na samym początku podkreślę, że płytkę zaprojektowałem sam (nie chciałem iść na skróty i korzystać ze schematu dostępnego na stronie). Ze względu na moje małe doświadczenie w projektowaniu i dostępność laminatu jednostronnego, musiałem wstawić kilka zworek. Po wytrawieniu płytki dokładnie sprawdziłem czy wszystkie ścieżki przewodzą oraz czy nie ma nigdzie zwarcia. Ten test płytka zdała. Następnie umieściłem elementy (wartości takie same jak na schemacie, na pewno dobra polaryzacja diod Zenera). Sam układ Atmegi8 zaprogramowałem przez LPT z 4 rezystorami (układ także opisany na stronie). Programowanie odbyło się bez problemów. Fuse bity także dobrze ustawiłem (sprawdzałem kilkakrotnie). Oczywiście następnie scalak umieściłem w podstawce. Po podłączeniu do komputerów (kompy różnych osób, różne systemy operacyjne) programatora nie wykryto, zasilanie natomiast jest na pewno bo świeci się LED. Miałem kilka podejrzeń jakie mogą być tego przyczyny:
1. Niepoprawnie zaprogramowana Atmega8 (odpada, ponieważ później poprosiłem kumpla posiadającego sprawny programator o wgranie programu i ustawienie fuse bitów).
2. Skruszenie kwarcu przy ewentualnym, niezauważonym upadku - odpada bo kupiłem nowy.
3. Zmiana diod Zenera na 3.3V (przeczytałem takie rozwiązanie albo tutaj, albo na elektrodzie - też nie pomogło).
4. Źle ustawione zworki S_Target, S_Prog, S_SCK - sprawdzałem kilka razy i na pewno są ustawione dobrze.
5. W końcu pomyślałem, że płytka jest źle zaprojektowana, są jednak jakieś zwarcia lub przerwy, i najważniejszą część układu zrobiłem na stykówce (zbudowałem całe połączenie od USB - diody, kondensatory, rezystory.. ; układ z generatorem kwarcowym ; zwarłem pin 4 z 15 ; połączyłem reset do VCC przez 10k). Jednak komputer także nie wykrył programatora.

Jeżeli ktoś ma jakiś ewentualny pomysł czemu system nie działa, proszę o wskazówki. Również mam prośbę do osób, którym komputer wykrył programator - napiszcie jaki SO, jaki SP, pozostałą konfigurację jeżeli uważacie, że to ma wpływ na rozpoznanie układu.

Z góry dzięki za jakikolwiek odzew. Pozdrawiam

Portret użytkownika mirley

Re: Programator

Dobra... wkładasz programator do kompa i co się dziej? są dwa przypadki albo pojawia się okienko z prośbą o sterowniki albo pojawia się komunikat że urządzenie ma awarię? Sprawdzaj na winxp jak to możliwe bo sam na nim to testowałem, albo na ubuntu najnowszym, bo na ubuntu programator powinien ruszyć od kopa po zainstalowaniu avrdude. Co pokazuje menadżer urządzeń pod windowsem?

-

UWAGA! Możliwy jest zakup zaprogramowanych uC i zestawów elementów itp. do niektórych projektów. O dostępność proszę pytać via email. Konkretne oferty pojawiają się w cenniku.