MSP430_cz1.pdf

(1828 KB) Pobierz
072-075_msp430_cz1.indd
PODZESPOŁY
MSP430: mikrokontrolery,
które (prawie) nie
pobierają prądu, część 1
Mikrokontrolery można podzielić na takie, które są bardzo tanie, te które są bardzo
szybkie i te energooszczędne. Każda z tych grup ma swoich liderów i każda z nich
charakteryzuje się parametrami, które umożliwiają porównanie ich miedzy sobą.
I tak mikrokontrolery „tanie” konkurują ceną za sztukę. Do tej grupy należą
układy z rodzin PIC, ST7 i „małe” AVR. Mikrokontrolery „szybkie” to przede
wszystkim te wyposażone w rdzenie ARM. Ich głównym acz nie jedynym parametrem
charakterystycznym jest liczba instrukcji wykonywanych w czasie jednej sekundy. Trzecia
grupa – mikrokontrolery o małym poborze energii – konkurują poborem prądu. W grupie tej znajdują się
m.in. układy z serii MSP430 firmy Texas Instruments, będące tematem tego artykułu.
Aby przedstawiany
obraz mikrokontrolerów
MSP430 był pełniejszy,
opis ich właściwości bę-
dzie formułowany z pozy-
cji krytycznych, mimo że
autorzy są użytkownikami
tych układów czy wręcz
przejawiają, entuzjazm po-
twierdzony dobrymi wyni-
kami w wielu zastosowa-
niach.
Użytkownicy mikro-
procesorów i mikrokontro-
lerów prezentują często
„nademocjonalny” stosu-
nek do swych ulubieńców,
traktując użytkowników in-
nych odmian czy rodzin
jak „odszczepieńców jedy-
nie słusznej drogi”, czyli
prawie w kategoriach reli-
gijnych. Ci którzy „wierzą”
w jeden typ mikrokontrole-
rów (np. AVR) z trudem
wysłuchują relacji zwolen-
ników/użytkowników innej
rodziny (np. PIC), często
w ogniu dyskusji opierając
porównania na pojedyn-
czym parametrze.
Autorzy cyklu wie-
rzą, że dzięki technicznej
i wszechstronnej ocenie
możliwe jest pozostanie
przy spokojnym, parame-
trycznym traktowaniu prob-
lemu ułatwiającym lepsze
rozpoznanie i wybór typu
do własnych zastosowań.
Z wielu dostępnych wer-
sji MSP430 wybierzemy na
cele naszego kursu jeden
typ, który będzie nam to-
warzyszył przez cały cykl
artykułów. Będzie to mikro-
kontroler MSP430F449. Nie
jest on najbardziej nowo-
czesny czy najszybszy w ro-
dzinie, ale dzięki bogatemu
wyposażeniu w peryferia,
z pewnością umożliwi wyko-
nanie wielu interesujących
eksperymentów ze sprzę-
tem i programowaniem. Do
zastosowań produkcyjnych
można oczywiście dobrać
prostsze i tańsze egzempla-
rze z szerokiej rodziny MSP.
M i k r o ko n t r o l e r
MSP430F449 jest oferowany
w obudowie TQFP100. Dla
wielu użytkowników, szcze-
gólnie z grupy elektroni-
ków amatorów, taka obudo-
wa może stanowić pewien
kłopot. Jednak producenci
układów scalonych dążą sy-
stematycznie i uparcie w kie-
runku gęsto upakowanego
montażu powierzchniowego.
Z tym faktem trzeba się po-
godzić i zaakceptować ukła-
dy SMD. Aby ułatwić życie
Czytelnikom redakcja EP
przygotowała moduł płytki
przejściowej umożliwiającej
rozprowadzenie zagęszczo-
nych kontaktów obudowy
do wyprowadzeń w rastrze
2,54 mm ( fot. 2 ).
Wszystkie wyprowa-
dzenia mikrokontrolera są
dostępne na złączach typu
Mikrokontrolery
MSP430
Jak zwykle gdy historia
produkcji mikrokontrole-
rów jest długa – a tak jest
w przypadku MSP430 –
producent dopracował się
wielu ich odmian. Wspól-
ną cechą MSP430 jest 16–
bitowa jednostka centralna
zbudowana na bazie archi-
tektury RISC, przygotowana
tak, by pobór prądu był
minimalny. Ograniczenie
poboru energii ma zapew-
nić ciągłą pracę mikrokon-
trolera nawet przez kilka
lat przy zasilaniu bateryj-
nym ( fot. 1 ). Istotną ce-
chą rodziny jest dyspono-
wanie jedynie wewnętrzną
pamięcią i niedostępność
magistrali systemowej na
wyprowadzeniach mikro-
kontrolera.
Fot. 1. Mikrokontrolery
MSP430 można zasilać z og-
niw kwasowych, budowa-
nych choćby z owoców…
Fot. 2. Widok płytki eksperymentalnej dla mikrokontrolera
MSP430F449 (będzie dostępna jako kit AVT)
72
Elektronika Praktyczna 9/2007
278157111.049.png 278157111.050.png 278157111.051.png
PODZESPOŁY
Rys. 3. Energooszczędne tryby działania mikrokontrolerów
MSP430
bilnie z prędkością 16 MHz
przy napięciu 3,3 V.
Pobór prądu przez mi-
krokontroler w standardo-
wym trybie pracy wynosi
ok. 280 mA/1 MHz. Ozna-
cza to, że przy częstotliwo-
ści taktowania 8 MHz po-
bór prądu będzie wynosić
2,3 mA. Wynika z tego, że
nie jest to żadna rewelacja
– wiele mikrokontrolerów
ma podobny pobór prą-
du. Najwyraźniej producent
używa standardowej tech-
nologii do produkcji tego
układu. Jednak to, co jest
prawdziwą zaletą MSP430,
to dostępnych aż 5 róż-
nych trybów oszczędzania
energii ( rys. 3 ). W ostat-
nim, najwyższym stopniu
oszczędzania, pobór prą-
du można ograniczyć do
0,1 mA. Oznaczone są one
jako LPM0…4 ( Low Power
Modes ). Najprościej mówiąc
indeks przy LPM oznacza
„głębokość” uśpienia mikro-
kontrolera.
W normalnym trybie
pracy – AM ( Active Mode )
– mikrokontroler może wy-
konywać działania z mak-
symalną szybkością. Tryb
LPM0 to „lekka drzemka”,
a najwyższy – LPM4 to tryb
pełnej hibernacji („zamroże-
nia”). Sposoby wyprowadza-
nia z trybów uśpienia zale-
żą od skali aktywności za-
sobów mikrokontrolera. Dla
LPM0 może to być dowol-
ne przerwanie podczas gdy
z LPM4 wyjść można już
tylko poprzez zerowanie.
Uśpiony mikrokontroler
potrzebuje mniej energii.
Podstawowa idea energoo-
szczędnego działania mikro-
kontrolerów MSP sprowadza
się do tego, by jak najdłu-
żej trwać w stanie uśpienia,
budzić się do wykonania
możliwie sprawnie zadania
i natychmiast powracać do
stanu uśpienia.
Jak wygląda przechodze-
nie od snu do działania?
Tak jak w życiu, aby we-
wnętrzny generator taktu-
jący (DCO) zaczął działać
z pełną prędkością, potrze-
ba czasu. Zgodnie z kartą
katalogową czas budzenia
jest krótszy od 6 ms. War-
to pamiętać o tym projektu-
jąc szybką lub wymagającą
precyzyjnej synchronizacji
czasowej aplikację. Druga
istotna cecha architektu-
ry to możliwość zmiany
w dowolnej chwili źród-
ła sygnału taktującego. Do
wyboru są dwa generatory
kwarcowego (XT1 i XT2)
oraz wspomniany generator
DCO ( Digital Control Oscil-
lator ). Dodatkowo częstotli-
wość wewnętrznego genera-
goldpin umożliwiających
rozbudowę i testowanie
stanu mikrokontrolera. Na
płytce umieszczono rów-
nież trzy rezonatory kwar-
cowe i złącze do progra-
mowania JTAG oraz złącza
wyświetlaczy, wyprowadze-
nia partów UART i złącze
dla mikroamperomierza
przydatne przy ekspery-
mentach z ograniczaniem
poboru energii.
czenia. Jeśli ma on współ-
pracować z układem UART,
np. MAX3232, to najlepiej
aby napięcie zasilania było
większe niż 3,3 V. Jeśli
mikrokontroler w trakcie
działania będzie zapisywał
dane do wewnętrznej pa-
mięci Flash to minimalne
napięcie zasilania wynosi
już 2,7 V. Obniżenie na-
pięcia zasilania ogranicza
również szybkość pracy.
Dopuszczalna częstotliwości
pracy przy napięciu 2 V
to według katalogu tyl-
ko 4 MHz. Dla osiągnięcia
maksymalnej częstotliwości
taktowania 8 MHz napięcie
zasilania musi mieć wartość
3,6 V. Takie dane znajdzie-
my w katalogu – w praktyce
mikrokontroler pracuje sta-
Więcej
o mikrokontrolerze
MSP
M i k r o ko n t r o l e r
MSP430F449 może być za-
silany napięciem od 1,8 do
3,6 V. Zakres napięć wyda-
je się szeroki, napotykamy
tu jednak na pewne ograni-
Rys. 4. Schemat blokowy mikrokontrolera MSP430F449
74
Elektronika Praktyczna 9/2007
278157111.052.png 278157111.001.png 278157111.002.png 278157111.003.png 278157111.004.png 278157111.005.png 278157111.006.png 278157111.007.png 278157111.008.png 278157111.009.png 278157111.010.png 278157111.011.png 278157111.012.png
PODZESPOŁY
tora taktującego DCO może
być regulowana w zakresie
40 kHz…8 MHz. Pozwala
to na elastyczne kształto-
wanie wydajności oblicze-
niowej i poboru energii.
Praktyka uczy, że wyka-
zane w katalogu minimal-
ne wartości poboru prądu
można osiągnąć jedynie
przy najwyższej dbałości
o detale aplikacji.
Mikrokontrolery MSP430
wyposażono 16–bitowy
rdzeń RISC. Przy maksy-
malnej szybkości taktowa-
nia – 8 MHz – czas cy-
klu rozkazowego wynosi
125 ns. Ponieważ jednak
poszczególne instrukcje róż-
nią się czasem wykonania,
a wiele z nich realizowane
jest w kilku cyklach zega-
rowych, rzeczywista szyb-
kość liczona w MIPS jest
dwu…trzykrotnie niższa od
częstotliwości taktowania.
Wydajność obliczeniowa
jest wciąż wysoka dzięki
możliwości operowania na
16–bitowym słowie.
Ponadto wiele modeli
mikrokontrolerów MSP430
(w tym 449) posiada we-
wnętrzny sprzętowy układ
mnożący, który wykonuje
mnożenie liczb 16–bitowych
w 4 cyklach taktowania.
Takie układy są charakte-
rystyczne dla procesorów
DSP. Sprzętowa jednostka
mnożenia stałoprzecinkowe-
go przyspiesza obliczenia
i ułatwia realizację algoryt-
mów DSP, które wymaga-
ją szybkiego wykonywania
operacji MAC ( Multiply
and Accumulate – mnóż
i sumuj).
Procesor posiada
12–bitowy przetwornik
analogowo–cyfrowy z ciągłą
aproksymacją. W innych
modelach MSP430 spotkać
można również przetwor-
nik 10–bitowy a także 16–
bitowy przetwornik sigma–
delta.
Do struktury proceso-
ra dołączono dwa, prawie
identyczne, timery 16–
bitowe (ich opis opubliko-
waliśmy w EP8/2007). Ti-
mery mogą pracować w try-
bach przechwyt/porównanie
(capture/compare) i generacji
impulsów o regulowanym
czasie trwania (PWM).
Procesor posiada dwa
identyczne układy USART.
Mogą one pracować w try-
bach transmisji szeregowej
asynchronicznej oraz w try-
bie SPI. Tryb SPI zapewnia
wymianę danych z wieloma
układami tego standardu
komunikacji, w tym pamię-
ciami Flash np. w kartach
MMC ( Multi Media Card ).
W strukturze mikrokon-
trolera umieszczono rów-
nież szybki komparator
analogowy, który umożli-
wia eksperymenty z inte-
gracyjnym przetwornikiem
analogowo–cyfrowym.
Nadzór napięcia zasi-
lania zapewnia specjalny
układ SVS z możliwością
zaprogramowania poziomu
alarmu wartości napięcia.
W układzie, dzięki blokowi
specjalizowanego detektora
( Brown–out detektor ) śle-
dzone są również powolne
zmiany napięcia zasilania .
Praca procesora może
być dozorowana przez pro-
stej konstrukcji interfejs
dołączany do złącza JTAG
(AVT1409, EP3/05). Inter-
fejs ten pozwala również
na programowanie pamięci
procesora. Warto zauważyć,
że nie jest to jedyna możli-
wość programowania wluto-
wanego w docelową płytkę
w miejscu działania proce-
sora ( in–place ). Wbudowana
w ROM procedura pozwala
na programowanie pamięci
Flash także przez UART.
Procesor może sterować
tanim wyświetlaczem LCD.
Tani wyświetlacz to taki,
który nie zawiera kontro-
lera i składa się jedynie
z umieszczonej między dwo-
ma szkiełkami substancji
ciekłokrystalicznej wyświet-
lacza i kontaktów doprowa-
dzających sygnały sterujące.
Schemat blokowy mikrokon-
trolera MSP430F449 przed-
stawiono na rys. 4 .
Jacek Majewski
Mariusz Kaczor
Krzysztof Kardach
Elektronika Praktyczna 9/2007
75
278157111.013.png 278157111.014.png 278157111.015.png 278157111.016.png 278157111.017.png 278157111.018.png 278157111.019.png 278157111.020.png 278157111.021.png 278157111.022.png 278157111.023.png 278157111.024.png 278157111.025.png 278157111.026.png 278157111.027.png 278157111.028.png 278157111.029.png 278157111.030.png 278157111.031.png 278157111.032.png 278157111.033.png 278157111.034.png 278157111.035.png 278157111.036.png 278157111.037.png 278157111.038.png 278157111.039.png 278157111.040.png 278157111.041.png 278157111.042.png 278157111.043.png 278157111.044.png 278157111.045.png 278157111.046.png 278157111.047.png 278157111.048.png
Zgłoś jeśli naruszono regulamin