Jednostavan programator za AVR mikrokontrolere

 

slika_programator

 

Za programiranje atmelovih AVR mikrokontrolera potreban je odgovarajući programator i prateći program. Na internetu mogu se naći razne šeme programatora. Ovdje će biti prikazan jednostavan i jeftin programator koji se može napraviti u kućnoj izvedbi, a koji može programirati širok spektar atmelovih AVR mikrokontrolera. Programator je preuzet sa sajta http://elm-chan.org. Ovim programatorom mogu se programirati sljedeći mikrokontroleri:

 

 

1200/2313
4414/8515
2333/4433
2323/2343
Tiny12
Tiny13/25/45/85/24/44/84

Tiny15
Tiny22
Tiny26/261/461/861
Tiny2313
Mega161/162/8515
Mega165/325/645

Mega169/329/649
Mega3250/6450/3290/6490
Mega163/323/8535/16/32/644
Mega8/48/168/
Mega48P/88P/168P/328P /164P/324P/644P
Mega603/103/64/128
Mega640/1280/1281/2560/2561


Ovdje će biti data šema programatora koji koristi ISP način programiranja, a koji se priključuje na serijski port (RS232) računara. Programator se napaja preko ISP konektora, sa izvora napajanja na koje je priključen digitalni sistem sa mikrokontrolerom.
Šema programatora prikazana je na sljedećoj slici:

 

slika_shema

 

Klikni na sliku da uvećaš šemu!

 

Sa šeme se vidi da je potrebno nekoliko elektronskih komponenti, a to su: integrisano kolo 74HCT126,  9 otpornika, 1 kondenzator i jedan mini prekidač. Izgled gotovog programatora prikazan je na slici na početku članka.
Kao što je već rečeno, programator se na računar priključuje preko serijskog porta RS232, a na digitalni sistem u kome se nalazi mikrokontroler preko ISP konektora (6-pinski ili 10-pinski ISP konektor) koji je prikazan na sljedećoj slici:

 

10_pin_isp

 

isp_6_pin

 

 Potreban program za navedeni programator možete preuzeti ovde: avrsp_programator

 

 Način programiranja mikrokontrolera  

Programator je potrebno spojiti na serijski port računara i na digitalni sistem preko ISP konektora.  Prekidač na programatoru se postavi u mod za programiranje mikrokontrolera. Otpakujte avrsp_programator.rar na, npr. disk D. Pokrenite program, start->run i ukucajte cmd, zatim ukucajte stazu do avrsp.exe programa, npr:


>> cd d:\bin
>> avrsp


Ovom naredbom izlistaće se sve moguće naredbe koje sadrži program, a koje služe za upisivanje hex datoteke u mikrokontroler, čitanje iz mikrokontrolera, konfiguracija fuse bitova, zaključavanje mikrokontrolera, brisanje memorije i slično.

Ukoliko se je sve dobro napravljeno i povezano, tada se naredbom avrsp –r na ekranu izlistava tip mikrokontrolera na koji je priključen programator. Npr. ukoliko je u pitanju mikrokontroler Atmega48, tada će se na ekranu prikazati sljedeće:


D:\bin> avrsp –r
Detected device is ATmeg48

Device Signature

Flash Memory Size

Flash Memory Page

EEPROM Size

= 1E-92-05

= 4096 bytes

= 64 bytes x 64 pages

= 256 byt


Ako želimo upisati neku hex datoteku u mikrokontroler, tada se koristi naredba
avrsp putanja_do_hex_datoteke\ime_datoteke.hex
Npr. ukoliko se željena hex datoteka nalazi u istom folderu u kojem se nalazi i program, dovoljno je ukucati sljedeću naredbu:

avrsp ime_datoteke.hex


U slučaju upisivanja hex sadržaja u mikrokontroler, program automatski briše prethodni sadržaj mikrokontrolera. Ako se želi upisati datoteka u eprom, tada se koristi naredba:

avrsp ime_datoteke.eep


U opštem slučaju za upisivanje u fleš i eprom može se koristiti sljedeća naredba:


avrsp   ime_hex_datoteke.hex   ime_eprom_datoteke.eep


Još jednostavniji način je da se kreira prečica u meniju Send to na sljedeći način:
Otvorite folder C:\Documents and Settings\Administrator\SendTo , umjesto administrator postavite svoje korisničko ime. U taj folder kreirajte prečicu do programa avrsp.exe. Sada se upisivanje hex i eep sadržaja u mikrokontroler svodi jednostavno na selektovanje datoteke i desnim klikom na Send to -> avrsp, kao što je prikazano na sljedećoj slici:

 

slika

 

Na internetu se mogu pronaći šeme programatora koji se priključuju na paralelni port računara i koje koriste samo par otpornika, a takođe i programatori koji koriste USB port, kao što je programator na sajtu http://www.fischl.de/usbasp  

 

slika_programator

 

Navedeni USB programator koristi mikrokontroler Atmega48 i prateće elektronske komponenete, a šema i izgled štampane pločice može se preuzeti sa navedenog sajta.