Typy mikrokontrolérov AVR - Atmega32 a ATmega8

Typy mikrokontrolérov AVR - Atmega32 a ATmega8

ATmega32 - 8 bitový mikrokontrolér AVR

Mikrokontroléry AVR sú založené na pokročilej architektúre RISC. ATmega32 je 8-bitový mikrokontrolér CMOS s nízkym výkonom založený na architektúre RISC s vylepšeným AVR. AVR môže vykonať 1 milión pokynov za sekundu, ak je frekvencia cyklu 1 MHz.

40 pin DIP Fotografia ATmega32

40 pin DIP Fotografia ATmega32

Kľúčové vlastnosti:




  • 32 x 8 všeobecných registrov na pracovné účely.
  • 32 kB v systémovej programovateľnej pamäti programu Flash
  • 2 kB interného disku SRAM
  • 1024 bajtov EEPROM
  • K dispozícii v 40pólovom DIP, 44vodičovom QTFP, 44polohovom QFN / MLF
  • 32 programovateľných I / O liniek
  • 8 kanálový, 10 bitový ADC
  • Dva 8-bitové časovače / počítadlá so samostatnými prednastavovačmi a režimami porovnávania
  • Jeden 16-bitový časovač / počítadlo so samostatným prednastavením, režim porovnania a režim snímania.
  • 4 kanály PWM
  • V programovaní systému bootovacím programom na čipe
  • Programovateľný časovač strážneho psa so samostatným oscilátorom na čipe.
  • Programovateľné sériové USART
  • Sériové rozhranie Master / Slave SPI

Špeciálne vlastnosti mikrokontroléra:

  • Šesť režimov spánku: nečinnosť, redukcia šumu ADC, úspora energie, vypnutie, pohotovostný režim a predĺžený pohotovostný režim.
  • Interný kalibrovaný RC oscilátor
  • Vonkajšie a vnútorné zdroje prerušenia
  • Reset po zapnutí a programovateľná detekcia výpadku napájania.
40-kolíkový DIP ATmega32

40-kolíkový DIP ATmega32

Všetkých 32 registrov je priamo pripojených k aritmetickej logickej jednotke (ALU), čo umožňuje prístup k dvom nezávislým registrom v jednej inštrukcii vykonanej v jednom hodinovom cykle.

Vypnutie uloží obsah registra, ale zmrazí oscilátor. Všetky ďalšie funkcie čipu budú deaktivované, až kým nenastane ďalšie externé prerušenie. Asynchrónny časovač umožňuje používateľovi udržiavať časovač založený v režime úspory energie, zatiaľ čo zvyšok zariadenia spí.

Režim redukcie šumu ADC zastaví procesor a všetky I / O moduly okrem ADC a asynchrónneho časovača. V pohotovostnom režime okrem kryštálového oscilátora zvyšok zariadenia spí. Hlavný oscilátor aj asynchrónny časovač naďalej fungujú v rozšírenom pohotovostnom režime.

ATmega32 je výkonný mikrokontrolér, ktorý je vďaka svojmu programovateľnému blesku v systéme na monolitickom čipe vysoko flexibilným a nákladovo efektívnym riešením pre mnoho vstavaných riadiacich aplikácií.


44-pad TQFP / MLF

44-pad TQFP / MLF

Popisy pinov:

VCC: Digitálne napájanie

GND: Uzemnenie

Port A (PA7-PA0): Tento port slúži ako analógové vstupy pre A / D prevodník. Slúži tiež ako 8-bitový obojsmerný I / O port, ak sa nepoužije A / D prevodník.

Port B (PB7-PB0) a port D (PD7-PD0): Je to 8-bitový obojsmerný I / O port. Jeho výstupné medzipamäte majú symetrické charakteristiky pohonu s možnosťou vysokého odberu aj zdroja. Ako vstupy sú tieto extrémne stiahnuté, ak sú aktivované pull-up rezistory. Slúži tiež na rôzne špeciálne funkcie ATmega32.

Port C (PC7-PC0): Je to 8-bitový obojsmerný I / O port. Ak je rozhranie JTAG povolené, aktivujú sa pull-up rezistory na pinoch PC5 (TDI), PC3 (TMS) a PC2 (TCK).

Prepojenie JTAG pomocou portu C ATmega32

Prepojenie JTAG pomocou portu C ATmega32

Resetovať: Je to vstup.

XTAL1: Je to vstup do zosilňovača invertujúceho oscilátora a vstup do vnútorného prevádzkového obvodu hodín.

XTAL2: Je to výstup zo zosilňovača invertujúceho oscilátora.

AVCC: Je to pin napájacieho napätia pre port A a A / D prevodník. Mal by byť pripojený k VCC.

AREF: AREF je analógový referenčný pin pre A / D prevodník.

Pamäte ATmega32:

Má dva hlavné pamäťové priestory, dátovú pamäť a pamäť programu. Okrem toho obsahuje pamäť EEPROM na ukladanie údajov.

V systémovo programovateľnej programovej pamäti Flash:

ATmega32 obsahuje 32 kB na procesore v systémovo preprogramovateľnej flash pamäti na ukladanie programov. Flash je usporiadaný do formátu 16k X 16 a jeho pamäť je rozdelená na dve sekcie, sekcia Bootovací program a aplikačný program.

Schéma zapojenia programátora ISP

Schéma zapojenia programátora ISP

Dátová pamäť SRAM:

Registrový súbor, I / O pamäť a interné dátové SRAM sú adresované spodnými 2144 umiestneniami dátovej pamäte. Prvých 96 umiestnení adresuje súbor Register a I / O pamäť a interné dáta SRAM sú adresované ďalšími 2048 umiestneniami. Priame, nepriame s posunom, nepriame, nepriame s predbežným znížením a priame s následným znížením sú 5 rôznych režimov adresovania pre krytie dátovej pamäte. Pomocou týchto režimov adresovania je prístupných 32 všeobecných registrov, 64 I / O registrov a 2 048 bajtov interných dát SRAM.

Bloková schéma ATmega32

Bloková schéma ATmega32

Dátová pamäť EEPROM:

Obsahuje 1024 bajtov dátovej pamäte EEPROM. Je k nemu možné pristupovať ako k samostatnému údajovému priestoru, v ktorom je možné čítať a zapisovať jednotlivé bajty.

I / O pamäť:

Všetky I / O a periférie sú umiestnené v I / O priestore. K I / O umiestneniam sú prístupné inštrukcie IN a OUT, ktoré prenášajú údaje medzi 32 univerzálnymi registrami a I / O priestorom. I / O registre s adresou 00-1F sú priamo bitovo prístupné pomocou pokynov SBI a CBI.

ATmega8

Úvod

Jedná sa o 8-bitový CMOS zabudovaný mikrokontrolér z rodiny AVR (vyvinutý spoločnosťou Atmel Corporation v roku 1996) a je postavený na architektúre RSIC (Reduced Instruction Set Computer). Jeho základnou výhodou je, že neobsahuje žiadny akumulátor a výsledok akejkoľvek operácie je možné uložiť do ľubovoľného registra definovaného inštrukciou.

Architektúra

Architektúra

Architektúra

Pamäť

Skladá sa z 8 kB flash pamäte, 1 kB SRAM a 512 bajtov EEPROM. 8K blesk je rozdelený na 2 časti - spodnú časť používanú ako bootovací oddiel a hornú časť používanú ako aplikačný blesk. SRAM obsahuje 1 kB bajtov spolu s 1120 bajtami registrov na všeobecné účely a I / O registrov. Dolných 32 umiestnení adries sa používa pre 32 univerzálnych 8 bitových registrov. Nasledujúcich 64 adries sa používa pre I / O registre. Všetky registre sú spojené priamo s ALU. EEPROM sa používa na ukladanie dát definovaných používateľom.

Vstupné / výstupné porty

Skladá sa z 23 I / O liniek s 3 I / O portami, pomenovanými B, C a D. Port B pozostáva z 8 I / O liniek, Port C pozostáva zo 7 I / O liniek a Port D pozostáva z 8 I / O riadky.

Registre zodpovedajúce akémukoľvek portuX (B, C alebo D) sú:

DDRX : Register smeru údajov portu X.

PORTX : Dátový register Port X.

PINX : Port X vstupného registra

Časovače a počítadlá

Skladá sa z 3 časovačov s porovnateľnými režimami. Dva z nich sú 8 bitové, zatiaľ čo tretí 16 bitový.

Oscilátory

Obsahuje interný reset a oscilátor, ktorý umožňuje vylúčiť potrebu externého vstupu. Interný RC oscilátor je schopný generovať interné hodiny, ktoré môžu bežať na naprogramovanej frekvencii 1MHz, 2MHz, 4MHz alebo 8MHz. Podporuje tiež externý oscilátor s maximálnou frekvenciou 16 MHz.

Komunikácia

Poskytuje schémy synchrónneho aj asynchrónneho prenosu údajov prostredníctvom USART (Universal Synchronous and Asynchronous Receiver Transmitter), teda komunikáciu s modemami a inými sériovými zariadeniami. Podporuje tiež SPI (sériové periférne rozhranie) používané na komunikáciu medzi zariadeniami na základe metódy master-slave. Ďalším typom podporovanej komunikácie je TWI (dvojvodičové rozhranie). Umožňuje komutáciu medzi ľubovoľnými dvoma zariadeniami pomocou 2 vodičov spolu so spoločným uzemnením.

Má tiež komparátorový modul integrovaný v čipe, ktorý poskytuje porovnanie medzi dvoma napätiami pripojenými k dvom vstupom analógového komparátora cez externé čipy.

Obsahuje tiež 6-kanálový ADC, z ktorých 4 majú 10-bitovú presnosť a 2 majú 8-bitovú presnosť.

Stavový register : Obsahuje informácie o práve vykonávanej sade aritmetických inštrukcií.

Schéma pinov ATmega :

Schéma pinov ATmega

Schéma pinov ATmega

Jednou z dôležitých vlastností ATmega8 je, že okrem 5 pinov, všetky ostatné piny podporujú dva signály.

  • Kolíky 23,24,25,26,27,28 a 1 sa používajú pre port C, zatiaľ čo kolíky 9,10,14,15,16,17,18,19 sa používajú pre port B a kolíky 2,3,4, 5,6,11,12 sa používa pre port D.
  • Pin 1 je tiež resetovacím pinom a použitie signálu nízkej úrovne na čas dlhší ako minimálna dĺžka impulzu vygeneruje reset.
  • Kolíky 2 a 3 sa tiež používajú na sériovú komunikáciu pre USART.
  • Kolíky 4 a 5 sa používajú ako vonkajšie prerušenia. Jeden z nich sa spustí, keď je nastavený bit príznaku prerušenia stavového registra, a druhý sa spustí, pokiaľ prevláda podmienka prerušenia.
  • Kolíky 9 a 10 sa používajú ako externý oscilátor, ako aj oscilátory časovača, kde je kryštál pripojený priamo medzi kolíky. Pin 10 sa používa pre kryštálový oscilátor alebo nízkofrekvenčný kryštálový oscilátor. Ak sa ako zdroj hodín použije interný kalibrovaný RC oscilátor a je povolený asynchrónny časovač, môžu sa tieto piny použiť ako piny časovacieho oscilátora.
  • Pin 19 sa používa ako výstup hlavných hodín, vstup vedľajších hodín pre kanál SPI.
  • Pin 18 sa používa ako vstup hlavných hodín, výstup podradených hodín.
  • Pin 17 sa používa ako výstup hlavných údajov, vstup vedľajších údajov pre kanál SPI. Používa sa ako vstup, keď je povolený podradeným zariadením, a je obojsmerný, ak je povolený nadradeným zariadením. Tento pin sa dá použiť aj ako výstup na porovnanie výstupu, ktorý slúži ako externý výstup na porovnanie časovača / počítadla.
  • Pin16 sa používa ako vstup slave. Môže sa tiež použiť ako porovnanie časovača / počítadla1 konfiguráciou kolíka PB2 ako výstupu.
  • Pin15 možno použiť ako externý výstup pre porovnanie časovača / počítadla so zhodou A.
  • Kolíky 23 až 28 sa používajú pre kanály ADC. Pin 27 možno použiť aj ako hodiny sériového rozhrania a pin 28 sa dá použiť ako dáta sériového rozhrania
  • Kolíky 13 a 12 sa používajú ako vstupy pre analógový komparátor.
  • Kolíky 11 a 6 sa používajú ako zdroje časovača / počítadla.

Režimy spánku mikrokontroléra

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

  • Pohotovostný režim: Zastavuje činnosť CPU, ale umožňuje činnosť SPI, USART, ADC, TWI, Timer / Counter a Watchdog a prerušuje systém. Dosahuje sa to nastavením bitov SM0 až SM2 bitov príznaku registra MCU na nulu.
  • Režim redukcie šumu ADC : Zastaví CPU, ale umožní fungovanie ADC, externých prerušení, časovača / počítadla2 a strážneho psa.
  • Režim vypnutia : Umožňuje externé prerušenia, dvojvodičové sériové rozhranie, strážny pes a deaktivuje externý oscilátor. Zastaví všetky generované hodiny.
  • Úsporný režim : Používa sa, keď je časovač / počítadlo asynchrónne taktovaný. Zastaví všetky hodiny okrem CLKASY.
  • Pohotovostný režim : V tomto režime môže pracovať oscilátor, ktorý zastaví všetky ostatné činnosti.

Aplikácie zahŕňajúce Atmega8

Blikajúca LED dióda

Aplikácie zahŕňajúce Atmega8

Blikajúca schéma LEd

Program je písaný v jazyku C a najskôr je zostavený ako súbor .c. Softvérový nástroj ATMEL prevedie tento súbor na binárny súbor objektov ELF. Potom sa znova prevedie na hexadecimálny súbor. Hex súbor sa potom odovzdá mikrokontroléru pomocou programu AVR frajer.

Fotografický kredit: