AVT-449.pdf
(
2295 KB
)
Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Mikrokontrolery MSP430 – projekty z EP
Tym razem zamiast Analog Center przedstawiamy skróty opisów projektów publikowanych na
łamach EP, wykonanych na (lub dla) mikrokontrolerach z rodziny MSP430. Wybrane przykłady
pokazują różnorodne możliwości tych układów, a także łatwość ich aplikowania.
Czytelników zainteresowanych tematyką MSP430 zachęcamy do zakupu EPooL5/2007, w której
znalazła się płyta z kompletem programów narzędziowych, not katalogowych, aplikacyjnych,
bibliotekami EDA i materiałami dodatkowymi, wszystko to związane z MSP430.
Uniwersalny adapter dla układów MSP430
Mikrokontrolery firmy Texas
Instruments wyposażone w wiele
interesujących bloków wewnętrz-
nych z pewnością mogą konkuro-
wać z popularnymi AVR–ami czy
PIC–ami. Architektura 16–bitowa
oraz niski pobór prądu w nie-
których zastosowaniach sprawia,
że ich zastosowanie jest o wie-
le lepszym rozwiązaniem. Barie-
rą w praktycznym poznaniu tych
mikrokontrolerów jest fakt, że ich
znacząca większość dostępna jest
w obudowach do montażu SMD.
Adapter rozwiązujący ten problem
przedstawiamy poniżej.
Jest on przystosowany dla
układów umieszczonych w 64–
–nóżkowych obudowach typu
TQFP64 i umożliwia wyprowadze-
nie wszystkich portów procesora
na złącza szpilkowe. W adapterze
można zastosować zarówno ukła-
dy bez obsługi wyświetlaczy LCD
z serii MSP430F1xx, jak również
z obsługą wyświetlaczy z serii
MSP430F4xx. Płytkę z wlutowa-
nym procesorem poprzez złącza
można umieścić w płytce bazowej
i dzięki temu w łatwy sposób moż-
na zmieniać typ zastosowanego
procesora. Do programowania pro-
cesora zostało zastosowane złącze
CON5, które umożliwia progra-
mowanie poprzez interfejs JTAG.
Układ wyprowadzeń na tym złą-
czu jest zgodny z programatorem
FET–MSP430 firmy TI oraz prezen-
towanym na łamach EP zestawem
AVT1409. W adapterze możliwe
jest zastosowanie dwóch rezonato-
rów kwarcowych: główny X1 oraz
pomocniczy X2. Dla układów wy-
posażonych w przetwornik analo-
gowo–cyfrowy zworkami JP3 i JP4
można połączyć masę i plus zasi-
lania cyfrowego z analogowym, na-
tomiast zworkami JP1 i JP2 ustala
się, który obwód jest źródłem za-
silania. Jeśli zwarta będzie zworka
JP1, to procesor będzie zasilany
z programatora JTAG, w przypadku
zwarcia zworki JP2 interfejs JTAG
będzie zasilany z płytki procesora.
Na płytce dodatkowo znajduje się
obwód zerowania procesora przy
włączeniu zasilania wykonany
z rezystora R1 i kondensatora C5.
Rys. 2.
Bardziej szczegółowy opis tego projektu
można znaleźć w EP11/2006 lub na
stronie http://www.sklep.avt.pl pod nazwą
AVT–1442.
Rys. 1.
Elektronika Praktyczna 6/2007
37
Mikrokontrolery MSP430 – projekty z EP
Programator JTAG dla układów MSP430
Interfejs JTAG stał się standar-
dem w programowaniu niemalże
wszystkich układów, które wyma-
gają programowania poczynając od
układów PLD, a kończąc na proce-
sorach. Pomimo ujednoliconej na-
zwy, programatory JTAG występują
w wielu odmianach, zależnych od
producenta i obsługiwanych ukła-
dów. Schemat elektryczny progra-
matora umożliwiającego programo-
wanie mikrokontrolerów MSP430
przedstawiono na
rys. 1
. Jako bu-
for zastosowano układ typu 74H-
C244, który pełni podwójną rolę:
wzmacniacza sygnałów (aby wej-
ścia portu drukarkowego nie obcią-
żały portów procesora i odwrotnie)
oraz konwertera napięć, ponieważ
port drukarkowy pracuje w stan-
dardzie TTL z napięciem zasila-
nia 5 V, natomiast procesor może
być zasilany napięciem 2,7…3,6 V
(w trybie programowania). Układ
U1 jest zasilany
napięciem równym
napięciu zasilania pro-
cesora, przez co zgodność
napięć jest zawsze zachowa-
na. Od strony złącza drukar-
kowego sygnały kierowane są na
wejścia układu U1 poprzez re-
zystory, dzięki czemu – pomimo
wyższej wartości niż ma jego na-
pięcie zasilania – nie stanowią dla
niego zagrożenia. Sygnał kierowany
do portu drukarkowego ma niż-
szą wartość niż 5 V, jednak mie-
ści się w zakresie dopuszczalnych
dla standardu TTL. Tranzystor Q1
służy do przełączania portów do-
łączonego procesora w tryb progra-
mowania. Funkcja ta jest wykorzy-
stywana w mniejszych procesorach,
w których linie interfejsu JTAG są
multipleksowane z portami I/O. Po-
czynając od układów umieszczo-
nych w obudowach 64–nóżkowych
Bardziej szczegółowy opis tego projektu
można znaleźć w EP3/2005 lub na
stronie http://www.sklep.avt.pl pod nazwą
AVT–1409.
sygnał ten nie jest wykorzystywa-
ny, ponieważ w tych układach in-
terfejs JTAG jest dostępny na nie-
zależnych (dodatkowych) liniach.
Rys. 1.
DIPmoduł procesora MSP430F1121A
Układ prostego modułu zawie-
rającego 16–bitowy mikrokontroler
firmy Texas Instruments z rodziny
MSP430, ułatwiający rozpoczęcie
przygody z tymi układami. Wszyst-
kie procesory z serii MSP430F ofe-
rowane są tylko w obudowach do
montażu powierzchniowego, co
z jednej strony umożliwia miniatu-
ryzację płytki, ale z drugiej strony
komplikuje poznanie
tych układów, gdyż do
wszelkich prób układ
musi być wlutowany
w płytkę. Aby umożliwić
poznanie mikrokontrolerów
z tej serii prezentujemy mo-
duł umożliwiający wlutowa-
nie jednego z najmniejszych
z tej rodziny – układu typu
MSP430F1121A.
Układ ten posiada obu-
dowę SO20 i ma dwa
cd
na str. 39
38
Elektronika Praktyczna 6/2007
Mikrokontrolery MSP430 – projekty z EP
niepełne
porty, co daje 14
linii I/O.
Pamięć progra-
mu typu Flash
tego mikrokontro-
lera ma pojem-
ność 4 kB, a pa-
mięć danych RAM
– 256 B. Dodat-
kowo w układzie
znajduje się 256 B
pamięci Flash
przeznaczonej do
zapisu danych.
Ponadto mikro-
kontroler posiada
wiele innych pery-
efriów, takich jak
chociażby kompa-
rator analogowy
czy licznik umoż-
liwiający między
innymi sprzętowe
generowanie prze-
biegu PWM.
Schemat mo-
dułu przedstawiono na
rys. 1
. Na
płytce zastosowano podstawowe
elementy umożliwiające pracę mi-
krokontrolera. Rezystor R1 i kon-
densator C1 pracują w obwodzie
zerowania mikrokontrolera, rezona-
tor kwarcowy X dołączony jest bez
zewnętrznych kondensatorów, gdyż
znajdują się one wewnątrz proce-
sora. Na złącza JP1 i JP2 zostały
wyprowadzone wszystkie sygnały
procesora, natomiast na złącze JP3
sygnały umożliwiające dołączenie
interfejsu JTAG służącego do jego
zaprogramowania. Zworki Z1 i Z2
służą do wyboru sposobu zasilania
w zależności od zastosowanego in-
terfejsu JTAG. Jeśli interfejs JTAG
cd
ze str. 38
Rys. 1.
posiada własne zasilanie, to moż-
na z niego zasilić moduł i należy
zewrzeć zworkę Z1. Jeśli natomiast
interfejs JTAG nie posiada własnego
zasilania, to należy zewrzeć zworkę
Z2 i w ten sposób zostanie on zasi-
lony z płytki modułu. Płytka modu-
łu jest wykonana w formie kompa-
tybilnej z rozmiarami obudów DIP
(600 mils), co umożliwi montaż
w różnego rodzaju płytkach uniwer-
salnych. Moduł może być zasilany
napięciem z przedziału 1,8…3,6 V,
przy czym w czasie programowa-
nia napięcie to musi być wyższe
od wartości 2,7 V. Zasilanie należy
dołączyć do wyprowadzeń ozna-
czonych jako VCC (nóżka numer
Bardziej szczegółowy opis tego projektu
można znaleźć w EP2/2005
2 – plus) i VSS (nóżka numer 4
– masa).
Do tworzenia programów na
mikrokontrolery MSP430 udostęp-
niony jest darmowy kompilator C
firmy IAR w wersji
Kickstart
, któ-
ry jest w pełni funkcjonalną wer-
sją z ograniczeniem generowanego
kodu do 4 kB, co dla przedsta-
wionego układu nie ma znaczenia.
Oprogramowanie jest dostępne na
stronie
www–s.ti.com/sc/techzip/sla-
c050.zip
, opublikowaliśmy je także
na CD–EP5/2007B.
Zestaw startowy dla procesora MSP430F413
Aby rozpocząć prace z no-
wym mikrokontrolerem warto jest
wyposażyć się w zestaw starto-
wy. Przykładem takiej konstruk-
cji może być płytka testowa pod
mikrokontroler typu MSP430F413.
Mikrokontroler ten jest jednym
z mniej rozbudowanych układów
z serii 16–bitowych mikrokontro-
lerów firmy Texas Instruments,
umożliwiający bezpośrednie stero-
wanie wyświetlaczem ciekłokrysta-
licznym w sposób sprzętowy. Brak
wielu rozbudowanych modułów
wewnętrznych sprawia, że układ
ten doskonale nadaje
się do rozpoczęcia
poznawania całej
rodziny układów
MSP430. Proce-
sor zawiera w swo-
jej strukturze 8 kB
pamięci programu
typu Flash, 256 B
pamięci danych typu
Flash oraz 256 B pa-
mięci RAM. Wyodręb-
nione 256 B pamięci
Flash umożliwia za-
pis danych, które nie
cd
na str. 40
Elektronika Praktyczna 6/2007
39
39
Mikrokontrolery MSP430 – projekty z EP
cd
ze str. 39
Rys. 1.
mogą być utracone w przypad-
ku odłączenia zasilania (w sposób
analogiczny jak stosowana w in-
nych procesorach pamięć typu
EEPROM). W układzie znajdują
się trzy liczniki: Watchdog Timer
(może służyć do zerowania pro-
cesora w przypadku zawieszenia),
Basic Timer (wykorzystywany
głównie do współpracy ze sterow-
nikiem wyświetlacza LCD) oraz
Timer_A3. Timer_A3 posiada trzy
dodatkowe rejestry umożliwiające
na przykład sprzętowe generowa-
nie dwóch przebiegów o zmien-
nym wypełnieniu (PWM). Sześć
portów pozwala na uzyskanie 48
linii wejścia/wyjścia, a zawarty
komparator analogowy może zo-
stać wykorzystany do integracji
procesora z wejściowym napięciem
analogowym, na przykład poprzez
wykonanie przetwornika AC.
Na szczególną uwagę zasłu-
guje moduł oscylatora, ponieważ
oprócz typowej funkcji generowa-
nia przebiegu taktującego proce-
sor z wykorzystaniem zewnętrzne-
go rezonatora kwarcowego zawiera
w sobie moduł FLL+ umożliwia-
jący mnożenie częstotliwości pod-
stawowej (otrzymanej przy pomo-
cy zewnętrznego rezonatora kwar-
cowego). Stosując jako podstawy
wzorzec częstotliwości rezonator
o częstotliwości 32,768 kHz bez
problemów można uzyskać właści-
wą częstotliwość taktowania pro-
cesora wynoszącą nawet 8 MHz.
Dzięki temu można dostosować tę
częstotliwość do aktualnego zapo-
trzebowania na moc obliczenio-
wą, a także zminimalizować pobór
prądu, gdy nie są wykonywane
skomplikowane procedury.
Wewnątrz układu znajdują się
także przestrajane kondensatory,
które dla rezonatora kwarcowe-
go 32,768 kHz mogą zastąpić ze-
wnętrzne kondensatory obwodu
oscylatora.
Procesor może być zasilany
napięciem z zakresu 1,8…3,6 V,
co w połączeniu z niewielkim po-
borem prądu sprawia, że układ
doskonale nadaje się do urządzeń
zasilanych bateryjnie pozwalając
na zasilanie z dwóch ogniw 1,5 V
lub też z jednego stosując energo-
oszczędną przetwornicę napięcia.
Prezentowany zestaw startowy zo-
stał wyposażony w elementy naj-
częściej stosowane z tym proce-
sorem. I tak na płytce znajduje
się wyświetlacz LCD o organizacji
3 1/2 cyfry, interfejs RS232, trzy
diody świecące, trzy przyciski
oraz brzęczyk. Na złączach są
wyprowadzone dwa porty, a także
wykonany jest interfejs dla magi-
strali I
2
C oraz 1Wire. Programo-
wanie procesora wykonuje się po-
przez interfejs JTAG, którego złą-
cze znajduje się także na płytce.
Bardziej szczegółowy opis tego projektu
można znaleźć w EP2...3/2006 lub na
stronie http://www.sklep.avt.pl pod nazwą
AVT–920.
Jako programator należy zasto-
sować układ interfejsu JTAG opi-
sanego w EP03/2005 (AVT–1409).
W EP2...3/2006 zostało opisane
także darmowe środowisko progra-
mistyczne umożliwiające kompilo-
wanie programów w języku „C”
lub asemblerze, symulację pra-
cy procesora oraz kontrolowanie
jego pracy w rzeczywistym ukła-
dzie, współpracujące z programa-
torem JTAG. Oprogramowanie to
jest udostępniane przez firmę IAR
w postaci specjalnej wersji tego
kompilatora, która posiada ogra-
niczenia generowanego kodu do
4 KB, ale poza tym ma wszyst-
kie funkcje pełnej wersji. Dosko-
nale nadaje się więc do zapozna-
nia się ze środowiskiem IAR, jak
również z procesorem, a także do
napisania w pełni funkcjonalnych
programów.
Aby zaprezentować funkcjo-
nowanie zestawu startowego,
w EP2...3/2006 zostały opisane tak-
że przykładowe programy przed-
stawiające działanie poszczegól-
nych modułów, które także będzie
można wykorzystać do tworzenia
własnych programów.
40
Elektronika Praktyczna 6/2007
Mikrokontrolery MSP430 – projekty z EP
Moduł pomiarowy z procesorem MSP430
Moduł jest trzyfunkcyjnym
przyrządem umożliwiającym, w za-
leżności od potrzeb, pełnienie
jednej z trzech funkcji: pomiaru
napięcia, licznika impulsów, wy-
świetlania danych liczbowych od-
bieranych z portu szeregowego.
Jako pole odczytowe został zasto-
sowany czterocyfrowy wyświetlacz
ciekłokrystaliczny. W układzie zo-
stał zastosowany mikrokontroler
typu MSP430F435, który ma wbu-
dowany sprzętowy sterownik wy-
świetlacza, co powoduje, że jego
obsługa jest wykonywana niemal
samoczynnie. W procesorze za-
warty jest także przetwornik A/C
o rozdzielczości 12 bitów, co daje
4096 różnych stanów napięcia.
Pozwala to na wykonywanie po-
miarów z rozdzielczością 1 mV,
czyli trzech miejsc po przecin-
ku. Zakres pomiarowy przetwor-
nika wynosi 0...2,5 V, co umoż-
liwia wyświetlenie wartości na-
pięcia w formacie 0,000...2,500.
Choć zakres ten jest stały, to po
zastosowaniu zewnętrznego dziel-
nika napięcia (1:10, 1:100, 1:1000)
można go rozszerzyć. Aby wy-
świetlana wartość napięcia była
zgodna z napięciem przyłożonym
do wejścia dzielnika, na wyświe-
tlaczu jest możliwe ustawienie
kropki dziesiętnej na odpowiedniej
pozycji. W ten sposób napięcie
wejściowe może być wyświetlane
następująco: x.xxx, xx.xx, xxx.x,
xxxx. Daje to możliwość repre-
zentacji mierzonej wartości w za-
kresie 0,000...2500. Dołączając do
wejścia przetwornika A/C czujnik
ciśnienia, który na wyjściu będzie
generował napięcie proporcjonalne
do mierzonego ciśnienia. W ten
sposób wyświetlacz może wskazy-
wać wartość 1012 hPa dla przyło-
żonego napięcia równego 1,012 V.
Drugim trybem pracy modułu
pomiarowego jest tryb licznika.
W tym trybie są dostępne dwa
wejścia umożliwiające zliczanie:
do przodu, do tyłu oraz wejście
zerujące. W trybie licznika możli-
we jest wyświetlenie wartości od
–999 do 9999 przy maksymalnej
częstotliwości sygnału wejściowego
10 kHz (częstotliwość ta odnosi
Bardziej szczegółowy opis tego projektu
można znaleźć w EP10/2005 lub na
stronie http://www.sklep.avt.pl pod nazwą
AVT–449.
się do sygnału prostokątnego o wy-
pełnieniu 50%). W każdej chwili
licznik może zostać wyzerowany
poprzez podanie odpowiedniego
sygnału na wejście zerujące. Wej-
ścia zliczające mogą być przysto-
sowane do pracy ze sterowaniem
stykowym, które wymaga elimi-
nacji drgań. W takim trybie, po
każdym impulsie jest generowane
opóźnienie około 10 ms i dopiero
po tym czasie następuje
cd
na str. 42
Rys. 1.
Elektronika Praktyczna 6/2007
41
Plik z chomika:
zck68
Inne pliki z tego folderu:
AVT-01.pdf
(581 KB)
AVT-02.pdf
(436 KB)
AVT-2004.pdf
(990 KB)
AVT-2126.pdf
(1295 KB)
AVT-2270.pdf
(237 KB)
Inne foldery tego chomika:
Listingi
Program mikrokontrolera
Zgłoś jeśli
naruszono regulamin