(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 2x 22pF 1x Rezonator Kwarcowy 12MHz 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) Fuse low byte: 0x9f (szesnastkowo) 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) Linux1. 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) Windows1. 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: "m8" musimy zamienić na odpowiedni typ mikrokontrolera, który chcemy programować (najczęściej jest to: t2313, m8, m16, m32 lub m162) Zdjęcia Projektu:
|
|||||||||||||||||||||||||||||||||||||||||
Świetną rzeczą są
Świetną rzeczą są nakładki graficzne na avrdude. Dostępne tutaj:
http://sourceforge.net/projects/avrdude-gui/
http://avr8-burn-o-mat.aaabbb.de/avr8_burn_o_mat_avrdude_gui_en.html
Dostępne dla kilku systemów. Burn-O-Mat napisany jest w javie więc chodzi na każdym systemie.
Osobiście korzystam z drugiej bo nie potrzebuję rozbudowanych opcji. A z pierwszą miałem problem.
Dodatkowo ta druga ostrzega których fusebitów nie powinniśmy ruszać.
Znam avr8-burn-o-mat i
Znam avr8-burn-o-mat i czasami używam ale częściej konfiguracji umożliwiającej działanie avrdude w bascomie bo najczęściej w nim piszę. Dzięki za zainteresowanie :)
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.
Czy to zadziała podłączone przez HUBa?
Witajcie. Czy to zadziała podłączone do PC przez hub'a? Poza tym projekt świetny, mam na myśli bardzo zgrabne PCB. Na oryginalnej stronie takiego nie ma (chyba). Gratulacje i pozdrowienia dla autora :)
U mnie układ działa
U mnie układ działa podłączony do huba w czytniku kart (czytnik wewnętrzny do kart SD itp. z hubem usb). Całość podłączona jest kabelkiem do złącza w płycie głownej. Na hubie USB też bedzie działało bo właśnie to sprawdziłem (test na starym hubie usb 1.0 z przewodem 1m + dodatkowy kabel 1m do programatora od huba. Wgrałem trzykrotnie program ok 15kb do atmega162 i przeszło weryfikację za każdym razem)
Dzięki za zainteresowanie, pozdrawiam
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.
To, ze nie działa z hubem,
To, ze nie działa z hubem, może byc kwestią tego, ze hub zabiera trochę napięcia i po prostu jest za słaby, ergo to czy zadziała zalezy od konkretnego modelu huba.
dzięki
Jeszcze nie wiem, czy działa, bo jeszcze nie zmontowałem układu :D (mam dopiero gotową płytkę). Pytałem uprzedzając nieco fakty. Rzeczywiście o problemach z zasilaniem nie pomyślałem, raczej o niezgodności sprzętu, itp., bo z tym co rusz są problemy. Pozdrawiam raz jeszcze ;)
jak skonfigurować?
Dzisiaj odpaliłem ten programatorek. Zadziałał od pierwszego razu na avrdude :)
Ale mam z kolei inny problem: jak skonfigurować nakładkę graficzną do avrdude (link podawał już ktoś: http://sourceforge.net/projects/avrdude-gui/ ), żeby działała z usbasp? w liście wyboru nie ma go (mogę ręcznie dopisywać go do parametru, ale chyba nie o to chodzi w nakładce)? Przepraszam za takie pytania, ale jestem bardzo początkujący. Dzięki,pozdrawiam
Wlaśnie pobrałem z tej
Wlaśnie pobrałem z tej strony ten program i też nie wiem jak go ustawić. Ręczne dopisanie -c usbasp sprawia że coś działa ale nie pokazuje odczytanych fusebitów. Proponuje abyś skorzystał z drugiej nakładki graficznej ( avr8-burn-o-mat). Działa bez problemu i wczytuje wszystko co jest potrzebne :)
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.
burn o mat działa
rzeczywiście super :) Na elektroda.pl wyczytałem coś o avrdude-gui v0.2.1, która niby obsługiwała usbasp, ale coś nie mogę znaleźć :\ a inne, które mi się udało ściągnąć nie działają w ogóle (wywala błąd problemy z "inicjalizacją aplikacji"). Natomiast ta nakładka działa super.
Dzięki
Pozdrawiam
USBASP
zrobiłem sobie taki programator chciałem zaprogramować do niego atmegę8 w innym programatorze usbasp
w averdude ustawłem low fuse i high fuse według opisu i chyba uszkodziłem programator nie da się nim teraz programować
avrdude: error: programm enable: target doesn't answer. 1
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
po zaznaczeniu -F override signature check mam tak
avrdude: error: programm enable: target doesn't answer. 1
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
avrdude: Expected signature for ATMEGA8 is 1E 93 07
avrdude: erasing chip
avrdude: error: programm enable: target doesn't answer. 1
avrdude: reading input file "C:\Documents and Settings\EZNP\NONAME1.HEX"
avrdude: input file C:\Documents and Settings\EZNP\NONAME1.HEX auto detected as Intel Hex
avrdude: writing flash (1152 bytes):
Writing | ################################################## | 100% 8.99s
avrdude: 1152 bytes of flash written
avrdude: verifying flash memory against C:\Documents and Settings\EZNP\NONAME1.HEX:
avrdude: load data flash data from input file C:\Documents and Settings\EZNP\NONAME1.HEX:
avrdude: input file C:\Documents and Settings\EZNP\NONAME1.HEX auto detected as Intel Hex
avrdude: input file C:\Documents and Settings\EZNP\NONAME1.HEX contains 1152 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 6.48s
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0x12 != 0x00
avrdude: verification error; content mismatch
avrdude done. Thank you.
czy na programatorze usbasp można programować fusebity bez obawy zablokowania programatora
avrdude-gui
witam, miałem ten sam problem. Znalazłem na stronie Tomasza Ostrowskiego potrzebne pliki z działającym avrdude-gui. Jeżeli nie chce się Panu szukać podaję link do całej paczki http://rapidshare.com/files/177642730/PROGR_AVR_USBASP.rar.html
pozdrawiam
usbasp
dzięki za zainteresowanie ale mój problem tkwi w tym że nie mogę teraz programować programatorem usbasp którym chciałem zaprogramować układ do tego z tej strony ,oczywiście wcześniej działał do momentu gdy programowałem układ do projektu z tej strony ustawiłem w averdude fuse bity jak tu w opisie i wtedy straciłem możliwość programowania a programowany układ też chyba nie został zaprogramowany bo ten nowy programator też się nie uruchamia po podłączeniu do usb jest ciemny nie pali się żadna dioda a system rozpoznaje nie znane urządzenie tak więc teraz mam dwa i żaden nie działa czy myślisz że problem jest w averdude no i nie mam pojęcia jak reanimować ten pierwszy nie ma żadnych zworek do uaktualniania tylko
2 do zasilania układu programowanego i zmniejszania szybkości (nadmienię jeszcze że jestem jeszcze zielony w tym temacie. dzięki spróbuję z tym softem mam nadzieją że się uda
Re: USBAsp
Po pierwsze jak juz pisałem wczesniej na pytanie o nakładkę na AVRDUDE, polecam Burn-O-Mat. Jest prosty w obsłudze i nie sprawia problemów. Często go uzywam do ustawiania fusów i wszystko za pomocą USBaspa. Jeżeli robisz pierwszego USbaspa to zaprogramować ATMEGA8 możesz za pomocą programatora na LPT w postaci kabelka i rezystorów.(Opis tutaj) Jeśli chcesz zaprogramować nowego USBaspa za pomocą takiego samego programatora to po pierwsze należy zewrzeć zworkę "S_SCK" w programatorze a w układzie programowanym (tym nowym USBaspie) zwieramy tylko zworkę S_Prog. DO mikrokontroleraq programowanego należy też doprowadzić napięcie za pomocą zworki S_Target w programatorze.
Fusy należy ustawić tylko w mikrokontrolerze programowanym a nie w programatorze. Tego działającego USBaspa nie należy tykać :) (a szczególnie jego ustawień). Piszę to bo z twojego opisu zrozumiałem że zmieniłeś fusebity w programatorze
Czy ten pierwszy USBasp działa prawidłowo?
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.
usbasp
0to chodzi że ten pierwszy przestał dzialać błedy jak wyżej wybacz mi ale dopiero zaczynam i dlatego chcialbym prostej porady mam taki prog [url=http://http://www.allegro.pl/item510706172_nowosc_programator_isp_avr_usb_rohs_atmel_fv.html zworki są dwie jak w opisie do niego
"1. Zworka bliżej złącza ISP służy do podania zasilania 5V na ukłąd docelowy. Nie potrzeba wtedy dodatkowego zasilania. Jest pobierana z portu USB. Takie rozwiązanie polecam tylko wtedy, gdy mamy do zaprogramowania sam mikrokontroler. W innym przypadku należy zworkę zdjąć i skorzystać z zasilania płytki na której zainstalowany jest układ docelowy.
2. Zworka po zewnętrznej stronie płytki służy to obniżenia prędkości programowania. Powinna być założona przy programowaniu układów taktowanych zegarem poniżej 1,5MHz. i była założona
i pytanie - w avedude w zakladce Flasch poddałem scieżkę dostpu do pliku i zaznaczyłem write, niżej zaznaczylem ptaszki na low fuse i high fuse i wpisalem wartości no i na koniec execute czy w takim ustawieniu moglem zablokować programator programowany uklad był w podstawce połączony taśmą od programatora podczas moich pierwszych prób w ten sam sposób programowałem wiele razy i ze skutkiem czy odchaczając te low i high fuse
zmieniam układ w programatorze czy może powinienem wpisać te parametry w komand line u mnie wyglądalo to tak "avrdude" -p m8 -c usbasp -P lpt1 -U flash:w:"C:\usbasp.atmega8.2007-10-23.hex":a -U flash:v:"C:\usbasp.atmega8.2007-10-23.hex":a -U lfuse:w:0x9f:m -U hfuse:w:0xc9:m -e -E reset z nakładką nie probowałem bo nie mogłem jej jakoś odpalić. jeśli chodzi o ten pierwszy to niemam w nim zworki s_prog chyba że sam połączę jak w tym aby go reanimować sory za te bzdury ale czekam na odpowiedz sprubuję się podszkolić i nie zadawac takich pytań
Re: USBAsp
Żaden program nie powinien przestawić fusów w programatorze oni zmienić jego oprogramowania beż specjalnego podłączenia. Jeśli więc programator działał i nagle przestał musi to być wynikiem jego wady lub uszkodzenia. Mogłeś też przypadkiem przestawić jakieś zworki itp. które uniemożliwią komunikację z komputerem.
Polecam na początku zaprogramować twojego drugiego programatora za pomocą opisu o którym mówiłem i za pomocą bascoma. Jeśli już pójdzie to wtedy przejdziesz do obsługi pod avrdude. A tak na marginesie to zainstaluj nakładkę Burn-O-Mat na avrdude i będzie Ci łatwiej. Fusy ustawia się tam bardzo elegancko i bez problemu. (Po pierwszym uruchomieniu wybierz ścieżkę do avrdude i avrdude.conf, potem uruchom program ponownie i wejdź do ustawień AVRDUDE w menu u góry. Z listy programatorów wybierz USBASP i będzie on działał. Najpierw musisz oczywiście zaprogramować go za pomocą portu LPT i opisu tak jak powiedziałem)
Odnośnie programatora kupionego przez Ciebie na allegro to zajmiesz się nim potem jak juz skończysz z USBASPEM
Ps. Ja nie ustawiam fusebitów z linni komend, tylko raz to robiłem. Łatwo się jest pomylić a ustawienie przypadkiem samych zer spowoduje przejście na zewnetrzne źródło zegarowe i wtedy juz kwarc nie ruszy mikrokontrolera do życia :)
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.
usbasp
dzieki za informacje udało mi się zaprogramować został wykryty zainstalowałem sterowniki świeci się czerwona przy programowaniu zielona ale nie programuje mam tak
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.
Double check connections and try again, or use -F to override
this check.
avrdude.exe done. Thank you.
po zaznaczeniu -F
avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude.exe: Device signature = 0xffffff
avrdude.exe: Yikes! Invalid device signature.
avrdude.exe: Expected signature for ATMEGA8 is 1E 93 07
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: error: programm enable: target doesn't answer. 1
avrdude.exe: reading input file "C:\Users\ALEX\Downloads\4x_DS18b20,_LCD\NONAME2T.HEX"
avrdude.exe: input file C:\Users\ALEX\Downloads\4x_DS18b20,_LCD\NONAME2T.HEX auto detected as Intel Hex
avrdude.exe: writing flash (4256 bytes):
Writing | ################################################## | 100% 0.70s
avrdude.exe: 4256 bytes of flash written
avrdude.exe: verifying flash memory against C:\Users\ALEX\Downloads\4x_DS18b20,_LCD\NONAME2T.HEX:
avrdude.exe: load data flash data from input file C:\Users\ALEX\Downloads\4x_DS18b20,_LCD\NONAME2T.HEX:
avrdude.exe: input file C:\Users\ALEX\Downloads\4x_DS18b20,_LCD\NONAME2T.HEX auto detected as Intel Hex
avrdude.exe: input file C:\Users\ALEX\Downloads\4x_DS18b20,_LCD\NONAME2T.HEX contains 4256 bytes
avrdude.exe: reading on-chip flash data:
Reading | ################################################## | 100% 0.59s
avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
0x12 != 0x00
avrdude.exe: verification error; content mismatch
avrdude.exe done. Thank you.
ten sam układ innym programatorem programuje się ok . na stronie projektu którą podałeś u siebie w pliku txt są podane takie dane
# TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef
# TARGET=atmega48 HFUSE=0xdd LFUSE=0xff
to pomyłka czy tak mają być ustawione fuse bity. może masz jakieś sugestie rowiązania problemu, połączenia sprawdzone kabelki itp
Re: USBasp
Wszystko na to wskazuje że programator jest sprawny. Na razie nie probuj wgrać programu do mikrokontrolera bo nic to na razie nie da. Najpierw musi zadziałać odczyt sygnatury mikroprocesora więc wykonuj tylko z wiersza poleceń (będąc w katalogu z avrdude) polecenie:
gdzie m8 to typ mikrokontrolera jaki chcesz zaprogramować za pomocą USBasp'a (patrz opis). Po pierwsze po zaprogramowaniu programatora należy rozłączyć zworkę S_Prog bo nie będzie już potrzebna. Piny złącza programującego należy podłączyć do odpowiednich pinów w programowanym mikrokontrolerze. Programowany układ musi być zasilany, możemy do tego celu wykorzystać zworkę S_Target i zasilać programowany procesor z portu USB za pomocą programatora.
Jeżeli programowany układ jest nowy to należy zewrzeć zworkę S_SCK. Obniży ona częstotliwość sygnałów programujących do takiej aby fabryczny układ na wewnetrznym oscylatorze 1MHz zdołał ją "zobaczyć". Zworka S_SCK ma być zwarta zawsze gdy mikrokontroler jest taktowany zegarem poniżej ok 1,5MHz
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.
usbasp
ze zwartym S_SCK mam
avrdude.exe: error: programm enable: target doesn't answer. 0
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | avrdude.exe: error: wrong responds size
avrdude.exe: error: wrong responds size
################avrdude.exe: error: wrong responds size
################################## | 100% 0.00s
avrdude.exe: Device signature = 0x020202
avrdude.exe: Expected signature for ATMEGA8 is 1E 93 07
Double check chip, or use -F to override this check.
i gaśnie czerwona dioda i programator jest nie wykrywany do momentu zdjęcia zworki
zworka rozwarta
avrdude.exe: error: programm enable: target doesn't answer. 1
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude.exe: Device signature = 0xffffff
avrdude.exe: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
Re: USBAsp
Jeżeli zwarta jest zworka S_SCK to programator powinien działać zarówno z mikrokontrolerami taktowanymi wolno jak i tymi szybkimi (tylko programowanie będzie wolniejsze) Jeśli po zwarciu S_SCK programator się zawiesza to jest jednak oznaka jego nie dobrego działania albo jakiegoś zwarcia na płytce.
Możesz ponownie zaprogramować ATMEGA8 w programatorze i poraz kolejny sprawdzić jego fusebity. Podłącz też do innego portu USB w komputerze (bedzie trzeba znowu sterowniki zainstalować). Programator ten musi działać bo zrobiłem 2 takie i obecnie używam tylko ich, bez problemów żadnych.
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.
ok dzięki za cierpliwość
ok dzięki za cierpliwość wszystko jasne szukam usterki
usbasp
działa. jedynym elementem z odzysku był kwarc wylutowałem znalazłem drugi i ruszył dzięki za pomoc
Re: USBasp
To dobrze że działa. Na przyszłość proszę nie stosować rezonatora kwarcowego z odzysku, już wiele osób miało z takimi problem. Nie wiem czemu tak jest. Ja zawsze mam w zapasie jakieś po 5 sztuk nowych 16MHz, 12MHz i 8MHz :)
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.
A można używać tego układu
A można używać tego układu pod samego BASCOM AVR??? (czy jednak trzeba się nieco przestawić na avr dude) ???
Re; USBasp
Można programować w bascomie ale tylko przez avrdude, tak jak napisałem. Sam bascom narazaie nie obsługuje takiego programatora
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.
fusebity
Napisał Pan:
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
Najpierw wgrałem Bascomem plik hex teraz czas na fusebity i raz się nie udało. Czy tak ustawione fusebity mogę zaprogramować zwykłym programatorem (pare kabelków z rezystororami do LPT wg opisu http://mirley.firlej.org/jak_zaprogramowac_pierwszy_avr)
czy nic się nie stanie jak SPIEN = 0 Bo obawiam się czy znowu atmega przestanie odpowiadać . Mogłbym jednak prosić o zdjęcie usatwionych fusebitów z Pony Ponga albo tej graficznej nakładki na AVR Dude, które kratki dokładnie maja być zaznaczone a które puste bo już mi sie wszystko misza więc jak na pierwszy raz to prosze taką prostą instrukcje bo w googlach różne odpowiedzi się wykluczają a nik tego nie weryfikuje.
Re: Fusebity
Jeśli do programowania używasz bascoma albo masz taką możliwośc to ustaw poprostu pracę z zewnętrznym kwarcem (ext.Crystal...) i dużą częstotliwością pracy >8MHz. Już powinno zacząć działać, to są najważniejsze opcje. W tym co napisałem 0 oznacza bit zaprogramowany (tak jak w kartach katalogowych) a 1 niezaprogramowany. Przeczytaj instrukcję od swojego programu i ustaw tak jak napisałem pamiętając o tym że 0 to zaprogramowany
SPIEN = 0 oznacza włączony SPI, więc nie ma problemu
Nie mam aktualnie dostępu do swojego komputera, w sobotę postaram się zrobić screenshot z Burn-O-Mat'a
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.
Fusebity
Na nowerj Atmedze8 PonyPong odczytuje takie coś niepoki mnie pierwsza kratka RSTDISABLE
pozostawienie jej pustej tak jak orginalnie spowoduje wyłączeni pinu reset i nie będę mógł używać programatora? Bo już raz tak sie stało znalażłem wczoraj taki opis podłączenia zewnętrzengo 12MHz też dla programatora USBasp http://ajd.czest.pl/~pawel.borkowski/wyklady/usbasp/obrazy/fuse_ponyprog.gif i zaraz po kliknięciu write Atmega przestała działać:( a to zdjęcie wg auora opisuje konfiguracje:
RSTDISBL = 1
WDTON = 1
SPIEN = 0
CKOPT = 0
EESAVE = 1
BOOTSZ1 = 0
BOOTSZ0 = 0
BOOTRST = 1
BODLEVEL = 1
BODEN = 1
SUT1 = 1
SUT0 = 0
CKSEL3 = 1
CKSEL2 = 1
CKSEL1 = 1
CKSEL0 = 1
A wg mnie to wszystko się kłuci, ale moje doświadczenie z fusebitami ogranicza się do 3wieczorów czytania róznych postów(nie robie reklamy forum) i jednej atmegi która już się nie daje wykryć. Jestem troche niecierpliwy, ale musze wytrzymać do soboty bo bascom to jednak za głęboka woda:)
Re: Fusebity USBasp
Jeżeli używasz programow ktorych nie jesteś pewien to potem tak się mikrokontroler blokuje. Ja nigdy nie ustawiałem nic w ponyProg i nie będe tego robił. Do fusebitow najlepszy jest Burn-O-Mat i ewentualnie Bascom AVR. Niektore programy wprowadzają zamieszanie w ustawieniach. Trzeba zawsze pamiętać że ustawienie wartości 0 na danym bicie to jest bit zaprogramowany (włączony, "Tak"). A zatem ustawienie RSTDISBL = 1 jest jak najbardziej poprawne bo oznacza dosłownie : "ResetWyłączony = Nie" i pin resetu będzie działał napewno. Jeżeli w twoim programie do fusebitow 1 oznacza 0 a 0 oznacza 1 to się robi zamieszanie i taki program należy wywalić do kosza.
Zamieszczę potem zrzut z Burn-O-Mata lub bascoma dobrych fusebitow. Popatrz jeszcze do mojego opisu fusebitow w dziale: artykuły rożne. Napisałem tam co i jak trzeba ustawić, aby nikt nie fatygował się w karcie katalogowej z tymi 4 stronami opisu :)
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.
Fusebity USBasp
Dziękuje za chęć pomocy co do pierwszego razu z fusebitami dla zewnętrznego kwarcu to jednak poczekam na screen:)(z wewnętrznym się udawało) Artykuł różne "Fuse Bity w mikrokontrolerach AVR" Już czytałem, ale pojęcia takie jak: "układ BOD", "napięcie zasilające szybko narasta", "jest stosowany gdy napięcie zasilające powoli narasta". To narazie za dużo jak na moją głowę, elektroniką bawię się tak hobbystycznie nie mam na jej temat szkolnej wiedzy tylko to czego sam się nauczę w Internecie ja jestem bardziej humanistą o rozległych zainteresowaniach;) I przy okazji poszerzam wiedze, także dzięki takim ludziom jak Pan:) PS b.dobra strona
programowanie działa ale.
Witam serdecznie, zmontowałem ten programator po wielu próbach jednak się udało uruchomić i zaprogramować narazie atmega 88
ale mam następujący problem, gdy tylko podepnę USBasp do portu USB to mogę tylko jednorazowo zaprogramować, gdy będę znów chciał zaprogramować to muszę USBasp odłączyć od USB i podłączyć ponownie.
posiadam windows XP
niestety na Windows Vista nie da się zainstalować sterowników ;(
Re: USBasp
To dziwne co dzieje się z twoim programatorem. A czy skorzystałeś z wersji kodu źródłowego pod ATMEGA88? Czy ustawiłem mu poprawnie Fusebity? Ja wszędzie przedstawiam opis do ATMEGA8 a nie 88.
Pod systemem windows xp programator śmiga bez żadnych problemów i odrazu się instaluje. Pod Vista trzeba kliknąć "zezwalaj" a potem pozwolić zainstalować sterowniki nie podpisane cyfrowo i też śmiga :)
Sprawdzałem działanie programatorka pod wszystkimi systemami, które wymieniłem na wstępie
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.
Re: programowanie działa ale.
Kogar a w czym programujesz? Może np w bascom zapomniałes kliknąć "reset chip"? A możesz wstawić screnna ustawień fuse bitów bo autor projektu narazie nie ma czasu więc moża mu pomóc w pomaganiu:)
już tłumaczę:) w
już tłumaczę:)
w programatorze usbavr siedzi atmega8 tym programatorem chcę zaprogramować atmege88 :)
powodem błędów pod XP była niezgodność avrdude i softu w atmedze, na XP działa ładnie, no ale moim założeniem było i jest nadal uruchomić programator ten pod windowsem Vista (ja mam Home premium) Gdy podpinam usbavr do USB pojawia mi się:
1 podpięcie do portu USB powoduje "szukanie sprzętu - instalowanie sterownika "domyślnego nie mam jak przerwać tego. Po chwili pokazuje się komunikat : " nie rozpoznano urządzenia USB
Jedno z urządzeń USB podłączonych do tego komputera ma awarię, ale system Windows nie może go rozpoznać. Aby uzyskać pomoc w rozwiązywaniu tego problemu kliknij ten komunikat. www.miecznet.pl/~kogar/1.jpg
2 więc kliknąłem : www.miecznet.pl/~kogar/2.jpg
3 wchodzę w menadżer urządzeń we właściwosci sterownika tego " nieznanego urządzenia" www.miecznet.pl/~kogar/3.jpg
4 udało mi się zainstalować Lib usb win 32 w ten sposób, że w menadżerze urządzeń klikam na nazwę komputera i wybieram :> dodaj starszy sprzęt. Ok udało się zainstalować jednak... co widać na obrazku aznaczonym wykrzyknikiem :
system" nie wie" do którego portu ma się odwołać ten sterownik. analizujac obrazek z pkt 3 i 4 myślę : ok nazwe portu mam , tylko to przenieść wystarczy, ale żeby to zobić to pewnie trzeba pogrzebać w rejestrze
www.miecznet.pl/~kogar/3a.jpg
www.miecznet.pl/~kogar/4.jpg
tylko czy ktoś ma pomysł jak ? ewentulnei gdzi szukać ? :/
Re: Fusebity USBasp
Może ktoś nawet w paincie zamalować poprawne kratki(tu są standardowe) i wstawić zdjęcie na jakiś sewer z obrazami?
http://images44.fotosik.pl/61/35d3c322b938710c.jpg
Tak żeby nikt kto pierwszy raz ustawia fusebity nie zrobił błedu. Przepraszam Mirley ale na nowym komputerze nie mam LPT i musze do kolegi specjalnie jechać(a troche drogi to jest) zaprogramować atege i chce żeby odrazu wszystko dobrze u niego ustawić.
Re: Fusebity - USBAsp
Witam Wszystkich
Przerobiłem ten plik i umieściłem w artykule, stare zdjęcie zdjąłem z odpowiedzi dla przejrzystości całości.
Odnośnie programatora pod Vistą to proszę podłąćzyć do innego portu, nic to nie daje? System nie powinien sam instalować sterownika
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.
widocznie mój system jest
widocznie mój system jest inny;/ na moim nie działa. jak narazie ale to nie koniec wojny:)
pozdrawiam.
wojna wygrana:)
poprzednia wersja nie działała, byla ona zdubowana wg schematu ze strony http://www.fischl.de/usbasp/ i system wykrywal jako nieznane urządzenie,
zmontowałem układ z tej strony , podpiąłem i system sam zainstalował sterowniki, o nic nawet nie pytał! W końcu można zaczać zabawe z avr:)
dziękuję za podpowiedzi i zainteresowanie moim problemem;)
pozdrawiam
Re: Usbasp
Bardzo dobrze że wszystko śmiga. To dobry programator bo działa pod wieloma systemami operacyjnymi i pod dużą liczbą programów
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.
USBasp + AVR Studio
Witam
A ja mam takie pytanko, czy konfigurowałeś ten programator pod AvrStudio? Ponieważ nie mogę sobie z tym poradzić, w Arguments: wrzucałem podobnie jak dla bascoma, Initial Directory: kombinowałem na różne sposoby,ścieżka do projektu,ścieżka do default,gdzie jest plik hex i nic, zawsze jest błąd:
error opening {FILE}: no such a file or directory.
a jak w argumentach wklepalem "plik.hex" i initial directory: default\ to problemu nie ma. Tyle że nie tedy droga by przy każdym projekcie klepać nazwę pliku:)
Będę wdzięczny za pomoc. Pozdrawiam
Re: USBasp +AVR Studio
Zainstalowałem już AVR Studio. Znalazłem następującą konfigurację w dokumencie http://www.microsense.pl/allegro/AVR_USB_PROG/manuals/AVR_USB_PROG_manual.pdf.
Zgodnie z tamtymi instrukcjami usbasp odpala się za pomocą avrdude w srodowisku AVR Studio. Nie mam jednak żadnego projektu napisanego pod AVR Studio więc nie sprawdzę czy sie kompiluje. Jeśli masz coś co miga diodami na porcie to prześlij mi na maila. Jak to uruchomię to dokładnie opiszę na stronie, w opisie programatora.
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.
Zewnetrzne zasilanie układu
Może i to pytanie z podstaw elektroniki ale ja nie znam odpowiedzi. Chcąc zasilać uklad z zewnatrz na programaotrze należy zdjąć zworke +5V. Ale wtedy masa USB będzie połączona z masa np. zasilacza(muszą być połączone bo inaczej nie idze nawet odczyać sygnatury atmegi-sprawdziłem) Ale czy nic nie stanie sie z portem USB jeżeli jest do niego masa z zasilacza podłączona?
Re: Zasilanie
Masa MUSI być podłączona. Dla zasilania z zewnętrznego zasilacza rozwieramy zworkę S_target a do układu podłączamy linie programujące + Masa(GND). Zasialnie może być podawane tylko z jednego źródła.
Jeśli masa USB nie była by zwarta z masą zasilacza to jest 100 razy większe prawdopodobieństwo że coś spalisz.
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.
Jak programowac i ustawiac fusy?
Witam. Mam moj zlozony nie zaprogramowany programator. Podlaczam go do dzialajacego programatora kolegi. Zmieniam zworke SCK i self programing. Teraz wrzucam hexa i zanim odlacze programatory wrzucam fusy? Czy jaka jest kolejnosc dzialania?
Re: USBasp
Kolejność działania jest dowolna. Ja przeważnie pierwsze ustawiam fusebity a dopiero potem programuje. Na zwartej zworce SLOW SCK możesz programować nawet gdy procesor chodzi na 12MHz więc nie ma problemu(poprostu pójdzie wolniej). Jeśli wgrasz najpierw fusebity to możesz od razu rozłączyć zworkę SLOW SCK i zaprogramować hex w normalnym tempie.
Do fusebitów i programowania zalecam program Burn-O-Mat
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.
OK. Dzieki za pomoc. Dzis u
OK. Dzieki za pomoc. Dzis u kumpla zaprogramowalem skonstruowany USBasp i fusy tez ustawilem. Windows widzi wiec jest postep. Podlaczam do mojego programatora plytke z Atmega32 do zaprogamowania. Wpisuje: avrdude.exe -c usbasp -p m32 -U flash:w:program.hex
i dostaje:
found 5 busses
found 5 busses
avrdude.exe: error: could not find USB device "USBasp" with vid:0x16c0 pid=0x5dc
Proby programowania z nakladkami graficznymi daja podobny blad;/
Re: USBasp
Czy program.hex jest w tym samym folderze z którego jest wywoływany avrdude?
Wogóle na początku testuj programator za pomocą:
jeśli zobaczysz komunikat informujący o tym że procesor jest gotowy do przyjęcia instrukcji to możesz potem próbować wgrywać program. Wcześniej to nie ma sensu.
Na samym początku sprawdź czy fusy są dobrze ustawione, czy program wgrał się bez błędów i czy sterowniki w systemie są dobrze zainstalowane, według opisu powyżej.
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.
Wpisalem to co mi napisales i
Wpisalem to co mi napisales i nic. Ten sam komunikat bledu...
A menadżer urządzeń widzi
A menadżer urządzeń widzi programator poprawnie?
Re: ...
Raczej tak. Po podlaczeniu programatora do kompa: http://img17.imageshack.us/my.php?image=menadger.jpg
i do tego usbview:
http://img126.imageshack.us/my.php?image=usbviewjpg.jpg
Proba odczytu sygnatur poleceniem: avrdude -p m8 -c usbasp
nadal zwraca ten sam blad
Re: USBasp
Czy twój mikrokontroler to ATMEGA8 czy ATMEGA88? Spróbuj ponownie zaprogramować mikrokontroler
Czy połączenia i luty na płytce sprawdziłeś?
W poleceniu do odczytu sygnatur nazwę "m8" musisz zastąpić nazwą procesora podłączonego do programatora
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.