USB programatorius Atmel mikrokontroleriams

Savo įvairiose konstrukcijose naudoju AVR mikrokontrolerius. Iki šiol juos programuodavau per LPT jungtį. Tokį „programatorių“ pasidaryti labai lengva – tereikia pajungti keletą laidų prie LPT jungties. Veikia be jokių problemų. Tačiau LPT – jau mirštantis standartas. Naujuose kompiuteriuose jau ne visada būna. Kilo mintis pasidaryti kažką universalesnio, veikiančio per USB.

Internete radau gana paprastą schemą, kurioje panaudotas Mega8 mikrokontroleris. Kaip rašo jo kūrėjas, jis pilnai suderinamas su AVR910 programatoriumi. Su Mega8 galima realizuoti tik programinį USB, reiškia veiks gana lėtai. Bet mano naudojamuose mikrokontroleriuose atminties kiekis nėra didelis, todėl greitis nebuvo labai svarbus. Be to nebuvo aišku ką reiškia „veikia lėtai“. Forume yra gana didelė diskusija apie šį programatorių. Vieniems veikia, kitiems neveikia. Visgi daugiau atsiliepimų, kad veikia. Kaip yra iš tikro, išsiaiškinti galima tik pabandžius jį padaryt.

Schemą aš šiek tiek pakoregavau. Pirmiausia padariau, kad maitinimas būtų 5V, o ne 3,6V. Nematau jokios prasmės mažinti įtampą, geriau tiesiog uždėti stabilitronus ant USB duomenų linijų, kad ten nebūtų daugiau kaip 3,6V. Tuo labiau, kad mikrokontroleris neprivalo veikt 12MHz dažniu nuo 3,6V. Ar ne čia ir yra priežastis, kad kai kam neveikia?

Schemą surinkau ant montažinės plokštės. Programą į mikrokontrolerį įrašiau senu būdu, per LPT. Viskas iš karto pradėjo veikt. Windows parodė, kad atsirado naujas įrenginys AVR910, ir pareikalavo draiverio. Jis yra kartu su schema ir programa.

Pabandžius realiai su juo programuot Mega8 ir Mega16 paaiškėjo, kad tikrai programuoja pastebimai lėčiau, nei per LPT. Tačiau vis tiek tai yra sekundžių reikalas. Bet to, jei programavimui naudot programą AVRProg, reikalai žymiai pagerėja, nes ji moka duomenis persiuntinėti blokais. Programatorius tai palaiko. Šiuo atveju programuojama daug greičiau.

Principe šiuo programatorium esu visai patenkintas. Jis gaunasi labai pigus, bet savo darbą daro. Aišku, jei reikėtų programuot pvz. Mega128, toks programavimo greitis gali ir nepatikt. Bet tik tokiu atveju, jei reikia programuot labai dažnai. Jei ne, laisvai galima naudot.

This entry was posted in Elektronika. Bookmark the permalink.

7 Responses to USB programatorius Atmel mikrokontroleriams

  1. Smo3 says:

    Yra labai geras projektas AVRdoper USB programatorius, jis programuoja netgi greiciau uz lpt, bent jau man toks ispudis susidare ;) o ir pasidaryt kazkokiu ypatingu ziniu nereikia :) issiesdini schemute ir viskas, jo savikaina man isejo kazkur apie 15-20 litu :)

  2. ReM says:

    Šio programatoriaus privalumas – paprastumas. Tavo minimas programatorius daug sudėtingesnis, nors padarytas taip pat ant Mega8, reiškia naudojamas programinis USB, todėl labai abejotina, ar jis gali dirbti daug greičiau. Bet nesiginčiju – nebandžiau aš jo.

  3. Mangis says:

    Sveiki, gal kas man gali paaiskinti kam yra ta jungtis su penkiais kontaktais?

    Dekingas

  4. ReM says:

    Klausimas neaiškus. Yra dvi jungtys, abi po 5 kontaktus. Jei neaišku kur kuri jungiasi, verta pagalvot, ar tau reikalingas toks daiktas…

  5. Fonas says:

    Esu pasidares toki, veikia kol kas gerai:
    http://www.qubbeks.puslapiai.lt/articles.php?article_id=32

  6. Mantiss says:

    Sveiki, atleiskite vienas klausimas : ar būtina pirmiausia programą rašyti per LPT jungtį, o tik vėliau per USB ?

  7. ReM says:

    Taip, pirmą kartą užprogramuot reikalingas kitas programatorius.

Leave a Reply

Your email address will not be published. Required fields are marked *