2003 07 06

background image

6

Radioelektronik Audio-HiFi-Video 7/2003

Program AVR Studio

to niezwykle przydatne

narzêdzie w procesie

edytowania, symulowania

i uruchamiania aplikacji

opartych na mikrokontro-

lerach AVR firmy ATMEL.

Dodatkow¹ korzyœci¹ dla

programistów 8-bitowych

mikrokontrolerów AVR

jest zintegrowany z AVR

Studio Asembler.

M

ikrokontrolery AVR s¹ coraz

powszechniej wykorzystywa-

ne przez projektantów syste-

mów mikroprocesorowych.

W banerze reklamowym firma ATMEL prze-

konuje, ¿e ich AVR s¹ prawdopodobnie 12

razy szybsze ni¿ mikrokontrolery, które w³a-

œnie u¿ywasz. Bez w¹tpienia AVR o archi-

tekturze RISC (Reduced Instruction Set

Computing) s¹ zdecydowanie szybsze ni¿

tradycyjne mikrokontrolery CISC (Complex

Instruction Set Computer). Podstawowym

narzêdziem dla projektantów systemów

opartych na uk³adach AVR jest przedstawio-

ny w artykule program AVR Studio . Pe³n¹

i najnowsz¹ wersjê AVR Studio mo¿na

pobraæ bezp³atnie ze strony internetowej

firmy ATMEL.

AVR Studio umo¿liwia edycjê, symulacjê

i uruchamianie aplikacji z mikrokontrolerami

AVR. Program ten wspomaga projektan-

tów systemów mikroprocesorowych w pro-

cesie projektowania, programowania, debu-

gowania i rozwoju aplikacji. AVR Studio 4 za-

wiera wiele przydatnych narzêdzi: mena-

d¿er projektów, edytor plików Ÿród³owych,

debuger, symulator i interfejs do obs³ugi

zewnêtrznych emulatorów. Z programem

zintegrowany jest równie¿ asembler. Do

AVR Studio do³¹czona jest tak¿e rozbudo-

wana instrukcja (pomoc) prezentuj¹ca

szczegó³owo nie tylko mo¿liwoœci i funkcje

samego programu, ale równie¿ i dok³adny

opis asemblera, ³¹cznie z list¹ instrukcji

oraz wytyczne do pracy z zestawami uru-

chomieniowymi, programatorami i emulato-

rami wspó³pracuj¹cymi z AVR Studio.

Debuger i symulator

Debugowanie, czyli wykrywanie i usuwanie

b³êdów, to niezwykle wa¿ny etap w procesie

tworzenia oprogramowania. Jego w³aœciwe

przeprowadzenie ma du¿y wp³yw na jakoœæ

stworzonego oprogramowania i satysfakcjê

u¿ytkownika. B³êdy w oprogramowaniu sy-

stemów mikroprocesorowych mo¿na wykry-

waæ wykorzystuj¹c narzêdzia sprzêtowe

takie jak zestawy uruchomieniowe lub emu-

latory oraz programowe czyli symulatory.

AVR Studio umo¿liwia uruchamianie opro-

gramowania mikrokontrolerów AVR zarów-

no na platformie sprzêtowej, z wykorzy-

staniem emulatorów takich jak ICE50 lub

JTAG ICE, jak te¿ i programowej, czyli z u¿y-

ciem wbudowanego w AVR Studio symula-

tora. Je¿eli do komputera nie jest do³¹czony

zewnêtrzny emulator, AVR Studio automa-

tycznie przechodzi do pracy z wewnêtrz-

nym symulatorem. Je¿eli AVR Studio wykry-

je do³¹czony emulator, automatycznie prze-

³¹cza siê w tryb pracy z emulatorem.

W AVR Studio debugowanie wygl¹da i prze-

biega zawsze tak samo, niezale¿nie od te-

go, czy u¿ytkownik korzysta z symulatora

czy te¿ emulatora. W rzeczywistoœci wy-

stêpuj¹ jednak istotne ró¿nice. Emulator

pracuje znacznie szybciej ni¿ symulator.

Ponadto, emulator w przeciwieñstwie do

symulatora umo¿liwia wykrywanie b³êdów

w rzeczywistym œrodowisku sprzêtowym.

W symulatorze mo¿liwy jest podgl¹d za-

wartoœci wszystkich rejestrów, co z kolei

nie zawsze jest mo¿liwe w emulatorze. Znaj-

duj¹cy siê na dole okna AVR Studio pasek

statusu informuje o rodzaju u¿ytego narzê-

dzia (emulatora lub symulatora).

Wbudowany w AVR Studio symulator obs³u-

guje wszystkie uk³ady z rodziny AVR i

umo¿liwia œledzenie zawartoœci CPU, uk³a-

dów wejœciowych i wyjœciowych mikrokon-

trolera oraz pamiêci. Umo¿liwia symulacjê

pracy wewnêtrznej i zewnêtrznej pamiêci

SRAM, portów, timerów, liczników, wszyst-

kich przerwañ, pamiêci EEPROM, a nawet

– w mo¿liwym zakresie – UARTu i SPI (Se-

rial Port Interface). Symulacj¹ programów

mo¿na sterowaæ korzystaj¹c z opcji w me-

nu Debug. W menu dostêpne s¹ funkcje

uruchomienia, zatrzymania i resetu progra-

mu, przerwania realizacji programu w miej-

scu ustawienia kursora, wykonywania pro-

gramu krok po kroku. Mo¿liwe jest równie¿

zdefiniowanie pu³apek programowych, czy-

li miejsc, w których realizacja programu ma

byæ zatrzymana.

AVR Asembler

Do pisania prostych, niewielkich aplikacji

z powodzeniem mo¿na wykorzystaæ wbudo-

wany w AVR Studio asembler. Równie¿

i programy lub wybrane procedury, których

czas realizacji jest krytyczny warto kodo-

waæ w asemblerze. Program mo¿na wpro-

wadziæ korzystaj¹c ze zintegrowanego

z AVR Studio edytora. Na sk³adniê asemble-

ra sk³adaj¹ siê: mnemoniki instrukcji, etykie-

ty i dyrektywy. Instrukcje i dyrektywy mog¹

byæ bezargumentowe, b¹dŸ mieæ jeden lub

wiêcej argumentów. Instrukcje okreœlaj¹

operacje, jakie ma realizowaæ mikrokontro-

ler. Mnemoniki to kombinacje paru liter, two-

rz¹ce symboliczne skróty nazw operacji re-

alizowanych przez instrukcje. Dyrektywy

steruj¹ prac¹ asemblera, a etykiety umo¿-

liwiaj¹ symboliczn¹ prezentacjê adresów

AVR STUDIO 4

r

PORADNIK

ELEKTRONIKA

Rys. 1. AVR Studio to narzêdzie niezbêdne

do pisania i uruchamiania programów

na mikrokontrolery AVR ATMEL

Rys. 2. Okno wyboru narzêdzia do wykrywania i usuwania b³êdów (programowego symulatora

lub jednego z zewnêtrznych sprzêtowych emulatorów) oraz mikrokontrolera

background image

gramowanego uk³adu s³u¿y dyrektywa

DEVICE. Ka¿demu mikrokontrolerowi AVR

przypisany jest plik *.inc zawieraj¹cy defini-

cje wewnêtrznych rejestrów, bitów, prze-

rwañ i timerów, które czyni¹ pisanie pro-

gramu wygodniejszym.

Kompilatory C

Programowanie w C jest znacznie prostsze

i szybsze ni¿ w asemblerze, a kod Ÿród³owy

jest bardziej przejrzysty i czytelny. Jêzyk

C jest odpowiedniejszym narzêdziem do

tworzenia du¿ych i z³o¿onych projektów.

AVR Studio nie ma w³asnego kompilatora C.

W AVR Studio mo¿na edytowaæ programy

w jêzyku C oraz symulowaæ wygenerowane

przez zewnêtrzne kompilatory pliki obiekto-

we. AVR Studio rozpoznaje miêdzy innymi

standardy plików UBROF (IAR) i COFF (Ima-

geCraft, CodeVision, ELAB i inne).

Dostêpnych jest wiele dobrych kompilatorów

7

w pamiêci programu. Pojedyncza linia w

jêzyku asembler wygl¹da nastêpuj¹co:

[etykieta:] dyrektywa [argumenty] ;[komentarz]

lub

[etykieta:] instrukcja [argumenty] ;[komentarz]

Elementy zawarte w nawiasach prostok¹t-

nych s¹ opcjonalne, a tekst znajduj¹cy siê

pomiêdzy œrednikiem i koñcem linii jest igno-

rowany przez translator asemblera. Asem-

bler dokonuje translacji wprowadzonego

symbolicznego kodu Ÿród³owego w kod

obiektowy. Wygenerowany w ten sposób

kod obiektowy wykorzystywany jest nastêp-

nie do debugowania programu w œrodowi-

sku programowego symulatora AVR Stu-

dio lub sprzêtowego emulatora. Asembler

generuje tak¿e kod PROM, który mo¿e byæ

wykorzystany do zaprogramowania pamiê-

ci mikrokontrolerów AVR.

Korzystaj¹c ze zintegrowanego z AVR Stu-

dio asemblera mo¿na programowaæ wszy-

stkie uk³ady z rodziny AVR. Do wyboru pro-

Radioelektronik Audio-HiFi-Video 7/2003

dla mikrokontrolerów AVR, które mog¹

wspó³pracowaæ z AVR Studio. Nale¿¹ do

nich produkty takie jak ICCAVR firmy Ima-

geCraft, IAR Systems Embedded Work-

bench, CodeVisionAVR C Compiler i AVR

GCC. ICCAVR ImageCraft (www.imagecra-

ft.com) i IAR (www.iar.com) s¹ kompletnymi

narzêdziami projektowymi, w sk³ad których

wchodzi edytor, menad¿er projektów, kom-

pilator jêzyka C i asembler. Opcjonalnie ra-

zem z programem IAR mo¿na nabyæ debu-

ger C-SPY. Narzêdzia projektowe obydwu

firm wspó³pracuj¹ z AVR Studio, a ich de-

monstracyjne wersje mo¿na pobraæ z sieci.

Równie dobrym narzêdziem, choæ nie o tak

du¿ych mo¿liwoœciach jest kompilator Code-

VisionAVR. Nie ma on wbudowanego symu-

latora, mo¿e jednak wspó³pracowaæ z AVR

Studio. CodeVisionAVR wyposa¿ony jest

w praktyczne biblioteki C do obs³ugi

m.in. alfanumerycznych wyœwietlaczy LCD,

czujników temperatury National Semicon-

ductor LM75, Dallas Semiconductor

DS1820/1822 oraz zegarów czasu rzeczy-

wistego Dallas Semiconductor DS1302,

DS1307 i Philips PCF8563, PCF8583.

Przydatnym narzêdziem jest tak¿e Code-

WizardAVR, który mo¿e automatycznie wy-

generowaæ kod Ÿród³owy inicjalizuj¹cy mi-

krokontroler, jego uk³ady wejœcia i wyjœcia

oraz wspó³pracê z niektórymi powszech-

nymi uk³adami zewnêtrznymi. Wersjê free-

ware CodeVisionAVR mo¿na œci¹gn¹æ ze

strony www.hpinfotech.ro.

Z kolei AVR GCC, w przeciwieñstwie do

wymienionych narzêdzi, nie jest kompletnym

œrodowiskiem projektowym, lecz wy³¹cznie

kompilatorem jêzyka C. Edycjê i symula-

cjê programów nale¿y przeprowadzaæ na

zewn¹trz AVR GCC, na przyk³ad w AVR

Studio.

Kompilator GCC jest bezp³atny i mo¿na go

pobraæ ze strony www.avrfreaks.com.

Wymagania sprzêtowe

Program AVR Studio nie ma wysokich wy-

magañ sprzêtowych. Do jego uruchomienia

wystarczy komputer PC z procesorem co

najmniej Intel Pentium 200 MHz, 64 MB

pamiêci RAM i 15 MB wolnej przestrzeni na

twardym dysku. Wymagana minimalna roz-

dzielczoϾ ekranu to 800

×

600, wskazana

jest jednak praca z rozdzielczoœci¹

1024

×

768. AVR Studio dzia³a w œrodowisku

Windows, pocz¹wszy od 95, poprzez 98,

ME, 2000, XP i skoñczywszy na Windows

NT 4.0 z przegl¹dark¹ Internet Explorer

w wersji co najmniej 5.0.

n

Wojciech Nowakowski

wojciech.nowakowski

@

interia.pl

Rys. 3.

Symulacja

programu

napisanego

w jêzyku C

w AVR Studio 4

Rys. 4.

Demonstracyjn¹

wersjê

IAR Systems

Embedded

Workbench

mo¿na

pobraæ ze strony

www.iar.com,

a tak¿e z dzia³u

Software

& Shareware

dla

mikrokontrolerów

AVR na stronie

firmy ATMEL

(www.atmel.com)


Wyszukiwarka

Podobne podstrony:
2003 07 32
2003 07 Szkola konstruktorowid Nieznany
edw 2003 07 s56
mat fiz 2003 12 06 id 282350 Nieznany
atp 2003 07 78
2003 07 33
edw 2003 07 s38(1)
edw 2003 07 s31
2003 07 26
2003 07 10
lo orm2 07 06 kp1 Nieznany
2003 07 17
edw 2003 07 s12
2003 12 06 pra
07 06 PAME-Pełnia radości i wiedza wewnętrzna, ezoteryka
07.06.2008 - ekonomia, semestr II
07 06 CMLZFE4CLYUSNSINZEY5GFM63FS6JPTQSK42NBY

więcej podobnych podstron