2215.pdf

(987 KB) Pobierz
PROJEKTY
Dodatkowe materiały >>
Uniwersalny programator
mikrokontrolerów AVR
Mimo pojawienia się na
rynku wielu nowoczesnych
mikrokontrolerów, popularność
dostępnych w naszym kraju od
kilku lat AVR-ów firmy Atmel.
Do ich programowania wystarczy
programator składający się
dosłownie z kilku elementów.
Kiedyś powszechnie stosowano
programatory podłączane do
portu szeregowego lub do
portu równoległego (Centronics).
Niestety współczesne komputery
PC, a zwłaszcza notebooki,
nie mają tych interfejsów.
W artykule przedstawiamy
ciekawy programator ISP
mikrokontrolerów AVR
z interfejsem USB, mogący
współpracować z tak popularnym
oprogramowaniem, jak AVR
Studio czy Bascom.
Urządzenie zbudowano w oparciu o pro-
gramator USBasp, zaprojektowany przez Tho-
masa Fischla ( http://www.fischl.de/usbasp/ ).
Często zdarza się, że zakupiony komputer
nie posiada portu równoległego czy szeregowe-
go, dlatego też nieodzowny staje się programa-
tor z interfejsem USB. W prezentowanym urzą-
dzeniu funkcja interfejsu USB realizowana jest
programowo przez mikrokontroler ATmega8.
Programator ma dwie diody sygnalizujące stan
pracy oraz dwie zworki, służące do konfiguracji.
Współpracuje on z darmowym oprogramowa-
niem o nazwie AVRDUDE, z wykorzystaniem
którego można programować mikrokontrolery
z poziomu AVR Studio, czy Bascom AVR. Dzięki
prostej budowie programatora znacznie zmniej-
szono jego koszt.
Opis działania układu
Na rys. 1 przedstawiono schemat ideowy
programatora. Mikrokontroler ATmega8 jest
taktowany rezonatorem kwarcowym o często-
tliwości 12 MHz. Do zasilania wykorzystano
napięcie pochodzące z interfejsu USB. Można
również zasilać z niego programowany układ.
W tym celu należy zewrzeć zworkę JP1. Zwarcie
JP2 powoduje spowolnienie programatora, co
umożliwia programowanie mikrokontrolerów
taktowanych oscylatorem o częstotliwości po-
niżej 2 MHz.
Do sygnalizacji stanu programatora służą
diody D1 oraz D2. Świecenie D1 sygnalizuje pro-
gramowanie, D2 załączone zasilanie programato-
ra. Linie interfejsu ISP zostały wyprowadzone na
złącze J2 programatora. VCCI służy do zasilania
programowanego układu, GND to masa, RST to
zerowanie, a linie MOSI, MISO i SCK to interfejso-
we linie komunikacyjne. Programowy interfejs USB
zrealizowano z wykorzystaniem portów PB0 i PB1
mikrokontrolera. Rezystory R5, R6 ograniczają prąd
płynący przez diody LED, natomiast kondensatory
C1, C4 filtrują napięcie zasilające programator.
Rekomendacje:
programator jako nowoczesne,
tanie i efektywne narzędzie
dedykujemy wszystkim
konstruktorom wykorzystującym
mikrokontrolery AVR.
AVT–5172
W ofercie AVT:
AVT–5172A – płytka drukowana
AVT–5172B – płytka + elementy
PODSTAWOWE PARAMETRY
• prosta budowa,
• emulowanie interfejsu USB,
• duża szybkość programowania,
• dioda sygnalizująca zasilanie programatora,
• dioda sygnalizująca programowanie,
• współpraca ze środowiskiem AVR STUDIO, Bascom, WinAVR,
• zasilanie programatora z portu USB,
• umożliwia programowanie wszystkich mikrokontrolerów AVR obsługiwanych przez AVRDUDE,
• możliwość zasilania układu docelowego z programatora (+5 V),
• możliwość konfiguracji prędkości programowania za pomocą zworki (możliwość programowania mikrokontrolerów
z zegarem poniżej 2 MHz),
• współpraca z Windows XP
Montaż i uruchomienie
Schemat montażowy programatora mi-
krokontrolerów AVR przedstawiono na rys. 2 .
W jego konstrukcji brak jest elementów SMD,
więc z montażem nie powinno być większych
problemów. Programując mikrokontroler pro-
gramatora nie wolno zapomnieć o ustawieniu
PROJEKTY POKREWNE wymienione artykuły są w całości dostępne na CD
Tytuł artykułu
Nr EP/EdW
Kit
Programator USB AVR (STK500)
EP 2/2008 AVT-5125
Programator AVRISP z interfejsem USB (STK500)
EP 7/2007 AVT-988
Interfejs JTAG do procesorów AVR
EP 6/2004 AVT-581
64
ELEKTRONIKA PRAKTYCZNA 2/2009
886223027.231.png 886223027.242.png 886223027.253.png 886223027.264.png 886223027.001.png 886223027.012.png 886223027.023.png 886223027.034.png 886223027.045.png 886223027.056.png 886223027.067.png 886223027.078.png 886223027.089.png 886223027.100.png 886223027.111.png 886223027.122.png 886223027.133.png 886223027.144.png
 
Uniwersalny programator mikrokontrolerów AVR
Rys. 1. Schemat ideowy programatora
bitów konfiguracyjnych ( fusebits ) do pracy z ze-
wnętrznym rezonatorem kwarcowym.
Po zaprogramowaniu mikrokontrolera
i przed podłączeniem programatora do kompu-
tera PC, należy zainstalować wymagane przezeń
sterowniki. Po poprawnej instalacji sterowników
w systemie powinno pojawić się urządzenie
USBasp ( rys. 3 ).
Połączenie programatora z programowa-
nym mikrokontrolerem powinno być wykona-
ne za pomocą przewodu dziesięciożyłowego.
Linie interfejsu ISP należy połączyć z odpo-
wiadającymi im liniami ISP mikrokontrolera.
W czasie normalnej pracy świeci się czerwona
dioda LED, natomiast podczas programowania
dioda zielona. Jeśli programowany układ ma
być zasilany z programatora, należy założyć
zworkę JP1. Jeśli programowany mikrokontro-
WYKAZ ELEMENTÓW
Rezystory
R1, R2: 68 V
R3: 2,2 k V
R4: 10 k V
R5, R6: 1 k V
Kondensatory
C1: 100 nF
C2, C3: 22 pF
C4: 47 m F/16 V
Półprzewodniki
U1: ATmega8
D1: czerwona dioda LED
D2: zielona dioda LED
Inne
X1: Kwarc 12 MHz
J1: Gniazdo USB typu B
J2: Gniazdo 2×5 pinów
JP1, JP2: goldpin 1×2 + zworka
Rys. 2. Schemat montażowy
programatora
Rys. 3. USBasp na liście Menadżera
Urządzeń Windows
65
ELEKTRONIKA PRAKTYCZNA 2/2009
Na CD karty katalogowe i noty aplikacyjne elementów oznaczonych na Wykazie Elementów kolorem czerwonym
886223027.165.png 886223027.176.png 886223027.187.png 886223027.197.png 886223027.200.png 886223027.201.png 886223027.202.png 886223027.203.png 886223027.204.png 886223027.205.png 886223027.206.png 886223027.207.png 886223027.208.png 886223027.209.png 886223027.210.png 886223027.211.png 886223027.212.png 886223027.213.png 886223027.214.png 886223027.215.png 886223027.216.png 886223027.217.png 886223027.218.png 886223027.219.png 886223027.220.png 886223027.221.png 886223027.222.png 886223027.223.png 886223027.224.png 886223027.225.png 886223027.226.png 886223027.227.png 886223027.228.png 886223027.229.png 886223027.230.png 886223027.232.png 886223027.233.png 886223027.234.png 886223027.235.png 886223027.236.png 886223027.237.png 886223027.238.png 886223027.239.png 886223027.240.png 886223027.241.png 886223027.243.png 886223027.244.png 886223027.245.png 886223027.246.png 886223027.247.png 886223027.248.png 886223027.249.png 886223027.250.png 886223027.251.png 886223027.252.png 886223027.254.png 886223027.255.png 886223027.256.png 886223027.257.png 886223027.258.png 886223027.259.png 886223027.260.png 886223027.261.png 886223027.262.png 886223027.263.png 886223027.265.png 886223027.266.png 886223027.267.png 886223027.268.png 886223027.269.png 886223027.270.png 886223027.271.png 886223027.272.png 886223027.273.png 886223027.274.png 886223027.002.png 886223027.003.png 886223027.004.png 886223027.005.png 886223027.006.png 886223027.007.png 886223027.008.png 886223027.009.png 886223027.010.png 886223027.011.png 886223027.013.png 886223027.014.png 886223027.015.png 886223027.016.png 886223027.017.png 886223027.018.png 886223027.019.png 886223027.020.png 886223027.021.png 886223027.022.png 886223027.024.png 886223027.025.png 886223027.026.png 886223027.027.png 886223027.028.png 886223027.029.png 886223027.030.png 886223027.031.png 886223027.032.png 886223027.033.png 886223027.035.png 886223027.036.png 886223027.037.png 886223027.038.png 886223027.039.png 886223027.040.png 886223027.041.png 886223027.042.png 886223027.043.png 886223027.044.png 886223027.046.png 886223027.047.png 886223027.048.png 886223027.049.png 886223027.050.png 886223027.051.png 886223027.052.png 886223027.053.png 886223027.054.png 886223027.055.png 886223027.057.png 886223027.058.png 886223027.059.png 886223027.060.png 886223027.061.png 886223027.062.png 886223027.063.png 886223027.064.png 886223027.065.png 886223027.066.png 886223027.068.png 886223027.069.png 886223027.070.png 886223027.071.png 886223027.072.png 886223027.073.png 886223027.074.png 886223027.075.png 886223027.076.png 886223027.077.png 886223027.079.png 886223027.080.png 886223027.081.png 886223027.082.png 886223027.083.png 886223027.084.png 886223027.085.png 886223027.086.png 886223027.087.png 886223027.088.png 886223027.090.png 886223027.091.png 886223027.092.png 886223027.093.png 886223027.094.png 886223027.095.png 886223027.096.png 886223027.097.png 886223027.098.png 886223027.099.png 886223027.101.png 886223027.102.png 886223027.103.png 886223027.104.png 886223027.105.png 886223027.106.png 886223027.107.png 886223027.108.png 886223027.109.png 886223027.110.png 886223027.112.png 886223027.113.png 886223027.114.png 886223027.115.png 886223027.116.png 886223027.117.png 886223027.118.png 886223027.119.png 886223027.120.png 886223027.121.png 886223027.123.png 886223027.124.png 886223027.125.png 886223027.126.png 886223027.127.png 886223027.128.png 886223027.129.png 886223027.130.png 886223027.131.png 886223027.132.png 886223027.134.png 886223027.135.png 886223027.136.png 886223027.137.png 886223027.138.png 886223027.139.png 886223027.140.png 886223027.141.png 886223027.142.png 886223027.143.png 886223027.145.png 886223027.146.png 886223027.147.png 886223027.148.png 886223027.149.png 886223027.150.png 886223027.151.png 886223027.152.png 886223027.153.png 886223027.154.png 886223027.155.png 886223027.156.png 886223027.157.png 886223027.158.png 886223027.159.png 886223027.160.png 886223027.161.png 886223027.162.png 886223027.163.png 886223027.164.png 886223027.166.png 886223027.167.png 886223027.168.png 886223027.169.png 886223027.170.png 886223027.171.png 886223027.172.png 886223027.173.png 886223027.174.png 886223027.175.png 886223027.177.png 886223027.178.png 886223027.179.png 886223027.180.png 886223027.181.png 886223027.182.png 886223027.183.png 886223027.184.png 886223027.185.png 886223027.186.png 886223027.188.png 886223027.189.png 886223027.190.png 886223027.191.png 886223027.192.png 886223027.193.png 886223027.194.png
 
PROJEKTY
Rys. 5 Konfiguracja programatora w AVR
Studio
Rys. 6 Konfiguracje programatora
w Bascom AVR
programu AVR Studio. Po zatwierdzeniu przyci-
skiem Close, w menu tools pojawi się utworzo-
ny programator AVRasp, za pomocą którego
można programować mikrokontrolery AVR.
Rys. 4. Interfejs graficzny AVRDUDE-GUI
ler pracuje z częstotliwością poniżej 2 MHz,
to należy założyć zworkę JP2.
lera rozpoczyna się po naciśnięciu przycisku Exe-
cute . Jak widać za pomocą programu AVRDUDE
można również programować bity konfiguracyj-
ne mikrokontrolera.
Programowanie mikrokontrolera
w Bascom AVR
Aby było możliwe programowanie mikro-
kontrolerów z wykorzystaniem oprogramowania
Bascom AVR, z menu Opcje należy wybrać opcję
Programator . W oknie wyboru programatora
należy wybrać External programmer . W linii Pro-
gram należy podać ścieżkę do programu AVR-
DUDE.exe , natomiast w oknie Parameter należy
podać typ procesora, typ programatora oraz plik,
którego zawartością ma być programowany mi-
krokontroler z katalogu, w którym jest projekt.
Przykładowa konfiguracja może wyglądać nastę-
pująco: –p m8 –c usbasp –U flash:w:”{FILE}”:a .
Obowiązkowo należy zaznaczyć opcję Use HEX
file . Na rys. 6 pokazano poprawną konfigurację
programu Bascom AVR. Po zatwierdzeniu przycis-
-kiem OK , mikrokontroler jest programowany po
wybraniu ikony Program chip .
Marcin Wiązania, EP
marcin.wiazania@ep.com.pl
Programowanie
z wykorzystaniem programu
AVRDUDE-GUI
Program AVRDUDE-GUI umieszczono na
płycie CD-EP2/2009B. Można go również po-
brać z Internetu ze strony sourceforge.net/pro-
jects/avrdude-gui/ . Programowanie jest proste,
bo przebiega z wykorzystaniem interfejsu gra-
ficznego ( rys. 4 ). W polu Location of avrdu-
de należy podać ścieżkę do pliku avrdude.exe ,
natomiast w polu Location of alternate należy
podać ścieżkę do pliku avrdude.conf . W polach
–p Device należy podać typ programowanego
układu, a w polu –c Programmer należy wybrać
programator usbasp . W polu Flash należy po-
dać ścieżkę do pliku, którego zawartością będzie
programowany układ. Pole EEPROM odpowied-
nio dotyczy programowania pamięci EEPROM
mikrokontrolera. Programowanie mikrokontro-
Programowanie mikrokontrolera
w AVR Studio
Aby było możliwe programowanie mikro-
kontrolerów z wykorzystaniem oprogramowa-
nia AVR Studio, należy z menu Tools->Customi-
ze wybrać zakładkę Tools . Po naciśnięciu ikony
New należy utworzyć programator np. AVRasp .
W linii Command należy podać ścieżkę do pliku
avrdude.exe . W linii Arguments należy podać
typ procesora, typ programatora oraz ścieżkę
do pliku z programem dla programowanego
mikrokontrolera. Przykładowa konfiguracja
może wyglądać następująco: -p m8 –c usbasp
–U flash:w:demo.hex, co oznacza, że będzie
programowany mikrokontroler ATmega8 z wy-
korzystaniem usbasp i zawartością pliku demo.
hex . Na rys. 5 pokazano poprawną konfigurację
R
E
K
L
A
M
A
66
ELEKTRONIKA PRAKTYCZNA 2/2009
886223027.195.png 886223027.196.png 886223027.198.png 886223027.199.png
 
Zgłoś jeśli naruszono regulamin