Typy mikrokontroléru AVR - Atmega32 a ATmega8

Vyzkoušejte Náš Nástroj Pro Odstranění Problémů





ATmega32 - 8bitový mikrokontrolér AVR

Mikrokontroléry AVR jsou založeny na pokročilé architektuře RISC. ATmega32 je 8bitový mikrokontrolér CMOS s nízkým výkonem založený na architektuře RISC rozšířené o AVR. AVR může provádět 1 milion instrukcí za sekundu, pokud je frekvence cyklu 1MHz.

40 pin DIP Fotografie ATmega32

40 pin DIP Fotografie ATmega32



Klíčové vlastnosti:


  • 32 x 8 obecných registrů pro pracovní účely.
  • 32 kB v systémové programovatelné paměti flash programu
  • 2 kB bytů interního SRAM
  • 1024 bajtů EEPROM
  • K dispozici v 40pólovém DIP, 44vodičovém QTFP, 44pólovém QFN / MLF
  • 32 programovatelných I / O linek
  • 8 kanálů, 10 bitů ADC
  • Dva 8bitové časovače / čítače se samostatnými přednastavovači a režimy porovnání
  • Jeden 16bitový časovač / čítač se samostatným předvoličem, režim porovnání a režim snímání.
  • 4 kanály PWM
  • V programování systému pomocí zaváděcího programu na čipu
  • Programovatelný časovač hlídacího psa se samostatným oscilátorem na čipu.
  • Programovatelné sériové USART
  • Master / slave sériové rozhraní SPI

Speciální funkce mikrokontroléru:

  • Šest režimů spánku: nečinnost, redukce šumu ADC, úspora energie, vypnutí, pohotovostní režim a rozšířený pohotovostní režim.
  • Interní kalibrovaný RC oscilátor
  • Externí a interní zdroje přerušení
  • Reset po zapnutí a programovatelná detekce zhasnutí.
40kolíkový DIP ATmega32

40kolíkový DIP ATmega32



Všech 32 registrů je přímo připojeno k aritmetické logické jednotce (ALU), což umožňuje přístup ke dvěma nezávislým registrům v jedné instrukci provedené v jednom hodinovém cyklu.

Vypnutí uloží obsah registru, ale zmrazí oscilátor. Všechny ostatní funkce čipu budou deaktivovány, dokud nenastane další externí přerušení. Asynchronní časovač umožňuje uživateli udržovat časovač založený v úsporném režimu, zatímco zbytek zařízení spí.

Režim redukce šumu ADC zastaví procesor a všechny I / O moduly kromě ADC a asynchronního časovače. V pohotovostním režimu kromě krystalového oscilátoru zbytek zařízení spí. Jak hlavní oscilátor, tak asynchronní časovač běží v rozšířeném pohotovostním režimu.

ATmega32 je výkonný mikrokontrolér, protože je v systému sám programovatelný blesk na monolitickém čipu a poskytuje vysoce flexibilní a nákladově efektivní řešení mnoha vestavěných řídicích aplikací.


44-pad TQFP / MLF

44-pad TQFP / MLF

Popis pinů:

VCC: Digitální napájecí napětí

GND: Přízemní

Port A (PA7-PA0): Tento port slouží jako analogové vstupy do A / D převodníku. Slouží také jako 8bitový obousměrný I / O port, pokud není použit A / D převodník.

Port B (PB7-PB0) a port D (PD7-PD0): Jedná se o 8bitový obousměrný I / O port. Jeho výstupní vyrovnávací paměti mají symetrické charakteristiky pohonu s vysokou schopností potopení i zdroje. Jako vstupy jsou tyto extrémně nízké, pokud jsou aktivovány pull-up rezistory. Poskytuje také různé speciální funkce ATmega32.

Port C (PC7-PC0): Jedná se o 8bitový obousměrný I / O port. Pokud je rozhraní JTAG povoleno, aktivují se pull-up rezistory na pinech PC5 (TDI), PC3 (TMS) a PC2 (TCK).

Propojení JTAG pomocí portu C ATmega32

Propojení JTAG pomocí portu C ATmega32

Reset: Je to vstup.

XTAL1: Jedná se o vstup do zesilovače invertujícího oscilátoru a vstup do vnitřního provozního obvodu hodin.

XTAL2: Jedná se o výstup ze zesilovače invertujícího oscilátoru.

AVCC: Jedná se o kolík napájecího napětí pro port A a A / D převodník. Mělo by být připojeno k VCC.

REFERENCE: AREF je analogový referenční pin pro A / D převodník.

Paměti ATmega32:

Má dvě hlavní paměťové prostory, datovou paměť a programový paměťový prostor. Kromě toho obsahuje paměť EEPROM pro ukládání dat.

V systémové programovatelné paměti programu Flash:

ATmega32 obsahuje 32 kB na čipu v systémově přeprogramovatelné flash paměti pro ukládání programů. Flash je organizován jako 16k X 16 a jeho paměť je rozdělena do dvou částí Bootovací sekce a aplikační programová část.

Schéma zapojení programátoru ISP

Obvodové schéma programátora ISP

Datová paměť SRAM:

Soubor registru, I / O paměť a interní datová SRAM jsou adresovány spodními 2144 umístěními datové paměti. Prvních 96 míst adresuje soubor Register a I / O paměť a interní data SRAM jsou adresována dalšími 2048 místy. Přímé, nepřímé s posunem, nepřímé, nepřímé s předběžným snížením a přímé s následným snížením jsou 5 různých režimů adresování pro krytí datové paměti. Pomocí těchto režimů adresování je přístupných 32 univerzálních registrů, 64 I / O registrů a 2048 bajtů interních dat SRAM.

Blokové schéma ATmega32

Blokové schéma ATmega32

Datová paměť EEPROM:

Obsahuje 1024 bajtů datové paměti EEPROM. Lze k němu přistupovat jako k samostatnému datovému prostoru, ve kterém lze číst a zapisovat jednotlivé bajty.

I / O paměť:

Všechny I / O a periferní zařízení jsou umístěny v I / O prostoru. Umístění I / O jsou přístupné podle instrukcí IN a OUT a přenášejí data mezi 32 univerzálními registry a I / O prostorem. I / O registry s adresou 00-1F jsou přímo bitově přístupné pomocí instrukcí SBI a CBI.

ATmega8

Úvod

Jedná se o 8bitový mikrokontrolér CMOS z rodiny AVR (vyvinutý společností Atmel Corporation v roce 1996) a je postaven na architektuře RSIC (Reduced Instruction Set Computer). Jeho základní výhodou je, že neobsahuje žádný akumulátor a výsledek jakékoli operace lze uložit do libovolného registru definovaného instrukcí.

Architektura

Architektura

Architektura

Paměť

Skládá se z 8 kB flash paměti, 1 kB SRAM a 512 bajtů EEPROM. 8K blesk je rozdělen na 2 části - spodní část používaná jako spouštěcí flash část a horní část používaná jako aplikační flash část. SRAM obsahuje 1 kB bajtů spolu s 1120 bajty registrů pro všeobecné účely a I / O registrů. Dolní 32 umístění adres se používá pro 32 8bitových registrů pro všeobecné použití. Dalších 64 adres se používá pro I / O registry. Všechny registry jsou připojeny přímo k ALU. EEPROM se používá k ukládání dat definovaných uživatelem.

Vstupní / výstupní porty

Skládá se z 23 I / O linek se 3 I / O porty, pojmenovanými B, C a D. Port B se skládá z 8 I / O linek, Port C se skládá ze 7 I / O linek a Port D se skládá z 8 I / O řádky.

Registry odpovídající libovolnému portX (B, C nebo D) jsou:

DDRX : Registr datového směru portu X.

PORTX : Datový registr Port X.

PINX : Vstupní registr Port X.

Časovače a počitadla

Skládá se ze 3 časovačů se srovnatelnými režimy. Dva z nich jsou 8bitové, zatímco třetí je 16bitové.

Oscilátory

Obsahuje vnitřní reset a oscilátor, což umožňuje eliminovat potřebu jakéhokoli externího vstupu. Interní RC oscilátor je schopen generovat vnitřní hodiny, které mohou běžet na libovolné frekvenci 1MHz, 2MHz, 4MHz nebo 8MHz, jak je naprogramováno. Podporuje také externí oscilátor s maximální frekvencí 16MHz.

Sdělení

Poskytuje jak synchronní, tak asynchronní schémata přenosu dat prostřednictvím USART (Universal Synchronous and Asynchronous Receiver Transmitter), tj. Komunikaci s modemy a dalšími sériovými zařízeními. Podporuje také SPI (Serial Peripheral Interface) používané pro komunikaci mezi zařízeními na základě metody master-slave. Dalším podporovaným typem komunikace je TWI (dvoudrátové rozhraní). Umožňuje komutaci mezi libovolnými dvěma zařízeními pomocí 2 vodičů spolu se společným uzemněním.

Má také modul komparátoru integrovaný v čipu, který poskytuje srovnání mezi dvěma napětími připojenými ke dvěma vstupům analogového komparátoru prostřednictvím externích čipů.

Obsahuje také 6kanálový ADC, z nichž 4 mají 10bitovou přesnost a 2 mají 8bitovou přesnost.

Stavový registr : Obsahuje informace o aktuálně prováděné sadě aritmetických instrukcí.

Schéma pinů ATmega :

Schéma pinů ATmega

Schéma pinů ATmega

Jednou z důležitých vlastností ATmega8 je, že kromě 5 pinů, všechny ostatní piny podporují dva signály.

  • Kolíky 23,24,25,26,27,28 a 1 se používají pro port C, zatímco kolíky 9,10,14,15,16,17,18,19 se používají pro port B a kolíky 2,3,4, 5,6,11,12 se používá pro port D.
  • Pin 1 je také resetovacím kolíkem a použití signálu nízké úrovně po dobu delší, než je minimální délka pulzu, vygeneruje reset.
  • Piny 2 a 3 se také používají pro sériovou komunikaci pro USART.
  • Kolíky 4 a 5 se používají jako externí přerušení. Jeden z nich se aktivuje, když je nastaven bit příznaku přerušení stavového registru, a druhý se spustí, dokud bude existovat podmínka přerušení.
  • Kolíky 9 a 10 se používají jako externí oscilátor i oscilátory s časovým čítačem, kde je krystal připojen přímo mezi kolíky. Pin 10 se používá pro krystalový oscilátor nebo nízkofrekvenční krystalový oscilátor. Pokud je jako zdroj hodin použit interní kalibrovaný RC oscilátor a je povolen asynchronní časovač, lze tyto piny použít jako piny časovače oscilátoru.
  • Pin 19 se používá jako výstup hlavních hodin, vedlejší hodiny pro kanál SPI.
  • Pin 18 se používá jako vstup hlavních hodin, výstup vedlejších hodin.
  • Pin 17 se používá jako výstup hlavních dat, vstup vedlejších dat pro kanál SPI. Používá se jako vstup, když je povolen podřízeným zařízením, a je obousměrný, pokud je povolen nadřízeným. Tento pin lze také použít jako výstup pro porovnání shody výstupu, který slouží jako externí výstup pro porovnání shody časovače / čítače.
  • Pin16 se používá jako podřízený vstup. Může být také použit jako srovnávací shoda časovače / čítače1 konfigurací pinu PB2 jako výstupu.
  • Pin15 lze použít jako externí výstup pro porovnávání shody časovače / čítače A.
  • Kolíky 23 až 28 se používají pro kanály ADC. Pin 27 lze také použít jako hodiny sériového rozhraní a pin 28 lze použít jako data sériového rozhraní
  • Kolíky 13 a 12 se používají jako vstupy analogového komparátoru.
  • Kolíky 11 a 6 se používají jako zdroje časovače / čítače.

Režimy spánku mikrokontroléru

Mikrokontrolér pracuje v 6 režimech spánku.

  • Klidový režim: Zastavuje fungování CPU, ale umožňuje provoz SPI, USART, ADC, TWI, Timer / Counter a Watchdog a přeruší systém. Toho je dosaženo nastavením SM0 na SM2 bitů příznaku registru MCU na nulu.
  • Režim redukce šumu ADC : Zastaví CPU, ale umožní fungování ADC, externích přerušení, časovače / čítače2 a hlídacího psa.
  • Režim vypnutí : Umožňuje externí přerušení, 2vodičové sériové rozhraní, hlídací pes při deaktivaci externího oscilátoru. Zastaví všechny generované hodiny.
  • Režim úspory energie : Používá se, když je časovač / čítač taktován asynchronně. Zastaví všechny hodiny kromě CLKASY.
  • Pohotovostní režim : V tomto režimu je povolen provoz oscilátoru, který zastaví všechny ostatní operace.

Aplikace zahrnující Atmega8

Blikající LED

Aplikace zahrnující Atmega8

Blikající schéma LEd

Program je psán v jazyce C a je nejprve zkompilován jako soubor .c. Softwarový nástroj ATMEL převede tento soubor na binární soubor objektů ELF. Poté se znovu převede na hexadecimální soubor. Hex soubor je poté předán mikrokontroléru pomocí programu AVR frajera.

Fotografický kredit: