Migracje pomiędzy miniaturowymi mikrokontrolerami z rodziny HCS08, część 1

Mikrokontrolery ultra low-end

Architektura RS08 jest zoptymalizowana pod małe pojemności pamięci. Jest wyposażona w tryb mikroadresownaia (tiny addressing), w którym adres instrukcji jest wbudowany w instrukcję, aby poprawić efektywność kodu. Umieszczenie najczęściej używanych w obliczeniach danych w tym zakresie pozwala tworzyć systemy lepiej zoptymalizowane, zarówno pod kątem ilości kodu, jak i szybkości jego wykonywania. Możliwość używania adresowania indeksowego pozwala z kolei używać operandów z różnych lokacji w zależności od wyników wcześniejszych instrukcji. BDC używa jednoprzewodowej komunikacji do programowania pamięci oraz debugowania kodu. Ważnym ulepszeniem interfejsu jest możliwość debugowania kodu w układzie (in-circuit debugging), przy użyciu rzeczywistego źródła sygnału zegarowego oraz peryferiów wykorzystywanych faktycznie w systemie, co pozwala uniknąć problemów spowodowanych przez debugger.
Nowe instrukcje i tryby adresowania są przeznaczone dla pamięci małej pojemności, a wyposażenie i peryferia RS08 pozwalają na efektywne i niedrogie projektowanie.
Na rysunku 2 przedstawiono schemat blokowy mikrokontrolera MC9RS08KA2. Jest to najprostszy i najubożej wyposażony (lowest end) spośród omawianych tu układów. Jest dostępny w obudowie 6-pinowej (do zastosowań o szczególnych ograniczeniach jeśli chodzi o rozmiary) oraz 8-pinowej (do zastosowań wymagających więcej linii wejścia/wyjścia).

 

 

Rys. 2. 
Schemat blokowy MC9RS08KA2

Rys. 2. Schemat blokowy MC9RS08KA2

 

 

Wypełnienie luki między mikrokontrolerami low-end oraz ultra low-end

W pół drogi pomiędzy najprostszymi MC9RS08KA2 i najbardziej złożonymi spośród układów low-end MC9S08QG8 znajduje się mikrokontroler MC9S08QD4, którego schemat blokowy jest przedstawiony na rysunku 3. Jest on wyposażony w jednoprzewodowy interfejs debuggingowy BDC, taki sam jaki ma MC9S08QG8.

 

 

Rys. 3. 
Schemat blokowy MC9S08QD4

Rys. 3. Schemat blokowy MC9S08QD4

 

 

Tab. 1. Porównanie właściwości mikrokontrolerów prezentowanych w artykule

  MC9S08QG MC9S08QD MC9RS08KA
QG4 QG8 QD4 KA1 KA2
Rdzeń S08 S08 RS08
Częstotliwość magistrali 10 MHz 8 MHz 10 MHz
Narzędzia rozwojowe DBDC = DBG BDC BDC
Napięcie zasilania 1,8 do 3,.6 V 2,7 do 5,5 V 1,8 do 5,5 V
Zewnętrzny oscylator Obudowa 8-pinowa: nie Nie Nie
Obudowa 16-pinowa: tak
RAM (bajty) 256 512 256 63 63
Flash (bajty) 4 k 8 k 4 k 1 k 2 k
Tryby pracy Run, Wait, Stop1, Stop2, Stop3 i Active BDM Run, Wait, Stop2, Stop3 i Active BDM Run, Wait, Stop3 i Active BDM
COP/LVI* Tak Tak Tak
Komparator analogowy Tak Nie Tak
Przetwornik A/C budowa 8-pinowa: 4 kanały 10-bit 4 kanały 10-bit Nie
Obudowa 16-pinowa: 8 kanały 10-bit
ICS** Tak Tak Tak
KBI*** Obudowa 8-pinowa: 1 kanał 8-pinowa: 4 kanały Obudowa 6-pinowa: 3 kanały
Obudowa 16-pinowa: 8 kanałów Obudowa 8-pinowa: 5 kanałów
Timer modulo Tak Nie Tak
Interfejs SCI Tak Nie Nie
Interfejs SPI Tak Nie Nie
IIC Tak Nie Nie
TPM1**** Obudowa 8-pinowa: 1 kanał 16-bit 2 kanały 16-bit Nie
TPM2**** Nie 1 kanał 16-bit Nie
Obudowy 8-pinowe: DIP, SOIC, DFN 8-pinowe: DIP, SOIC 6-pinowa: DFN
16-pinowe: DIP, TSSOP, QFN 8-pinowe: DIP, SOIC

* COP/LVI – Sprawdzanie poprawności pracy układu (Computer Operating Properly/Low Voltage Indicator)
**  KBI –  Moduł przerwań klawiatury (Keyboard Interrupt)
*** ICS – wewnętrzne źródło zegara (Internal Clock Source)
**** TPM –  Moduł Timera/PWM (Timer/PWM Module)

 

Porównanie mikrokontrolerów

W tabeli 1 zestawiono podstawowe właściwości trzech omawianych mikrokontrolerów. Będąc świadomym różnic między układami przed rozpoczęciem prac i przyjmując, że w trakcie procesu projektowego możliwa jest zmiana wykorzystywanego mikrokontrolera, można zaprojektować część sprzętową oraz programową tak, by były przenośne. Szczegóły dotyczące peryferiów i wyposażenia układów zostaną omówione w dalszej części rozdziału.

 

Kolejna część artykułu jest dostępna tu.

 

Na podstawie AN3325 firmy Freescale (autorstwa Ingi Harris) opracował Dominik Maj.

O autorze