[ Udovicic @ 01.10.2010. 08:09 ] @
Vidim da ovi mikrokontroleri na bazi Intel-a (MCS 51) nisu baš popularni na ovom forumu, ali da priupitam.

Da li je neko pravio i napravio funkcionalan USB programator za Atmelovu seriju AT89S....?

Ja sam nešto pokušavao ali bez uspeha.

Našao sam brdo toga na net-u, ali me interesuju iskustva iskusnijih...

Pozdrav,
[ Sepa011 @ 01.10.2010. 17:24 ] @
U osnovi mozes da koristis USBASP http://www.fischl.de/usbasp/ sa modifikovanim firmverom: http://www.8051projects.info/b...st/USB-8051AVR-programmer.aspx

Bas se spremam da za vikend napravim jedan USBASP, nesto mi treba :( (bice i plocica(e) viska).

Obavestavam cim bude proveren.
[ Sepa011 @ 02.10.2010. 19:52 ] @
Ima i 'visak' plocica, funkcionise
[ Udovicic @ 03.10.2010. 14:41 ] @
Taj sam i ja napravio. Ali na mom kompu ne radi. Ne znam da li je problem u FW, jer komp mi ne prepoznaje programator.

Koji FW si spustio u programator?

Citat:
Sepa011: Ima i 'visak' plocica, funkcionise :)


Ajde mi se javi na PP, da napravimo razmenu dobara...
[ lestrigonac @ 03.10.2010. 22:26 ] @
Vidim da ste presli na pp, ali da pokusam da pomognem, mozda vidis ovde...

Ako pravis USBAsp dobro proveri fuse bitove jer meni zbog toga nije hteo da prepoznaje programator i da li si dobro sve povezao na plocici... U jednoj od tema sam postavio pcb za plocicu za USBAsp, pa pogledaj i to ako do sada nisi resio problem...

Pozdrav,
Goran Kecman
[ Drole_e @ 04.10.2010. 07:00 ] @
Citat:
Udovicic: Taj sam i ja napravio. Ali na mom kompu ne radi. Ne znam da li je problem u FW, jer komp mi ne prepoznaje programator.

Koji FW si spustio u programator?


Da li si stavio zener diode na D+ i D- linije ukoliko nisi to ti je najverovatnije problem.
[ Udovicic @ 04.10.2010. 07:18 ] @
Citat:
lestrigonac: Vidim da ste presli na pp, ali da pokusam da pomognem, mozda vidis ovde...

Ako pravis USBAsp dobro proveri fuse bitove jer meni zbog toga nije hteo da prepoznaje programator i da li si dobro sve povezao na plocici... U jednoj od tema sam postavio pcb za plocicu za USBAsp, pa pogledaj i to ako do sada nisi resio problem...

Pozdrav,
Goran Kecman


Da budem iskren, nisam nešto puno eksperimentisao sa fuse bitovima, znači FW sam ubacio u izvornom formatu. Ako znaš dobitnu kombinaciju, pošalji...

[ Udovicic @ 04.10.2010. 07:20 ] @
Citat:
Drole_e: Da li si stavio zener diode na D+ i D- linije ukoliko nisi to ti je najverovatnije problem.


Nisam postavio zenerece, ali to je najmanji problem...

Hvala, isprobaću...
[ lestrigonac @ 04.10.2010. 08:06 ] @
Zener diode su bitne i nece kompjuter da prepozna programator bez njih (bar su meni tako rekli)... A sto se tice fuse bitova pise u readme fajlu koji dobijes u arhivi skinutoj sa sajta gde je sema i firmware :) Zavisi koji si kontroler koristio, ATMega8 ili ATMega48, razlikuju se fuse bitovi :)

@edit: Nisam siguran da li treba podesavati fuse bitove u tvom slucaju jer ubacujes drugaciji firmware od mene, ali siguran sam da pise negde... :)

Pozdrav...
[ shpiki @ 04.10.2010. 11:06 ] @
I ja sam pravio USBasp i ništa nisam čačkao oko fuse bitova, proradio je iz prve.
Zenerice moraš da postaviš na D+ i D- kao što reče Drole_e, jer bez njih neće raditi. Zenerka od 3v3 ili 3v6 rešava problem.

Pozdrav.
[ Sepa011 @ 04.10.2010. 13:00 ] @
ATMega48, i bez zenerica radi 'iz prve' na stabilnoj kanti, a i na laponcu
[ bogdan.kecman @ 04.10.2010. 13:29 ] @
obrati paznju da preopterecujes usb port tako posto atmega puca 5V tamo gde chip na kanti ocekuje 3v3 tako da ce ako nista drugo da se pregreje ... da ne spominjem da mozes lako da spucas usb na nekom lapu ako nema svoju zastitu (ja spalio tako usb na jednom hp-u, radilo sve oko 20min i onda "ka dzbeng") .. tri otpornika i 2 zenerke kostaju mnogo malo u poredjenju sa tim kakav krs mogu da naprave...
[ lestrigonac @ 04.10.2010. 16:06 ] @
Postoji mogucnost da je u firmware-u namesteno da se podesava nesto, ali ja sam morao podesavati fuse bitove (mozda zbog starijeg firmware-a koji sam koristio), a i tako pise u readme fajlu na sajtu...

Pozdrav...:)
[ bogdan.kecman @ 04.10.2010. 16:27 ] @
readme fajl kaze:

Citat:

Firmware:
Flash "bin/firmware/usbasp.atmega48.xxxx-xx-xx.hex" or "bin/firmware/usbasp.atmega8.xxxx-xx-xx.hex" to the used controller with a working programmer (e.g. with avrdude, uisp, ...).
Set jumper J2 to activate USBasp firmware update function.

You have to change the fuse bits for external crystal (see "make fuses").
# TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef
# TARGET=atmega48 HFUSE=0xdd LFUSE=0xff



e sad, ako pogledamo Makefile:

Code:

# TARGET=atmega8    HFUSE=0xc9  LFUSE=0xef
# TARGET=atmega48   HFUSE=0xdd  LFUSE=0xff
# TARGET=at90s2313
TARGET=atmega8
HFUSE=0xc9
LFUSE=0xef
...
...
fuses:
    avrdude -c ${ISP} -p ${TARGET} -P ${PORT} -u -U hfuse:w:$(HFUSE):m -U lfuse:w:$(LFUSE):m


e sad, drugar bio ovde i mi spucali firmware u atmega48 bez ikakve filozofije:

Code:

avrdude -c usbasp -p m48 -e -U flash:w:usbasp.atmega48.2009-02-28.hex 


covek otiso ... nije zvao da kuka da ne radi .. tako da kapiram da mu je proradilo .. (sto je najgore, on covek rece, vidi ima neku fuse bitovi, ja pogledo makefile i skonto da se to kompajlira u hex i nisam gledo dalje ...) .. sad vidim da bi u stvari pravilno bilo da smo uradili:

Code:

avrdude -c usbasp -p m48 -e -U flash:w:usbasp.atmega48.2009-02-28.hex -u -U hfuse:w:0xdd:m -U lfuse:w:0xff:m


no, sta je tu je .. lako cemo ga prepeci ako ne radi :D

ne kontam sto se fuse bitovi ne nalaze vec u hex-u .. al valjda ima i to svoje prednosti ..
[ Sepa011 @ 04.10.2010. 19:09 ] @
Jedino sto je drugar morao da programira fuse bitove (iskopao se negde PonyProg i 4 otpornika).
[ bogdan.kecman @ 04.10.2010. 19:16 ] @
sorry :( ... video si i sam kako je glupo napisan readme fajl ... no, znamo za sledeci put :)

zo, ko bude sledeci peko ..

Code:

avrdude -c usbasp -p m48 -e -U flash:w:usbasp.atmega48.2009-02-28.hex -u -U hfuse:w:0xdd:m -U lfuse:w:0xff:m


to bi trebalo da zavrsi posao, ako ne onda moze i pojedinacno

Code:

avrdude -c usbasp -p m48 -e -U flash:w:usbasp.atmega48.2009-02-28.hex
avrdude -c usbasp -p m48 -e -u -U hfuse:w:0xdd:m -U lfuse:w:0xff:m

[ Sepa011 @ 04.10.2010. 19:32 ] @
Ili, ako se pod 'doze koristi eXtreme Burner:

[ Udovicic @ 05.10.2010. 07:13 ] @
Hvala svima na sugestijama....

Nisam rešio problem.

Izgleda da sam ja postavio temu naopako, pa da malo razjasnim...

Krenuo sam u izgradnju USB programatora za Atmelovu seriju mikrokontrolera na bazi intela AT89S (razlog za ovu seriju je taj što sam ranije radio sa Intelom, pa reko da nastavim sa Atmelom). Projekat sam našao na:

http://www.8051projects.info/b...st/USB-8051AVR-programmer.aspx

Kao što se vidi iz projekta, sam programator je isti kao programator USBasp, koji sam pronašao na:

http://www.fischl.de/usbasp/

Prvo sam sastavio neki prosti programator na paralelni port, pa njime isprogramirao AT Mega8.

Sve sam ja to lepo sastavio, dodao i zenerice, kako ste predlagali, ali još uvek ništa.

Kada utaknem programator u komp sije crveni LED, usb ga ne prepozna i nemogu da instaliram priloženi USB driver (koji je isti u oba projekta).

Da, postoji readme fajl, ali je na kineskom.

Ako je neko pravio isti programator i proradio mu je, daj da mi otvori oči, pa da vidim gde grešim. Takođe, ako imate neki drugi provereni projekat za namenu koju sam naveo, pošaljite...

[ bogdan.kecman @ 05.10.2010. 08:03 ] @
taj avrusb lib je malo "nategnut" .. super je sto su na mcu koji nema usb hw nabudzili isti ali .. elem, par stvari koje su mene .. u zdrav mozak sa tim istim avrusb lib-om

1. zenerke mora da budu 3v6, ako stavis 3v3 zenerke u 99% slucajeva neces proci enumeraciju
2. kristal mora da bude u bobu isti kao onaj za koji je avrusb lib konfigurisan / kompajliran (podrzani kristali: 12 MHz, 12.8 MHz, 15 MHz, 16 MHz, 16.5 MHz, 18 MHz and 20 MHz ) obrati paznju da 0.1MHz greska je dovoljna da usb nece da prodje enumeraciju
3. FUSE bitovi .. ko ga izmisli tako da se fuse bitovi nalaze van hex-a (evo neki dan covek presao pola bgd-a da bi spekli usbasp u atmela i otiso kuci i morao da pece ponovo uz pomoc stapa i kanapa posto nismo znali da mora fuse bitovi da se spucaju zasebno) .. pogledaj u Makefile / readme / stagod da li se spominju fuse bitovi .. moras da ih napeces inace nista
4. da, jos jedna zeznuta stvar, zenerke mora budu MALE !!! LOW POWER, 100-300mW ako mozes da nadjes, 500mW max!! (ove "jace" imaju preveliku kapacitivnost cak i za usb 1.1 tako da nista od enumeracije)

ono sto mozes za 1 i 4 je da skines zenerke i stuces avr direktno u usb, a avr napojis preko jedne diode (ili mu drugacije skines napon na 4-4.5V) mada i ne mora i 5V bi trebalo da radi cak i tad bi on 3v3 trebalo da vidi kao high, samo pazi, ovo moze da spali usb port tako da je zgodno da ga spojis na neki usb hub koji ti nece biti zao da spalis ako do toga dodje...




[ Sepa011 @ 05.10.2010. 14:25 ] @
@Udovicic

Ako si iz BGD, javi se da ti izprogramiram taj AtMega8
[ Udovicic @ 05.10.2010. 16:23 ] @
Nisam iz BGD, ali hvala u svakom slučaju na ponudi.

Ipak je problem bio u Fuse bitovima.
Malopre sam ih isprogramirao i uspeo sam da instaliram USB driver i program Progisp, koji ide uz ovaj projekat, mi je prepoznao programator.

Još samo da probam nešto konkretno da zapržim...

Javiću vam kako je prošlo.

Što neko ranije napisa, nije ni meni jasno zašto se Fuse i Lock bitovi programiraju zasebno, a ne u okviru .hex fajla.

Hvala svima na pomoći...
[ lestrigonac @ 05.10.2010. 20:21 ] @
Mislim da postoji neka fora da se u AVR Studiju napisu neke komande koje odredjuju kako ce se fuse bitovi programirati, ali nisam probao jos uvek...
[ Udovicic @ 06.10.2010. 17:57 ] @
Hvala svima na pomoći...

Piše, briše, proverava...

Kazo bi da radi...

Pozdrav...
[ Sepa011 @ 06.10.2010. 20:28 ] @
Cestitamoooooo

BTW, ima li neko ATMega8-16PU (Kelco trenutno nema na lageru), trebao bi mi 1 komat , posteno vracam.
[ geniuxx @ 06.10.2010. 22:31 ] @
Citat:
Udovicic: Hvala svima na pomoći...

Piše, briše, proverava...

Kazo bi da radi...

Pozdrav...

Radi sve? I AVR i 8051? Da li bi mogao da otkrijes tajnu sta si tacno radio sa fuse bitovima? Meni USBASP za AVR radi ok, ali nisam uspeo da ga nateram da sprzi 8051...
[ shpiki @ 07.10.2010. 01:04 ] @
@Sepa011
nazovi Sprint, ako ne nadjes, javi se na pp
[ bogdan.kecman @ 07.10.2010. 01:30 ] @
@geniuxx, koliko sam ja shvatio usbasp firmware ne moze da spece '51 nego na isti taj hardware ubacis drugi firmware i onda moze da pece '51 (ali onda nije vise usbasp i ne pece vise atmege nego samo '51eve) tako da ako oces da peces i avr i '51 moras da ili imas 2 komata (jedan sa jednim a drugi sa drugim fw-om) ili da im menjas firmware kada oces da peces onu drugu vrstu (doduse, da bi im menjao firmware opet ti treba 2 komada tako da ..)
[ shpiki @ 07.10.2010. 02:32 ] @
a jel bi prošla ona fora sa "Update firmware"? šatro da radi firmware update, a ubaci firmware za *51, pa kad mu opet zatreba USBasp, "update" na USBasp firmware... mada čim se toliko cima da sredi za *51, sumnjam da će u skorije vreme raditi nešto drugo...
[ bogdan.kecman @ 07.10.2010. 02:43 ] @
mislim da usbasp ne ume sam sebe da update-uje .. bar ne da ja znam .. (pickit ima bootloader koji to ume ali nisam video da usbasp to ume) .. ne bi da nagadjam sta ce i koliko raditi :D .. ja jos uvek ne mogu da verujem da ljudi trose '51 .. ja sam zadnji put video isti pre 15+ godina .. no vidim da i neki vrlo novi psoc imaju '51 kao mcu na sebi ..
[ Udovicic @ 07.10.2010. 08:26 ] @
Citat:
geniuxx: Radi sve? I AVR i 8051? Da li bi mogao da otkrijes tajnu sta si tacno radio sa fuse bitovima? Meni USBASP za AVR radi ok, ali nisam uspeo da ga nateram da sprzi 8051... :(


Iskreno, meni za AVR-ove nije ni trebao programator, tako da ga nisam ni probao. U uputstvu piše da je ovaj FW, koji sam upržio u ATMega 8 podržava samo mcs51 seriju. Fuse bitove sam postavio, kao što se postavljaju za USBasp.

Programator je isti kao USBasp, samo se ubaci drugi FW u ATMega 8 (u mom slučaju). Pretpostavljam da i ovaj programator podržava promenu FW, kao i USBasp, jer na šemi ima kratkospojnik za samoprogramiranje. Treba probati...
[ geniuxx @ 07.10.2010. 09:12 ] @
Aha, ok, ja sam mislio da OVO przi i AVR i 8051... OK, i sa dva cipa je prihvatljivo, ali kako treba podesiti fuses za 8051?
I da, USBASP (valjda) ne ume da se update-uje, jer nije bootloader vec samo programator. Btw, OVDE je AVR bootloader.
A 8051 se jos uvek (dosta) trosi iz prostog razloga sto ima dosta firmi koje dugo rade, i imaju mnogo projekata uradjenih sa 8051 - sto bi bacali ono sto vec imaju uradjeno? Za neki novi projekat prilagode ili dopune stari FW i teraju dalje. A npr. Silabs ima veliki izbor ultranabudzenih pedesetjedinica. Jeste, sve je to neka vrsta vestackog disanja za '51 core, ali
dok (je curke bice i podvarka ) ima potraznje - proizvodice se...

edit: @Udovicic: Sada tek vidim tvoj odgovor... Ok, fuses kao za USBASP i to je to... Probacu, hvala!

[Ovu poruku je menjao geniuxx dana 07.10.2010. u 18:01 GMT+1]
[ Sepa011 @ 07.10.2010. 12:17 ] @
Dzamper za 'self programming' sluzi da programiras ATMegu u programatoru ali tako da na 10-pinski konektor prikljucis drugi programator, npr. Pony serijski ili paralelni interfejs,.....

HTH
[ Kix @ 03.07.2011. 12:52 ] @
Napravio sam usbasp http://www.fischl.de/usbasp/ch/USBasp_CH.zip po ovoj verziji.
Bilo je malo problema oko podesavanja fuse bitova ali je uredjaj proradio.
U pitanju je winxp medjutim kad prikacim na win7 dobijem samo USB Device not rekognized, odnosno u device manager Unknown device !?
Vidim da na ovoj semi nema dioda 3.6v pa ih nisam ni stavio. Probao sam i sa diodama ali je rezultat isti. Medjutim ako ostavim diode i prikacim tako na winxp uredjaj neradi sa njima !? Zakljucak radi samo bez dioda. Malo nelogicno ...
Da li je neko probao i ako jeste kako je i sta uradio da bi koristio usbasp na win 7 (32-64)
Probao sam u device manager da dodam drajvere preko Action --> Add legacy hardware sve to odradi bez problema ali je i dalje uredjaj nepoznat iako imam libusb-win32 devices.
[ shpiki @ 03.07.2011. 19:21 ] @
Ajd' probaj OVO i OVO pa javi sta se desava...

Pozdrav.
[ Kix @ 04.07.2011. 20:58 ] @
Hvala ali ni to nije pomoglo.
Kao sto sam vec rekao problem sa diodama je resio stvar.
Diode su zamenjene novim odnosno kupljene su na drugom mestu i sada sve radi.
Neznam zasto ove nisu dobre iako su nove stavljene, mozda neka greska prilikom izrade ili nesto slicno.