8–bitowe maluchy – historii ciąg dalszy.pdf

(3321 KB) Pobierz
043-047_freescale.indd
PODZESPOŁY
8–bitowe maluchy
– historii ciąg dalszy
Wprowadzenie kilka lat temu do sprzedaży przez firmę Microchip
mikrokontrolerów w obudowach 6–nóżkowych – jak się okazało – nie
był to tylko chwytliwy zabieg reklamowy, lecz także ofensywa
w szybko rozwijającym się segmencie rynku. Dostrzegły go także inne
firmy (m.in. Atmel, Microchip, Philips iSTMicroelectronics, wstronę
„maluchów” żegluje także SiliconLabs), teraz do grona producentów
„małych” mikrokontrolerów dołączyła firm Freescale.
Jaki przepis na 6–nóż-
kowy sukces wymyślili
inżynierowie firmy Fre-
escale? Najbardziej oczy-
wisty: wykorzystali jeden
ze swoich klasycznych
rdzeni – HC08 – i po
drobnych uproszczeniach
wykonali na jego bazie
rdzeń oznaczony symbo-
lem RS08. W ten sposób
powstała rodzina tanich,
prostych (pod względem
budowy i obsługi) i świet-
nie oprogramowanych (do-
stępne są zarówno przy-
kładowe programy, jak
i wysokiej klasy programy
narzędziowe) mikrokontro-
lerów.
RS08 vs HC/HCS08
Ponieważ RS08 jest
rdzeniem „zredukowanym”,
to musi w nim czegoś bra-
kować... Oczywiście tak
jest: konstruktorzy tego
rdzenia skupili się na zmi-
nimalizowaniu jego fizycz-
nych wymiarów w krzemie
(co się silnie przekłada na
cenę układu), a osiągnięto
to dzięki usunięciu z rdze-
nia elementów nadmiaro-
wych z punktu widzenia
aplikacji dostępnych dla
„małych” mikrokontrolerów.
Najważniejsze zmia-
ny wprowadzone w rdze-
niu RS08 w stosunku do
HCS08 to:
W G A M M I E
Jeden z najwi´kszych
Êwiatowych producentów:
rezystorów
kondensatorów (ceramiczne,
tantalowe)
pami´ci EEPROM
diod prostowniczych, Schottkiego,
tranzystorów
diod LED, laserowych, czujników
optycznych
uk∏adów scalonych: stabilizatorów
napi´cia, sterowników silników,
uk∏adów multimedialnych,
wzmacniaczy audio
specjalizowane uk∏ady LSI
dla nap´dów CD, DVD,
drukarek fiskalnych
01-013 Warszawa, ul. Kacza 6 lok. A
tel. (022) 862-75-00, fax (022) 862-75-01
e-mail: info@gamma.pl
www.gamma.pl
Elektronika Praktyczna 7/2006
43
137743221.084.png 137743221.095.png
PODZESPOŁY
Jak to jest z rdzeniami mikrokontrolerów firmy Freescale
Mikrokontrolery z rdzeniami HC08 Motorola (niegdyś)/Freescale (teraz)
są produkowane od lat. Ich unowocześnioną technologicznie wersją są
rdzenie HCS08, przy najpoważniejszą wprowadzoną w nich modyfikacją
jest przygotowanie ich opisu w języku HDL i każdorazowe syntezowanie
(stąd „S” w nazwie, od angielskiego Sythesizable ) wraz ze zdefiniowa-
nymi modułami peryferyjnymi.
Rdzenie RS08 zastosowane w prezentowanych mikrokontrolerach to
uproszczone funkcjonalnie (stąd „R” w nazwie, od angielskiego Reduced )
rdzenie HCS08, które są – podobnie jak HCS08 – także poddawane
syntezowaniu wraz z otaczającymi peryferiami na etapie przygotowywa-
nia masek.
programistę koniecz-
ność ustalenia źródła
sygnału przerwania.
Optymalizacji rdzenia
RS08 pod kątem dopasowa-
nia do „małych” aplikacji
nie przeprowadzono wyłącz-
nie za pomocą piły odcina-
jącej fragmenty uznane za
nadmiarowe. Wprowadzono
także kilka modyfikacji roz-
budowujących rdzeń, które
mają służyć zmniejszeniu
zajętości pamięci Flash oraz
przyspieszeniu wykonywa-
nia programów:
– wprowadzono dwa
nowe tryby adresowa-
nia: Short oraz Tiny
(są to uproszczone try-
by adresowania bezpo-
średniego o ograniczo-
nym zasięgu),
– zastosowano rejestr
Shadow PC , który słu-
ży do przechowywania
adresu powrotu z pro-
cedury spełnia rolę jed-
nopoziomowego stosu),
– operacje na rejestrze
Shadow PC umożli-
wiają dwie nowe in-
strukcje: SHA i SLA
(wymiana zawartości
rejestru z zawartością
akumulatora),
– wprowadzono tzw.
pseudoinstrukcje, czy-
li mechanizm emulacji
niektórych instrukcji
niedostępnych na liście
rdzenia RS08 (mają
z niego korzystać auto-
matycznie kompilatory),
– wprowadzono mecha-
nizm stronicowania pa-
mięci w oknie 64–bajto-
wym, który umożliwia
m.in. wykonywanie
operacji na całej pa-
mięci Flash o pojem-
ności do 16 kB za po-
mocą rozkazów o „krót-
kim” adresowaniu.
Dzięki opisanym modyfi-
kacjom uzyskano zmniejsze-
nie powierzchni zajmowanej
przez rdzeń o 30% w sto-
sunku do wersji HCS08 wy-
konywanej w tej samej tech-
nologii, a przy umiejętnym
podejściu do programowania
mikrokontrolerów, możliwe
jest także 15...20–procento-
we zmniejszenie zapotrzebo-
wania na pamięć programu.
– usunięcie z listy in-
strukcji poleceń: Mu-
tiply , Divide , Nibble
Swap , Decimal Adjust
Acc , Negate , Comple-
ment , Arithmetic Shift
i niektórych instrukcji
skoków oraz operacji
na stosie,
– w rejestrze znaczników
(flag) CCR ( Condition
Code Register ) pozo-
stawiono jedynie dwie
flagi: Carry i Zero ,
– usunięcie z rdzenia re-
jestru H oraz wskaź-
nika stosu SP ( Stack
Pointer ),
– nie jest dozwolone
wielopoziomowe wy-
woływanie procedur
z procedur,
– licznik PC ma długość
14 bitów, co ogranicza
maksymalny rozmiar
pamięci programu do
16 kB,
– wektorowy moduł ob-
sługi przerwań zastą-
piono znacznie prost-
szym mechanizmem,
który przerzuca na
Nowy rdzeń w nowych
mikrokontrolerach
Firma Freescale wpro-
wadziła w maju tego roku
do sprzedaży dwa mi-
krokontrolery wyposażone
w rdzeń RS08, noszą one
oznaczenia MC9RS08KA1
i MC9RS08KA2. Mają one
identyczną budowę we-
wnętrzną ( rys. 1 ), różnią
się jedynie pojemnością
pamięci Flash: pierwszy
z wymienionych ma jej
1 kB, drugi – 2 kB.
Wewnętrzne peryferia
prezentowanych mikrokon-
trolerów są dość skromne,
ale ich przemyślana bu-
dowa i wynikająca z tego
uniwersalność pozwalają
wykorzystać je m.in. do
budowy przetwornika A/C.
Oprócz komparatora
analogowego z własnym
źródłem napięcia odniesie-
nia, timera oraz interfejsu
KBI standardowym wy-
posażeniem mikrokontro-
lerów MC9RS08KAx jest
wewnętrzny generator tak-
tujący ICS ( Internal Clock
Source ), który wyposażo-
no w generator o często-
tliwości 31,25 kHz i pętlę
FLL o skoku 0,2%. Zasto-
Rys. 1. Schemat blokowy mikrokontrolera MC9RS08KA
44
Elektronika Praktyczna 7/2006
137743221.106.png
PODZESPOŁY
Rys. 2. Schemat elektryczny połączeń interfejsu BDC
sowany generator charak-
teryzuje się niezłą stabil-
nością: ±2% dla maksy-
malnych dopuszczalnych
zmian wartości napięcia
zasilającego i temperatu-
ry otoczenia. maksymalna
częstotliwość taktowania
CPU wynosi 20 MHz, co
przekłada się na prędkość
magistrali danych wyno-
szącą 10 MHz.
O ile standardowe pe-
ryferia prezentowanych
mikrokontrolerów trudno
uznać za wybitne (acz-
kolwiek ich elastyczność
mocno akcentuje ich po-
chodzenie z początku XXI
wieku), to wbudowa-
ny układ wspomagający
sprzętowo debugowanie
programu BDC ( Backgro-
und Debug Controller )
należy – pod względem
możliwości i łatwości ko-
rzystania z 1–przewodo-
wego interfejsu (schemat
elektryczny ilustrujący
niezbędne połączenia po-
kazano na rys. 2 ) – do
światowej ekstraklasy.
Warto pamiętać, że nie-
wiele 8–bitowych mikro-
kontrolerów oferuje po-
dobne wyposażenie.
Prezentowane mikro-
kontrolery są przystoso-
wane do zasilania na-
pięciem 1,8...5,5 V, przy
czym zawartość pamięci
SRAM jest zachowywana
do 0,8 V, a maksymalna
częstotliwość taktowania
– 20 MHz – może być
utrzymywana w całym
zakresie dopuszczalnych
napięć zasilających. Śred-
ni pobór prądu podczas
pracy przy zasilaniu na-
pięciem 1,8 V wynosi do
2,4 mA, a przy zasilaniu
napięciem 5 V – nie wię-
cej niż 5,8 mA. Zakres
dopuszczalnych tempe-
ratur otoczenia podczas
pracy wynosi –40...+85 o C.
Obudowy
Mikrokontrolery MC9R-
S08KAx są oferowane
w obudowach DIP8, SOIC8
oraz DFN6 o wymiarach
3x3x1 mm. W tych ostat-
nich dla użytkownika są
dostępne dwie uniwersalne
linie I/O, jedna linia wej-
ściowa i jedna wyjściowa,
a w obudowach 8–nóżko-
8–bitowe nowości
Przegląd najnowszych informacji
o 8–bitowych mikrokontrolerach
z oferty firmy Freescale można
znaleźć pod adresem: www.
freescale.com/8bit .
Elektronika Praktyczna 7/2006
45
137743221.117.png 137743221.001.png 137743221.012.png 137743221.023.png 137743221.034.png 137743221.038.png 137743221.039.png 137743221.040.png 137743221.041.png 137743221.042.png 137743221.043.png 137743221.044.png 137743221.045.png 137743221.046.png 137743221.047.png 137743221.048.png 137743221.049.png 137743221.050.png 137743221.051.png 137743221.052.png 137743221.053.png 137743221.054.png 137743221.055.png 137743221.056.png 137743221.057.png 137743221.058.png 137743221.059.png 137743221.060.png 137743221.061.png 137743221.062.png 137743221.063.png 137743221.064.png 137743221.065.png 137743221.066.png 137743221.067.png 137743221.068.png 137743221.069.png 137743221.070.png 137743221.071.png 137743221.072.png 137743221.073.png 137743221.074.png 137743221.075.png 137743221.076.png 137743221.077.png 137743221.078.png 137743221.079.png
PODZESPOŁY
wych linii I/O jest 4
plus jedna linia wej-
ściowa i jedna wyj-
ściowa. Linie jedno-
kierunkowe mogą być
wykorzystywane pod-
czas pracy interfejsu
BDC, co nieco ogra-
nicza ich użyteczność
w aplikacjach.
producent udostępnia prak-
tycznie (dla użytkowników
RS08) bezpłatnie. Wersja
dostępna obecnie nie ob-
sługuje kompilacji progra-
mów w języku C na układy
z rdzeniem RS08 (dostępny
jest wyłącznie kompilator
asemblera), ale poprawiona
wersja CodeWarriora ma się
pojawić pod koniec wakacji
tego roku.
Osoby chcące poznać
zarówno możliwości pre-
zentowanych mikrokontro-
lerów jak i środowiska Co-
deWarrior mogą skorzystać
z dostępnego bezpłatnie
internetowego „laborato-
rium” projektowego, które
umożliwia zdalny dostęp
do działającego środowi-
ska ( rys. 3 ) oraz emula-
tora zestawu uruchomie-
niowego ( rys. 4 ). Praca
odbywa się zdalnie (użyt-
kownikowi jest przydzielo-
ny m.in. zdalny dysk) za
pomocą emulatora eksplo-
ratora Windows ( rys. 5 )
uruchomionego w oknie
przeglądarki WWW.
Wszystkie te zasoby są
dostępne po zalogowaniu.
Rys. 3. Virtual-lab daje dostęp do CodeWarriora...
Łyżka dziegciu
Cechy użytko-
we mikrokontrolerów
z rdzeniem RS08 są
– wbrew sugestiom
producenta, który
twierdzi, że są to
Low–End Microcon-
trollers – wystarcza-
jące do tego, żeby
je stosować w wielu
wymagających apli-
kacjach. Kłopotliwym
dla użytkowników
niedopatrzeniem, jest
brak wbudowanej
w mikrokontrolery
przetwornicy zapew-
niającej napięcie pro-
gramowania dla pa-
mięci Flash. Nie jest
to wygodne w prak-
tyce, ale proponowa-
ny przez producenta
jako programator ISP
interfejs USB2BDC
(jego dokumentacja
jest łatwo dostępna),
taką przetwornicę za-
wiera, więc to drob-
ne niedopracowanie
nie dyskwalifikuje
prezentowanych ukła-
dów.
Rys. 4. ...umożliwia emulację zestawu...
Plany
Prezentowane mini–mi-
krokontrolery są dostępne
od maja tego roku. Pro-
ducent planuje wdrożenie
kolejnych układów z rdze-
niem RS08: jako pierw-
sze – przed wakacjami
2007 – mają się pojawić
dwa układy z zupełnie
nowej podrodziny MC9R-
S08SA (pojemność pamię-
ci programu 8 i 12 kB),
a w okolicy połowy roku
dwa kolejne mikrokontro-
lery z podrodziny MC9R-
S08KA (o pojemności pa-
mięci programu 4 oraz
8 kB).
Narzędzia
Potencjalni użyt-
kownicy mikrokon-
trolerów z rdzeniem
RS08 są w szczęśli-
wym położeniu: „pa-
suje” do nich bowiem
większość narzędzi
i wiele przykładowych
programów opraco-
wanych i opublikowa-
nych przez producen-
ta. Ogromnym ich atu-
tem jest między inny-
mi świetne środowisko
IDE z kompilatorem C
o nazwie CodeWarrior,
które to narzędzia
Rys. 5. ...a obsługuje się go jak pulpit Windows
Podsumowanie
Po długiej fali artyku-
łów o 32–bitowcach wra-
camy na dobrze znane
tereny. Co prawda trud-
no przewidzieć co się na
pewno wydarzy na rynku,
ale wiele wskazuje na to,
że rosnąca liczba pro-
46
Elektronika Praktyczna 7/2006
137743221.080.png 137743221.081.png 137743221.082.png 137743221.083.png
PODZESPOŁY
stych aplikacji, wymagają-
cych od elektroniki sporej
elastyczności i możliwości
wygodnego modyfikowania
funkcji, tworzy stabilne
podłoże rozwoju dla „ma-
luchów”.
Tradycyjnie zapowia-
damy, że rynek cały czas
monitorujemy i wszelkie
istotne zmiany – w tym
spodziewane pojawienie
się kolejnych mini–mikro-
kontrolerów – zasygnali-
zujemy natychmiast.
Andrzej Gawryluk, EP
Elektronika Praktyczna 7/2006
47
137743221.085.png 137743221.086.png 137743221.087.png 137743221.088.png 137743221.089.png 137743221.090.png 137743221.091.png 137743221.092.png 137743221.093.png 137743221.094.png 137743221.096.png 137743221.097.png 137743221.098.png 137743221.099.png 137743221.100.png 137743221.101.png 137743221.102.png 137743221.103.png 137743221.104.png 137743221.105.png 137743221.107.png 137743221.108.png 137743221.109.png 137743221.110.png 137743221.111.png 137743221.112.png 137743221.113.png 137743221.114.png 137743221.115.png 137743221.116.png 137743221.118.png 137743221.119.png 137743221.120.png 137743221.121.png 137743221.122.png 137743221.123.png 137743221.124.png 137743221.125.png 137743221.126.png 137743221.127.png 137743221.002.png 137743221.003.png 137743221.004.png 137743221.005.png 137743221.006.png 137743221.007.png 137743221.008.png 137743221.009.png 137743221.010.png 137743221.011.png 137743221.013.png 137743221.014.png 137743221.015.png 137743221.016.png 137743221.017.png 137743221.018.png 137743221.019.png 137743221.020.png 137743221.021.png 137743221.022.png 137743221.024.png 137743221.025.png 137743221.026.png 137743221.027.png 137743221.028.png 137743221.029.png 137743221.030.png 137743221.031.png 137743221.032.png 137743221.033.png 137743221.035.png 137743221.036.png 137743221.037.png
Zgłoś jeśli naruszono regulamin