8-bitowe mikrokontrolery firmy Atmel

8-bitowe mikrokontrolery firmy Atmel
Pobierz PDF Download icon

Atmel jest firmą powszechnie kojarzoną z rdzeniem AVR, zarówno 8- jak i 32-bitowym. Dodatkowo producent systematycznie rozwija swoją ofertę produktów bazujących na rdzeniach ARM, tj.: Cortex-M0+/M3/M4/A5, cały czas zachowując układy z rdzeniami ARM7 oraz ARM9. W artykule przedstawiono wybrane propozycje układów 8-bitowych, a szczególnie najnowsze funkcje mikrokontrolerów AVR Xmega, które świetnie się sprawdzają w wielu aplikacjach.

Rysunek 1. Układy z rodziny Atmel AVR Xmega

Mikrokontrolery firmy Atmel, których konstrukcja bazuje na 8-bitowych rdzeniach AVR podzielone zostały na trzy rodziny:

  • TinyAVR z pamięcią Flash o pojemności od 0,5 do 16 kB, w obudowach od 6-32 pinów
  • MegaAVR z pamięcią Flash o pojemności od 4 do 256 kB, w obudowach od 28-100 pinów
  • AVR Xmega z pamięcią Flash o pojemności od 8 do 384 kB, w obudowach od 32-100 pinów.

Na rodzinę tinyAVR składają się mikrokontrolery ATtiny, które znajdują zastosowanie w aplikacjach w których jest potrzebny niewielki, energooszczędny mikrokontroler, realizujący stosunkowo proste zadania.

W aplikacjach nieco bardziej skomplikowanych stosowane są układy ATmega z rodziny megaAVR. W przypadku, gdy wymagana jest większa wydajność coraz większe uznanie w oczach klientów znajdują układy ATxmega z rodziny AVR Xmega. Ich wybór pokazano na rysunku 1.

Układy ATxmega zostały wyposażone w funkcje niewystępujące w innych rozwiązaniach 8-bitowych. Znacząco zwiększają one możliwości 8-bitowych mikrokontrolerów.

System zdarzeń

Tabela 1. Obciążenie procesora w trakcie komunikacji przez UART lub SPI, z użyciem i bez użycia DMA

Jedną z cech mikrokontrolerów ATxmega jest system zdarzeń (Event System, rysunek 2), który umożliwia współdziałanie peryferiów bez udziału CPU z gwarantowanym czasem reakcji.

Funkcja ta znajduje zastosowanie w aplikacjach, gdzie kluczowe jest zapewnienie reakcji układu w czasie nie dłuższym niż określony. Dodatkowo, w aplikacjach zasilanych bateryjnie, skorzystanie z systemu zdarzeń może znacząco wpłynąć na sumaryczne zużycie energii.

Kontroler DMA

Rysunek 2. Schemat blokowy działania systemu zdarzeń

Kontroler DMA (Direct Memory Access) umożliwia szybki transfer danych pomiędzy peryferiami i pamięcią, bez obciążania CPU. Rezultat zastosowania DMA przedstawiono na rysunku 3 oraz umieszczono w tabeli 1.

Podukład kryptograficzny

Wybrane układy ATxmega zawierają moduł kryptograficzny, obsługujący 64-bitowy algorytm szyfrowania DES oraz 128-bitowy AES. Coraz większa popularność algorytmów szyfrowania transmisji danych sprawia, że często obecność modułu AES jest jednym z podstawowych wymagań w nowoczesnych aplikacjach. Podukład ten nosi nazwę Crypto Engine, a jego działanie zostało zilustrowane na rysunku 4.

Kontroler przerwań

Rysunek 3. Korzyści płynące z zastosowania DMA

Wielopoziomowy kontroler przerwań (Multi-level Interrupt Controller) umożliwia nadawanie przerwaniom jednego z trzech dostępnych priorytetów. Przerwania o wyższym priorytecie realizowane są przed tymi o niższym. Mechanizm ten daje programiście wiele możliwości realizacji różnego rodzaju scenariuszy działania układu. Wprowadzenie wielopoziomowego kontrolera przerwań jest przykładem reakcji producenta na potrzeby klientów, którym brak możliwości nadawania priorytetów przerwań utrudniał dotąd pracę z układami z rodziny ATmega. Działanie kontrolera pokazano na rysunku 5.

Łatwa obsługa USB

Powszechność USB sprawia, że nawet w najmniejszych aplikacjach interfejs ten staje się konieczny. Z wykorzystaniem tego portu można zrealizować funkcję bootloadera lub też prowadzić standardową komunikację. Dodatkowo programista skorzystać może z bezpłatnego stosu USB, dostępnego w ramach oprogramowania Atmel Studio. Do dyspozycji są między innymi klasy: CDC, HID Mouse, HID Keyboard czy Mass Storage. Dzięki temu oprogramowanie interfejsu przebiega sprawnie i zajmuje niewiele czasu.

Mechanizm picoPower drugiej generacji

Rysunek 4. Działanie podukładu kryptograficznego

Atmel od wielu lat pracuje nad obniżeniem poboru energii. W rodzinie ATmega układy z funkcją picoPower oznaczono dodając do symbolu literę P, np. Atmega168PA. W rodzinie ATxmega zastosowano drugą generację tego mechanizmu. Jedna z ciekawszych cech tej technologii nosi nazwę "True 1.8V operation" co oznacza, że układ może bezpiecznie pracować przy bardzo niskich napięciach zasilania, nawet 1,8 V ±10%. W praktyce dotyczy to sytuacji nawet bardzo dużego rozładowania baterii. Dostępnych jest pięć stanów uśpienia mikrokontrolera, z których trzy pokazano na rysunku 6.

W efekcie mikrokontrolery ATxmega z funkcją picoPower drugiej generacji wymagają jedynie 100 nA prądu w trybie Power Down dla podtrzymania pamięci RAM, 550 nA w trybie Power Save, dla podtrzymania pracy układu zegara czasu rzeczywistego oraz są w stanie wybudzić się w 5 µs ze stanu uśpienia.

Zaawansowany system zegarowy

Rysunek 5. Obsługa wielu poziomów przerwań

Rodzina AVR XMEGA ma bardzo rozbudowany system możliwych źródeł taktowania mikrokontrolera. Dostępne są:

  • wewnętrzne oscylatory RC 32- i 2-megahercowe (±1%), z możliwością kalibracji z zewnętrznego zegara 32,768 kHz,
  • wewnętrzny oscylator 32,768 kHz (±1%),
  • wewnętrzny oscylator 32 kHz ULP (Ultra Low Power),
  • zewnętrzny oscylator o częstotliwości z zakresu od 0,4 MHz do 16 MHz,
  • zewnętrzny oscylator 32,768 kHz.

Oprócz tego programista ma do dyspozycji wewnętrzną pętlę PLL (wejście: 400 kHz - 32 MHz, wyjście: 10 MHz - 128 MHz) i wbudowany preskaler (2 - 2048 razy).

Pozostałe peryferia

Oprócz wyżej wymienionych układy z rodziny ATxmega mają standardowe interfejsy zarówno komunikacyjne (UART, SPI, EBI, TWI), jak i analogowe (ADC, DAC, komparatory). Do tego wybrane podrodziny zostały wyposażone m.in. w kontrolery LCD, do 160 segmentów, programowane obwody logiczne (XCL - XMEGA Custom Logic), rozbudowane timery i RTC z podtrzymaniem bateryjnym. Każda ATxmega ma też unikalny numer indentyfikacyjny.

Wsparcie środowiska

Rysunek 6. Trzy z trybów pracy mikrokontrolerów ATxmega

Wszystkie 8-bitowe układy AVR są wspierane przez Atmel Studio. Pakiet ten można bezpłatnie pobrać ze strony producenta i używać beż żadnych ograniczeń, zarówno pod względem rozmiaru kodu, jak i czasu działania. Wraz z Atmel Studio dostępny jest moduł ASF (Atmel Software Framework), zawierający kilka tysięcy przykładowych programów począwszy od mrugania diodą, po rozbudowane aplikacje typu RTOS z funkcjami takimi, jak stos IP. W module tym dostępne są bloki pozwalające obsługiwać peryferia za pomocą prostego API. Ponadto Atmel oferuje szereg programatorów, debuggerów, zestawów ewaluacyjnych i różnego rodzaju narzędzi.

Podsumowanie

Oferta Atmela w zakresie 8-bitowych mikrokontrolerów jest systematycznie rozwijana. W najbliższym czasie zostanie ona rozbudowana o nowe układy ATtiny, a wybrane pozycje z grupy ATmega zostaną zmigrowane do nowszych technologii, przez co znacząco spadnie ich cena.

Mariusz Rudnicki
Inżynier Działu Wsparcia Technicznego

Artykuł ukazał się w
Elektronika Praktyczna
październik 2014
DO POBRANIA
Pobierz PDF Download icon
Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik grudzień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio listopad - grudzień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje listopad - grudzień 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna grudzień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich grudzień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów