Srovnání mikrokontrolerů

Post on 12-Jan-2016

52 views 0 download

description

Srovnání mikrokontrolerů. Michal Pták. Srovnávané typy. PIC12F675 R (Microchip) PIC17C42 R (Microchip) M68HC11 (Motorola) M68HC12 (Motorola) AT89LS8252 (Atmel) ST6200C R R - RISC. Srovnávané vlastnosti. druh a velikost paměti I/O možnosti přerušovací mechanismy - PowerPoint PPT Presentation

transcript

Srovnání mikrokontrolerů

Michal Pták

Srovnávané typy

• PIC12F675R (Microchip)

• PIC17C42R (Microchip)

• M68HC11 (Motorola)

• M68HC12 (Motorola)

• AT89LS8252 (Atmel)

• ST6200CR

R - RISC

Srovnávané vlastnosti

• druh a velikost paměti

• I/O možnosti

• přerušovací mechanismy

• bezpečnostní mechanismy

• provozní podmínky

• další výbava (ADC,…)

Druhy pamětí

• ROM - obsah „zadrátován“ už při výrobě

• EPROM - uložení programu, případně statických dat, zapisovatelná pouze ve fázi programování za použití vyššího napětí, mazatelná ultrafialovým zářením

• EEPROM - mazatelná elektronicky, tedy použitelná i pro zápis

• FLASH - jako EEPROM, přepisování však probíhá po blocích, a tedy rychleji

• RAM - závislá na napětí

Opakované programování

• opakovatelně programovatelné

• jednou programovatelné (OTP)

• naplněné (dodaným kódem) již od výrobce

S ohledem na flexibilitu či naopak minimální cenu při výrobě ve velkém se rozlišují následující varianty programových pamětí:

I/O možnosti

• Mikrokontrolery mají různý počet obecně použitelných I/O pinů. Skupina n pinů tvoří n-bitový port. Vyspělejší typy mívají portů několik.

• Pokud některý takový pin plní jinou funkci (vstup/výstup hodinového signálu, externí RESET,…), přestává být I/O pinem.

Obsluha přerušení

• Přerušení lze rozdělit do několika skupin dle původu. Obvykle je lze různě konfigurovat (povolit/zakázat, priority).

• Čím méně přerušení sdílí jeden vektor (adresu obslužné rutiny), tím rychleji na ně lze zareagovat.

Obsluha přerušení

• Zatímco CPU je v úsporném módu („spí“), jeho periférie mohou pracovat. Když skončí (ADC dokončí převod, sériové rozhraní přijme byte,…), mohou procesor probudit, aby zpracoval výsledek jejich činnosti.

Přerušovací mechanismy

Zdroje přerušení - externí, přetečení timerů, změna na vstupu, periférie (dokončení činnosti,…)

Každé přerušení má bit, kterým se povoluje, a bit signalizující požadavek na přerušení - na konci obslužné rutiny se vynuluje.

Mapování přerušení na vektory lze u pokročilých procesorů customizovat, včetně nastavování priorit.

Bezpečnostní mechanismy

• Watchdog - V každém taktu se inkrementuje jeho čítač. Při jeho přetečení se provede RESET. Je proto potřeba „čas od času“ čítač watchdogu vynulovat. To brání uváznutí programu při SW chybě.

• Prescaler - Pomocí něj lze zajistit, že se watchdog inkrementuje jen jednou za x taktů.

Bezpečnostní mechanismy

• Low Voltage Detector - Při poklesu napětí může resetovat procesor.

• Oscillator Safeguard - Filtruje výkyvy na oscilátoru. Může plnit i další funkce, např. poskytovat záložní hodinový signál LFAO (Low Frequency Auxiliary Oscillator).

• Code Protection - Ochrana kódu, případně dat, proti čtení.

Bezpečnostní mechanismy

• Illegal Opcode Detection - Obvod může vyvolat nemaskovatelné přerušení při nepovolené instrukci.

Úsporné režimy

• WAIT (Idle) - Procesor se zastaví, ale hodiny běží dál. Probudit procesor může přerušení nebo reset.

• STOP (Power Down) - Zastaví se i hodiny. Běžet dál (a vzbudit procesor přerušením) mohou pouze periférie s jiným zdrojem hodinového signálu.

Další výbava• AD převodník - Změří napětí na vstupu,

výsledek uloží do registru.

• Analogový komparátor - Srovnává hodnotu vstupního a referenčního napětí.

• Některé piny mohou sloužit přímo pro ovládání LED, k němuž je třeba vyšších proudů (20 mA).

Další výbava

• Sériové rozhraní - Synchronní nebo asynchronní komunikace, různá rychlost (baud rate), přístup přes registry - není nutné „ručně tahat za jednotlivé dráty“.

Srovnávání

Paměť

data (RAM)PIC12F675 64 1024 (14, F) 128 (EE)PIC17C42 232 2k (16, E)M68HC11A8 256 8k (R) 512 (EE)M68HC12A4 1k 4k (EE)AT89LS8252 256 8k (F) 2k (EE)ST6200C 64 1k (E)

ROM, EPROM, EEPROM, FLASH

program & další

Zařízení mohou být vybavena další externí pamětí.

I/O možnostiI/O piny Porty (# pinů)

PIC12F675 6 6PIC17C42 33 6, 8, 8, 8, 3M68HC11A8 40 8, 9, 9, 6, 8M68HC12A4 40 8, 8, 8, 8, 8AT89LS8252 32 8, 8, 8, 8ST6200C 9 3, 6

Některé piny mohou mít směr (In/Out) pevně nastavený, u ostatních se řídí nastavováním „směrového“ registru. Lze nastavovat další chování pinů (interrupt-on-change,…).

Přerušovací mechanismyzdroje vektory priority

PIC12F675 7 1PIC17C42 11 4M68HC11A8 18 18 xM68HC12A4 22 22 xAT89LS8252 9 6 xST6200C 5 5

Někde se do kategorie interruptů zahrnují také různé druhy resetů. Zde nikoliv.

Ve sloupci priority jsou označena zařízení umožňující alespoň částečně nastavovat priority různým zdrojům přerušení.

Bezpečnostní mechanismyWD LVD OSG CP IOD

PIC12F675 x x xPIC17C42 x x xM68HC11A8 x x x xM68HC12A4 x x x xAT89LS8252 x xST6200C x x x x

Watchdog, Low Voltage Detector (alias Brown-out Detect), Oscillator Safeguard (alias Clock Monitor), Code Protection,

Illegal Opcode Detection

Provozní podmínky

napětí [V] fmax [MHz] tmin [ns] teplota [oC]

PIC12F675 W 2.0 - 5.5 20 200 -40 - +85PIC17C42 W 2.5 - 6.0 33 121 -40 - +85M68HC11A8 W, S 3.0 - 5.0 12 333 -40 - +125M68HC12A4 W, S 4.5 - 5.5 16 125 -40 - +125AT89LS8252 W, S 2.7 - 6.0 12 1000 -55 - +125ST6200C W, S 3.0 - 6.0 8 1625 -40 - +125

provozúsporné režimy

• úsporné režimy - WAIT a STOP

• udána maximalní frekvence hodinového signálu a minimální délka taktu, lze odvodit, z kolika tiků se skládá jeden takt

Další výbava

rozlišení [bity] kanályPIC12F675 10 4 x - xPIC17C42 - - - USART -M68HC11A8 8 8 - SCI, SPI -M68HC12A4 8 8 - SCI0, SCI1, SPI -AT89LS8252 - - - SCI, SPI xST6200C 8 4 - - -

ICSPAD převodník

komparátor sériová rozhraní

Označení - USART (synchronně asynchronní), SCI (asynchronní), SPI (synchronní)

ICSP - In-Circuit Serial Programming

Konec