3. aprila, 2012

MikroB – najcenejši USB programator za AVR-je

Revija 198 198 34 - MikroB - najcenejši USB programator za AVR-jeRevija logo se - MikroB - najcenejši USB programator za AVR-jeV pretekli številki revije Sveta elektronike smo predstavili naš najcenejši razvojni sistem, MikroPin. Z MikroPin-om se bomo še ukvarjali, pred tem pa vam želimo predstaviti tudi najcenejši programator iz naše ponudbe, MikroB (sliki 1a in 1b). MikroB skupaj z MikroPin-om omogoča vstop v zanimiv svet mikrokontrolerjev prav vsem ob minimalnem začetnem vložku.

Na voljo sta dve verziji tega programatorja:

  • z brezplačno predstavitveno (demo) različico programa mkAVRCalculator in
  • z licenčno različico programa mkAVRCalculator.

Revija 198 198 34b - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34a - MikroB - najcenejši USB programator za AVR-jeCena v naslovu se nanaša na demo različico programa, s katero lahko programiramo najpopularnejše mikrokontrolerje ATmega8, ATmega162, ATmega128 in ATtiny2313. Če imamo v našem MikroPin-u ATtiny2313, bo to popolnoma sprejemljiva rešitev. MikroB z licenčno različico programa je malce dražji, vendar omogoča programiranje vseh trenutno znanih AVR mikrokontrolerjev.

Slika 2 prikazuje notranjost MikroB programatorja. Bi bilo lahko vezje še bolj enostavno? Temelji na enem samem čipu, FT232RL z nekaj dodatnimi „običajnimi“ elementi, od katerih bi vsekakor morali omeniti varovalko F1. Prek nje se ne napaja le programator, ampak tudi ploščica razvojnega sistema, na katero je priključen, zato F1 ščiti USB vodilo računalnika pred kratkimi stiki in drugimi vrstami preobremenitev. SMD varovalke, ki so vgrajene v nekaterih drugih programatorjih imajo popolnoma enako vlogo, vendar moramo reči, da je menjava takšne varovalke v „domači obrtni delavnici“ precej delikatno opravilo, pri katerem lahko hitro poškodujemo tudi vezi na tiskani ploščici. V želji, da bi učinkovito zaščitili USB vodilo računalnika, obenem pa se izognili tveganemu posegu zamenjave pregorele varovalke, smo v MikroB vgradili varovalko, ki se sama „obnovi“, čeprav to nekoliko podraži celoten projekt. Bili smo mnenja, da je v tem primeru uporaba takšne varovalke upravičena. Še eno opozorilo vsem tistim, ki bi se morda odločili sami sestaviti programator po shemi na sliki 2: FT232RL čip mora biti pred uporabo sprogramiran na določen način, da ga mkAVRCalculator sploh prepozna in začne komunicirati z njim. Programator ne bo dobro deloval z FT čipom, ki ni sprogramiran!

Namestitev programatorja

Revija 198 198 34e - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34d - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34c - MikroB - najcenejši USB programator za AVR-jePred prvo uporabo moramo programator MikroB namestiti. Ta postopek je dokaj neroden, vendar ga moramo (k sreči!) izvesti le enkrat. Razložili ga bomo za primer namestitve na računalniku z operacijskim sistemom Windows 7. Ko boste prvič priključili MikroB v USB priključek računalnika, bo operacijski sistem Windows prepoznal novo napravo in sam zagnal proces namestitve, ki pa se ne bo končala uspešno. Če potem odprete Device Manager, boste neuspešno nameščen programator videli kot ATNEL USB (slika 3). Klicaj zraven ikone naprave pomeni, da operacijski sistem ni našel ustreznega gonilnika za FTDI čip. Tudi v primeru, da je bila namestitev uspešna, programator največkrat ne bo dobro deloval z gonilnikom, ki ga je izbral operacijski sistem Windows, zato bo namestitev potrebno izvesti „ročno“.

Ustrezen gonilnik za FTDI čip bomo našli na spletnih straneh podjetja Future Technology Devices International Ltd., www.ftdichip.com. Treba je klikniti na Drivers, nato pa na D2XX povezavo. Na tej strani se spodaj nahaja tabela s popisom trenutno podprtih D2XX gonilnikov; v tem trenutku je za Windows okolje na voljo različica 2.08.24. Če boste kliknili na to povezavo, boste na svoj računalnik prenesli datoteko „CDM 2.08.24 WHQL Certified.zip“. Vsebino razširite v mapo z enakim imenom, v kateri se bodo nahajali potrebni gonilniki.

Revija 198 198 34f - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34g - MikroB - najcenejši USB programator za AVR-jeSedaj lahko osvežimo naš nepravilno nameščen gonilnik: z desnim miškinim gumbom kliknemo na ATNEL USB, izberemo Update Driver Software in nato možnost Browse my computer for driver software. Potem mu bomo, kot kaže slika 4, pokazali mapo v kateri se nahajajo gonilniki, prav izpolnjeno okno Update Driver Software pa bo videti kot prikazano na sliki 5.

Potem le še kliknemo na Next in kmalu se bo pojavilo sporočilo, da je operacijski sistem Windows uspešno namestil USB Serial Converter. Če je nameščanje res uspelo, bomo MikroB v Device Managerju videli kot USB Serial Port, v mojem primeru COM4 (slika 6). Postopek zamenjave gonilnika sem moral pri vsaki namestitvi še enkrat ponoviti, zamenjava pa je postala aktivna šele po drugem nameščanju. Kakšni so bili razlogi za takšno „vedenje“ mi ni znano…

Zdaj lahko namestimo mkAVRCalculator. Prenesemo ga z naslova atnel.pl, izberemo MkAvrCalculator in kliknemo na Pobierz. Razširimo datoteke mkAVRCalculator_build_57.rar v istoimensko mapo, v kateri bomo potem našli program mkAVRCalculator.exe in datoteko ftd2xx.dll.

Revija 198 198 34j - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34h - MikroB - najcenejši USB programator za AVR-jePred prvo uporabo je potrebno nastaviti tudi mkAVRCalculator. Ko ga zaženete, odprite zavihek Settings in nastavite vse tako, kot je prikazano na sliki 7. Potem kliknite na gumb Install, s čimer boste namestili program AVRDUDE. Pri tem je treba samo določiti mapo, v katero se bo program namestil; v primeru na sliki 8 je bila ustvarjena nova mapa, ki se imenuje enako kot sam program, avrdude. Ta namestitev se bo izvedla zelo hitro, saj mkAVRCalculator namesti AVRdude „iz samega sebe“, zato pred tem niso potrebne nikakršne priprave.

Nastavitve programa mkAVRCalculator zaključimo v zavihku Program device (slika 9). V okencu Programmer izberite „ATB-FT232R“ in obvezno obkljukajte „slowsck“ okence. S tem so nastavitve končane in lahko že kar preverimo, če programator deluje pravilno. Programator povežemo z MikroPin-om (ali s katerim drugim razvojnim sistemom), kliknemo na gumb Check connected AVR in če je vse v redu, bo mkAVRCalculator izpisal, kateri mikrokontroler se nahaja v razvojnem sistemu, npr. ATtiny2313. Ne pozabite, da demo različica mkAVRCalculatorja prepozna le omejeno število mikrokontrolerjev!

Revija 198 198 34m - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34l - MikroB - najcenejši USB programator za AVR-jeRevija 198 198 34k - MikroB - najcenejši USB programator za AVR-jeBrezplačna demo različica programa mkAVRCalculator med delovanjem pogosto izpisuje sporočila, podobna tistemu na sliki 10. Dovolj je, da kliknemo na gumb OK in program bo nadaljeval z delom. Če se vam prikaže sporočilo podobno tistemu na sliki 11 je to znak, da avrdude ni uspel do konca izvesti določenega ukaza. V primeru na sliki sem pozabil obkljukati slowsck okence: obvezno mora biti obkljukano! Opomba: avrdude sporoča napake le, če je nastavljen tako, kot je prikazano na sliki 7.

mkAVRCalculator in Bascom-AVR

Dobra novica za uporabnike razvojnega sistema Bascom-AVR: mkAVRCalculator lahko integriramo tudi v Bascom. Po namestitvi mkAVRCalculator, poženite Bascom-AVR, odprite okno Options-Programmer in ga izpolnite tako, kot lahko vidite na sliki 12. Seveda je potrebno v okno Program vpisati (ali izbrati) lokacijo, na kateri se program mkAVRCalculator nahaja (na vašem računalniku). Na sliki 12 je primer z mojega računalnika.

Revija 198 198 34n - MikroB - najcenejši USB programator za AVR-jeČe ste vse naredili po navodilih, se mora ob pritisku na gumb za programiranje odpreti grafični vmesnik programa mkAVRCalculator (slika 13). Ta vmesnik je drugačen od vmesnikov vseh ostalih programatorjev, ki so integrirani v Bascom-AVR in potrebno bo nekaj časa, da se navadite nanj. Vendar moramo ob tem omeniti, da največji del naloge opravi sam Bascom: ko se odpre okno mkAVRCalculatorja, je že preverjeno, kateri mikrokontroler je nameščen v razvojnem sistemu in vsi parametri so že nastavljeni tako, kot je treba. V primeru na sliki 13 vidimo, da se bo v Flash pomnilnik mikrokontrolerja vpisal program Primjer1 (poglejte okna Flash in Memory), to pa je prav tisti program, ki sem ga malo prej napisal in prevedel. Ravno tako je že izbran ukaz Write z opcijo Verify no, preden pa kliknete na gumb Execute, vsekakor prej preverite, če je okence slowsck obkljukano. Če slučajno ni, ga obkljukajte ročno – brez tega namreč programiranje mikrokontrolerja ne bo uspešno! Tako je vsaj bilo na vseh računalnikih na katerih sam poskusil delati z mkAVRCalculatorjem.

Celotni članek

Demo program

MikroB, programator za 13 EUR

2012_SE198_34