S08QD firmy Freescale: mikrokontrolery za grosze
Znaczenie mikrokontrolerów dla przemysłu elektronicznego rośnie nieprzerwanie od momentu pojawienia się pierwszych masowo produkowanych komercyjnych konstrukcji tego typu, a więc przede wszystkim 8-bitowych układów z serii 8051 firmy Intel.
Upowszechnianie mikrokontrolerów w urządzeniach elektronicznych wynika z licznych zalet ich stosowania, co w ogólnej postaci można sprowadzić do możliwości wykorzystania pojedynczego układu scalonego do wykonywania wielu różnorodnych funkcji i zadań, których realizacja za pomocą innych elementów elektronicznych byłaby trudna, mało efektywna lub wręcz niemożliwa.
Uproszczony schemat blokowy mikrokontrolerów S08QD, które są dostępne wyłącznie w obudowach z 8 wyprowadzeniami. Na rysunku zaznaczono najważniejsze peryferia wbudowane w prezentowane mikrokontrolery. |
Tak duże zainteresowanie mikrokontrolerami ze strony producentów sprzętu elektronicznego stymuluje ich ciągły i intensywny rozwój, czego efektem jest wprowadzanie na rynek kolejnych rodzin mikrokontrolerów. Zaowocowało to najpierw rozpowszechnieniem układów o architekturze 8-bitowej (np. układy PIC firmy Microchip, AVR firmy Atmel), a następnie opracowaniem układów o architekturze 16-bitowej (np. MSP430 firmy Texas Instruments) oraz 32-bitowej (głównie układy oparte na różnych rdzeniach ARM).
Nowe, zaawansowane mikrokontrolery znajdują zastosowanie w wielu współcześnie projektowanych urządzeniach, jednak należy jednocześnie zwrócić uwagę na fakt niesłabnącego zainteresowania prostymi mikrokontrolerami 8-bitowymi, które niejednokrotnie korzystniej jest zastosować w aplikacjach o małym stopniu skomplikowania, gdzie małe gabaryty układu, niski pobór energii oraz niska cena są większymi atutami niż duża moc obliczeniowa. Wychodząc naprzeciw tym oczekiwaniom producenci układów półprzewodnikowych nieustannie rozwijają będące w ich ofertach rodziny 8-bitowych mikrokontrolerów. Jedną z takich firm jest Freescale, producent szerokiej gamy układów o wspólnej nazwie HCS08.
Podstawowy schemat aplikacyjny mikrokontrolerów S08QD ze złączem interfejsu BDM (do programowania Flash i debugowania pracy układu) |
Jedną z podgrup tej rodziny jest seria układów S08QD. Składa się ona z czterech mikrokontrolerów: MC9S08QD2, MC9S08QD4, S9S08QD2 oraz S9S08QD4. Pierwsze dwa układy przeznaczone są do wykorzystania w zastosowaniach przemysłowych i urządzeniach codziennego użytku, natomiast dwa kolejne układy dedykowane są do aplikacji motoryzacyjnych. Mikrokontrolery S08QD cechują się najprostszą budową spośród całej rodziny HCS08. Szczegółowy schemat blokowy struktury wewnętrznej serii S08QD przedstawiono na rys. 1.
Rys. 1. Schemat blokowy mikrokontrolerów S08QD
Podstawowym elementem każdego mikrokontrolera S08QD jest jednostka centralna, która opracowana została na bazie rdzenia HCS08. Jej częstotliwość taktowania zależy od konfiguracji bloku zegarowego i może wynosić do 8 MHz (przy zewnętrznej częstotliwości taktowania 16 MHz). Umożliwia to wykonywanie pojedynczej instrukcji kodu źródłowego w czasie minimum 125 ns. Jednostka obliczeniowa jest połączona ze wszystkimi zasobami mikrokontrolera i odpowiada za ich odpowiednią konfigurację i sterowanie zgodnie z wykonywanym kodem źródłowym. Ponadto umożliwia ona obsługę przerwań (32 źródła przerwań) oraz kontroli trybów pracy (RUN – normalna praca, WAIT – praca z wyłączoną jednostką obliczeniową, STOP – praca z wyłączoną jednostką obliczeniową oraz wybraną częścią zasobów).
Kolejnym elementarnym komponentem mikrokontrolera jest pamięć. W rodzinie S08QD zastosowano dwa podstawowe typy pamięci – Flash oraz RAM. Ilość wbudowanej pamięci zależy od układu i wynosi 2 kB lub 4 kB w przypadku pamięci Flash oraz 128 B lub 256 B w przypadku pamięci RAM.
Do zintegrowanych w serii S08QD bloków peryferyjnych należą:
- przetwornik A/C: 4 kanały pomiarowe, 10-bitowa rozdzielczość skonwertowanego sygnału, możliwość konfiguracji jako czujnik temperatury,
- układy licznikowe: 1-kanałowy o rozdzielczości 16 bitów oraz 2-kanałowy o rozdzielczości 16 bitów (oba z możliwością pracy w trybie zliczania, porównania, PWM) oraz Watchdog,
- kontroler klawiatury: obsługa do 4 przycisków, możliwość konfiguracji rodzaju zbocza i poziomu logicznego sygnału informującego o wciśnięciu przycsiku,
- linie ogólnego przeznaczenia: do 6 wyprowadzeń (każde o wydajności prądowej do 10 mA), możliwość podłączenia do każdej z linii wewnętrznych rezystorów typu pull-up,
- interfejs programowania pamięci i debugowania kodu za pomocą jednej linii mikrokontrolera.