Partnerzy

 

www.prototypy.com

helion

www.elektroda.pl

www.zestawyuruchomieniowe.pl

Kredyty Gdynia

Translate this



Programatory ISP PDF Drukuj
Ocena użytkowników: / 13
SłabyŚwietny 
wtorek, 27 lipca 2010 10:10

programatorDo zaprogramowania mikrokontrolera niezbędny jest programator. Programator pozwala na wgranie odpowiednio wcześniej skompilowanego pliku do pamięci flash oraz EEPROM mikroprocesora. Programowanie może  przeprowadzić za pomocą komputera, ale również za pomocą  innego mikrokontrolera.

Obecnie najpopularniejsze programatory wykorzystują ISP (In-System Programming). Popularność tego rozwiązania wynika z niskiej ceny samego programatora, jego prostej konstrukcji oraz możliwości wgrania programu do układu znajdującego się w gotowym urządzeniu bez jego wymontowywania. Najprostszym rozwiązaniem jest programator wykorzystujący równoległy port komputera LPT. Przykład takiego rozwiązania pokazano na poniższym schemacie.

2172362577.gif

570748764.jpg

Przykład takiego programatora ma szereg wad. Jedną z nich jest brak możliwości zasilania układu bezpośrednio z programatora ze względu na niewielka obciążalność linii LPT (typowo kilka mA). Kolejna wada to coraz rzadziej spotykane porty LPT w komputerach stacjonarnych i właściwie już nie spotykane w komputerach przenośnych. Ceny gotowych programatorów tego typu wahają się w granicach 15-30 zł. Przykładem programatora wykorzystującego port LPT jest STK-200 i STK-300.

Kolejny rzadko już dzisiaj spotykany programator ISP wykorzystuje port COM komputera. Niestety z tych samych względów co omawiany wcześniej programator LPT (brak portów COM w nowych komputerach) został on wyparty z rynku. Do zalet takiego programatora można zaliczyć prostotę konstrukcji. Schemat programatora wykorzystującego port COM pokazano na rysunku poniżej. Ze względu na rzadkie stosowanie tego typu programatorów nie będzie on szerzej omawiany.


4223388721.gif

Najpopularniejszym obecnie narzędziem do programowania jest programator wykorzystujący port USB. Jako, że porty USB są ogólnie dostępne w komputerach stacjonarnych jak i przenośnych programatory wykorzystujące do transmisji port UBS zdobyły wielką popularność. Główną zaletą takiej konstrukcji jest możliwość zasilania układu z portu USB (+5V, 500mA). Niestety skomplikowana budowa oraz potrzeba zaprogramowania układu sterującego programatorem odstrasza wielu początkujących konstruktorów. W takim przypadku naprzeciw wychodzą firmy produkujące programatory tego typu. Cena urządzenia waha się od 30-70 zł w zależności o konfiguracji i konstrukcji. Do bardzo popularnych programatorów tego typu należy zaliczyć STK500 oraz nowszą wersję STK500v2. Programatory tego typu mogą pracować w trybie HID gdzie sterowniki instalowane są automatycznie przez system lub jako wirtualny port COM, gdzie należy zainstalować sterowniki ręcznie dla konkretnego programatora (sterowniki dostarczane przez producenta). Poniżej na rysunku pokazano programator AVR USB produkowany przez firmę AVT.

3486756812.jpg

Należy wspomnieć również o programatorach wysokonapięciowych. Są to programatory pozwalające na ingerencje w rejestry mikroprocesora niedostępne podczas programowania ISP. Przykładem może być możliwość odblokowania niewłaściwie zaprogramowanych bitów kontrolnych (fuse bits). Do programowania mikroprocesorów programatorem wysokonapięciowym wymagane jest wyciagnięcie lub wylutowanie układu, ponieważ musi on być programowany bez innych dołączonych do niego podzespołów. Programatory HV (high voltage) nie są wymagane do wgrywania czy odczytywania programów z mikroprocesora dlatego też nie będą szerzej omawiane.

Podłączenie programatora do mikroprocesora

Wszystkie programatory ISP wyposażone są standardowo w 6 wyprowadzeń : MISO, MOSI, SCK, RST, VCC, GND. Linie MOSI i MISO wykorzystywane są do przesyłania danych do i z mikroprocesora. SCK to sygnał zegarowy, taktujący prace układu podczas programowania, RST służy do resetu układu. Linie VCC i GND zasilają programowany układ, gdzie VCC to napięcie dodatnie (z reguły +5V), a GND to wspólna masa układu programator-mikroprocesor. Standard opracowany przez firmę ATMEL o nazwie KANDA mówi między innymi o sposobie wyprowadzania sygnałów w gniazdach programatorów. Na rysunku, poniżej przedstawiono widok wtyczki i gniazda programatora zgodnego ze standardem KANDA.


2418291532.jpg

Można by zapytać dlaczego, aż 4 sygnały masy. Takie ustawienie wyprowadzeń nie jest przypadkowe, ponieważ gdyby spojrzeć na przewód (taśmę) łączącą programator z układem można zauważyć, że sygnały magistrali ISP naprzemiennie prowadzone są z sygnałami masy co wpływa na zmniejszenie zakłóceń w podczas transmisji danych. W każdym mikroprocesorze rodziny AVR w nocie aplikacyjnej znajdziemy opis wyprowadzeń mikrokontrolera. Przy niektórych wyprowadzeniach prócz nazwy portu i numeru bitu podawane są dodatkowe funkcje tego wyprowadzeń. Należy szukać oznaczeń takich jak MISO, MOSI, RST (RESET), SCK, VCC i GND. Do tych wyprowadzeń analogicznie należy podłączyć programator (chociaż nie zawsze o czym w dalszej części). Na rysunku poniżej przedstawiono schemat wyprowadzeń popularnego mikrokontrolera ATmega8 i ATtiny2313 gdzie zaznaczono miejsca podłączenia programatora.

3966138629.jpg

940181431.jpg

Na szczególną uwagę zasługuje wspomnienie o wyjątkach jaki jest na przykład mikrokontroler ATmega128 czy ATmega64. W tym przypadku nastąpiła pewna zbieżność w nazwach wyprowadzeń dla SPI (Serial Peripheral Interface) i ISP. Wyprowadzenia opisane jako MOSI i MISO dotyczą SPI i nie służą do programowania mikrokontrolera przy pomocy ISP. Wielu użytkowników popełnia błąd podczas połączenia co w rezultacie uniemożliwia zaprogramowanie układu. Linie MOSI i MISO znajdują się na wyprowadzeniach oznaczonych jako PE0 i PE1 jak pokazano na poniższym rysunku, na którym zaznaczono również pozostałe ważne wyprowadzenia mikrokontrolera ATmega128 i ATmega64 służące do programowania.


1756690429.jpg

DataOdwiedzinKomentarze
Suma144870
So. 2140
Pt. 2040
Cz. 1990
Śr. 1890
 

Dodaj komentarz


Kod antysapmowy
Odśwież

Licznik

Artykuł przeczytano: 14506

Sonda

Skąd wiesz o www.mikrokontrolery.org
 

Statystyka

Użytkowników : 1
Artykułów : 28
Zakładki : 1
Odsłon : 388784

Facebook

Logowanie



www.mikrokontrolery.org, Powered by Joomla! Designed by SiteGround web hosting