AVR
Programowanie
w języku C

Wstęp
Instalacja kompilatora AVR-GCC
Integracja z AVR Studio
Pierwszy program w C !
Debugging
Prosty starterkit
Programowanie
Download
Linki
Strona główna
PROGRAMOWANIE
Hardware
Software

Hardware
Oto dość prosty szeregowy programator mikrokontrolerów AVR. Z jednej strony zakończony jest wtyczką DB25, z drugiej w zasadzie dowolnym złączem. Ja proponuję użyć złącza jednorzędowego z wyprowadzeniami w kolejności:
nr styku sygnał
1 GND
2 RESET
3 +5V
4 SCK
5 MISO
6 MOSI
Dzięki temu nie trzeba będzie robić krosów na płytce drukowanej. programator_isp.gif 4.6 KB

Schemat zaczerpnąłem ze strony Petera Fleury'ego. Złożony przeze mnie programator na podstawie powyższego schematu sprawdził się u mnie, dlatego proponuję jego wykonanie.

Software
Programem obsługującym jest AVR ISP do pobrania ze strony Download. Był on również dostępny na stronie Atmela. Należy rozpakować zawartość do dowolnego katalogu, na przykład C:\Program Files\Atmelisp. Programator ten obsługuje również PonyProg.

Po uruchomieniu programu utwórz nowy projekt wybierając z menu Project polecenie New Project.... W otwartym oknie trzeba wybrać typ mikrokontrolera. Wybierz AT90S2313.

avrisp1.png 5.9 KB

Uaktywnij okno Program Memory i załaduj plik z programem - led.hex - za pomocą polecenia File | Load. Zawartość pliku została właśnie przeniesiona do bufora programu.

avrisp2.png 9.5 KB

avrisp3.png 2.3 KB Jeśli jeszcze nie podłączyłeś programatora, zrób to teraz. Następnie z menu Options wybierz Change printer Port... i w oknie dialogowym kliknij na przycisk Autofind. Programator (Dongle) powinien zostać wykryty rówież wtedy, gdy nie jest zasilany.

Aby zaprogramować mikrokontroler musi on być zasilany typowym napięciem 5V i poprawnie podłączony programator szeregowy. Teraz trzeba skasować zawartość pamięci Flash za pomoca polecenia Program | Erase lub kilkając ikonkę avrisp4.png 0.3 KB. Po tej operacji można już zaprogramować układ poleceniem Program | Program Device (avrisp5.png 0.3 KB). Do sprawdzania zgodności zawartości bufora i pamięci flash służy polecenie Program | Verify Device.
Możesz sobie zautomatyzować proces programowania z weryfikacją za pomocą ostatnich dwóch poleceń menu Program.

Pamiętaj, że każda operacja na mikrokontrolerze (zapis, odczyt) jest wykonywana przy niskim poziomie na wejściu Reset układu. Po zakończeniu każdej z operacji przywracany jest stan wysoki i zapisany program startuje od adresu 0, czyli tak jak po załączeniu zasilania.

Udało się programowanie? Program działa? Jeśli tak to gratulacje. Jeśli nie to się nie zrażaj. Postaraj się znaleźć błąd.

Opracował Michał Lankosz sq9fqq.prv.pl     do góry