Najlepsze pytania
Chronologia
Czat
Perspektywa

Atmel AVR

Z Wikipedii, wolnej encyklopedii

Atmel AVR
Remove ads

Atmel AVR – typ ośmiobitowych mikrokontrolerów produkowanych przez firmę Atmel.

Thumb
Przykładowe mikrokontrolery
Thumb
ATmega8 po odpryśnięciu obudowy
Thumb
Najprostszy programator
Thumb
STK500

Jednostka arytmetyczno-logiczna opracowana przez dwóch studentów z Norweskiej Wyższej Szkoły Technicznej (NTH) oparta jest na schemacie procesora RISC i zasadach zmodyfikowanej architektury harwardzkiej, zawiera 32 ośmiobitowe rejestry. Instrukcje arytmetyczno-logiczne mogą być wykonywane na rejestrach. Dane z pamięci mogą być tylko przesyłane do i z rejestrów. Charakteryzuje się ona prostą strukturą rozkazów, dużą wydajnością obliczeniową (większość rozkazów wykonywana jest w jednym takcie zegara procesora).

Listę rozkazów dopasowano do wymagań współczesnych kompilatorów, wprowadzając rozkazy pobierania danych przez adresowanie pamięci rejestrem 16-bitowym (zestaw dwóch rejestrów) z jednoczesnym zwiększeniem lub zmniejszeniem rejestru adresowego (pobierz i zwiększ/zmniejsz).

Mikrokontrolery AVR są popularne wśród hobbystów i amatorów, ze względu na łatwość programowania, a także łatwość uruchomienia. Do niektórych układów wystarczy podłączyć zasilanie, by stanowiły kompletny, programowalny system mikroprocesorowy. W połączeniu z dużymi obudowami typu DIP daje to rzadko spotykaną możliwość budowy prostszych układów mikroprocesorowych bez konieczności pracochłonnego przygotowywania płytki drukowanej.

Remove ads

Podział

Podsumowanie
Perspektywa

Układy typu AVR zostały podzielone na kilka podtypów:

  • 8-bitowe
    • tinyAVR – oznaczenie ATtiny[1]
      • 0,5-16 kB pamięci programu
      • obudowy o 6-32 wyprowadzeniach
      • ograniczony zestaw zintegrowanych peryferiów
      • obniżony pobór mocy
    • megaAVR – oznaczenie ATmega[2]
      • 4-256 kB pamięci programu
      • obudowy o 28-100 wyprowadzeniach
      • rozszerzony zestaw poleceń (m.in. o polecenia do obsługi powiększonej pamięci programu)
      • liczne zintegrowane peryferia (przetworniki AC/CA, timery, liczniki, USB itp)
      • nowsze ATMegi (posiadające czterocyfrowe oznaczenia) cechują się znacznie rozbudowanymi funkcjonalnościami (event system, układ programowalnej logiki, rozbudowane porty IO)
    • AVR XMEGA – oznaczenie ATxmega[3]
      • 8-384 kB pamięci programu
      • obudowy o 32-100 wyprowadzeniach
      • rozszerzone możliwości, takie jak obsługa DMA, system zdarzeń (Event System), logika programowalna (XCL) i sprzętowe wsparcie dla kryptografii (używane m.in. przy współpracy z kartami inteligentnymi)
    • AVR Dx
      • najnowsza rodzina 8-bitowych mikrokontrolerów AVR
      • w przeciwieństwie do poprzednich rodzin płaska przestrzeń adresowa, w której znajduje się pamięć SRAM, EEPROM i wybrana strona pamięci FLASH
      • do 128 kB pamięci programu, do 8 kB pamięci SRAM
      • obudowy do 64 pinów, w tym dostępne są obudowy PDIP
      • układ programowalnej logiki (CCL)
      • system zdarzeń podobny do systemu obecnego w XMEGA
      • przetwornik ADC (12-bitowy) i DAC (10 bitowy)
      • do 4 komparatorów analogowych oraz wzmacniaczy operacyjnych o programowalnym wzmocnieniu
      • do 3 układów detekcji przejścia przez zero
      • do 8 timerów
  • 32 bitowe (lista rozkazów architektury AVR32 jest niekompatybilna z AVR)
    • AVR UC3[4]
      • obudowy QFP, BGA od 44 do 144 i więcej wyprowadzeń
      • seria D
        • najprostsza seria, posiada moduł obsługi pojemnościowych czujników dotykowych
      • seria C
        • wyposażone w jednostkę zmiennoprzecinkową (FPU), Ethernet, CAN, LIN, USB OTG, PWM 16-kanałowy 12-bitowy przetwornik analogowo-cyfrowy (ADC), 4-kanałowy, 12-bitowy przetwornik cyfrowo-analogowy (DAC)
      • seria L
        • seria L została zaprojektowana pod kątem minimalizacji zużycia prądu
      • seria A0/A1
        • jest dedykowana rozwiązaniom potrzebującym złącz Ethernet oraz USB
      • seria A3/A4
        • zawiera moduł kryptograficzny AES o wydajności 22,8 MB/s, może być używany do współpracy z kartami chipowymi
      • seria B
        • zaprojektowana do wykorzystania dużej mocy obliczeniowej oraz złącza USB
Remove ads

Wyposażenie

Podsumowanie
Perspektywa

Poszczególne mikrokontrolery typu AVR różnią się między sobą, przede wszystkim ilością pamięci flash, RAM, liczbą portów wejść/wyjść oraz układami dodatkowymi.

Przykładowo: ATtiny13 ma 1 kB pamięci programu (flash), 64 bajty EEPROM, 64 bajty RAM + 32 rejestry, 6 linii wejść/wyjść, 2 kanały PWM, 4 kanały A/D, wewnętrzny oscylator; montowany jest w obudowie o 8 wyprowadzeniach[5].

ATmega2560 ma 256 kB pamięci programu, 4 kB EEPROMu, 8 kB RAM, 86 wejść/wyjść, 4 16-bitowe liczniki sterujące w sumie 6 wyjściami PWM, SPI, 2 układy USART, 16-kanałowy przetwornik analogowo-cyfrowy[6].

Podstawowe elementy AVR (nie wszystkie występują w każdym układzie):

  • pamięć flash - pamięć programu; programowalna w układzie, część programowana podczas pracy układu,
  • pamięć EEPROM,
  • pamięć SRAM,
  • uniwersalne porty wejścia/wyjścia,
  • 8 i 16-bitowe układy czasowo-licznikowe z możliwością generowania sygnału z modulacją szerokości impulsu PWM (w Atxmega można zwiększyć szerokość przez połączenia kaskadowe liczników, a także poszerzyć możliwości generacji sygnałów PWM poprzez wykorzystanie modułu WeX/AWeX)
  • licznik czasu rzeczywistego (RTC)
  • wielokanałowy multipleksowany 10-bitowy przetwornik analogowo-cyfrowy (w Atxmega i AVR Dx 12-bitowy o maksymalnej prędkości 2 milionów próbek na sekundę),
  • przetwornik cyfrowo-analogowy (DAC) 10-bitowy - rodziny Atxmega i AVR Dx,
  • Interfejs TWI pełniący funkcję sprzętowego kontrolera w standardzie I2C
  • interfejs szeregowy USART,
  • interfejs SPI - domyślny interfejs programowania dla Atmega,
  • układy programowalnej logiki,
  • Watchdog,
  • wewnętrzny generator RC,
  • Funkcja ISP realizowana przy użyciu wybranego interfejsu (SPI, JTAG, PDI, TPI, aWire)
  • JTAG, interfejs programowania i debugowania (rezerwuje 4 piny mikrokontrolera) obecny tylko w większych modelach Atmega/Atxmega,
  • DebugWire, umożliwia debugowanie programu dla kontrolerów z ograniczoną liczbą pinów.
  • PDI umożliwiający programowanie i debugowanie układów przy wykorzystaniu jedynie 2 linie sygnałowe (w tym sygnału RESET) - domyślny interfejs dla Atxmega
Remove ads

Zobacz też

Linki zewnętrzne

  • AVR 8-Bit RISC strona firmy Atmel o mikrokontrolerach AVR (ang.)
  • AVRFreaks najpopularniejszy portal o AVR (ang.)
  • Microchip Studio darmowe środowisko programistyczne dostarczane przez Microchip (ang.) - po przejęciu przez firmę Microchip firmy Atmel nastąpiła zmiana nazwy sztandarowego IDE z Atmel Studio na Microchip Studio
  • WinAVR darmowy kompilator GCC i zestaw narzędzi dla AVR (ang.) - projekt zarzucony, obecnie firma Atmel wydaje własny toolchain dla systemów MS Windows i GNU/Linux, który można pobrać oddzielnie lub razem z Microchip Studio.
  • mikrokontrolery.blogspot.com - popularny portal o AVR w języku polskim (pol.)
Remove ads

Przypisy

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads