Tipus de microcontrolador AVR: Atmega32 i ATmega8

Proveu El Nostre Instrument Per Eliminar Problemes





ATmega32 - Microcontrolador AVR de 8 bits

Els microcontroladors AVR es basen en l’arquitectura RISC avançada. ATmega32 és un microcontrolador CMOS de 8 bits de baixa potència basat en l'arquitectura RISC millorada AVR. L'AVR pot executar un milió d'instruccions per segon si la freqüència del cicle és d'1 MHz.

Fotografia DIP de 40 pins d

Fotografia DIP de 40 pins d'ATmega32



Característiques clau:


  • 32 x 8 registres de propòsit general de treball.
  • 32K bytes de memòria del programa flash autoprogramable del sistema
  • 2K bytes de SRAM intern
  • EEPROM de 1024 bytes
  • Disponible en DIP de 40 pins, QTFP de 44 derivacions, QFN / MLF de 44 coixinets
  • 32 línies d'E / S programables
  • 8 canals, ADC de 10 bits
  • Dos temporitzadors / comptadors de 8 bits amb prescalers separats i modes de comparació
  • Un temporitzador / comptador de 16 bits amb precalificador separat, mode de comparació i mode de captura.
  • 4 canals PWM
  • En la programació del sistema mitjançant un programa d’arrencada amb xip
  • Temporitzador de gossos de vigilància programable amb oscil·lador independent al xip.
  • Sèrie programable USART
  • Interfície sèrie SPI mestre / esclau

Característiques especials del microcontrolador:

  • Sis modes de repòs: inactiu, reducció de soroll ADC, estalvi d'energia, apagat, espera i espera estesa.
  • Oscil·lador RC calibrat intern
  • Fonts d'interrupcions externes i internes
  • Restabliment de l’encesa i detecció de marró programable.
DIP de 40 pins d

DIP de 40 pins d'ATmega32



Tots els 32 registres estan connectats directament a la Unitat Lògica Aritmètica (ALU), cosa que permet accedir a dos registres independents en una sola instrucció executada en un cicle de rellotge.

L'apagada desa el contingut del registre, però congela l'oscil·lador. La resta de funcions del xip es desactivaran fins que aparegui la següent interrupció externa. El temporitzador asíncron permet a l'usuari mantenir un temporitzador basat en el mode d'estalvi d'energia mentre la resta del dispositiu dorm.

El mode de reducció de soroll ADC atura la CPU i tots els mòduls d'E / S excepte ADC i el temporitzador asíncron. En mode d'espera, excepte l'oscil·lador de cristall, la resta del dispositiu està en repòs. Tant l'oscil·lador principal com el temporitzador asíncron continuen funcionant en mode d'espera ampliat.

ATmega32 és un potent microcontrolador a causa del seu flash autoprogramable del sistema en un xip monolític, proporciona una solució flexible i rendible per a moltes aplicacions de control incrustades.


TQFP / MLF de 44 coixins

TQFP / MLF de 44 coixins

Descripcions de pins:

VCC: Alimentació digital de tensió

GND: Terra

Port A (PA7-PA0): Aquest port serveix com a entrades analògiques al convertidor A / D. També serveix com a port d'E / S bidireccional de 8 bits si no s'utilitza el convertidor A / D.

Port B (PB7-PB0) i port D (PD7-PD0): És un port d'E / S bidireccional de 8 bits. Les seves memòries intermèdies de sortida tenen característiques de transmissió simètriques amb capacitat d’enfonsament i font elevades. Com a entrades, aquestes són extremadament baixes si s’activen les resistències de tracció. També serveix diverses funcions especials de l'ATmega32.

Port C (PC7-PC0): És un port d'E / S bidireccional de 8 bits. Si la interfície JTAG està habilitada, s’activaran les resistències de tracció als pins PC5 (TDI), PC3 (TMS) i PC2 (TCK).

Interfície de JTAG mitjançant el port C d

Interfície de JTAG mitjançant el port C d'ATmega32

Restableix: És una entrada.

XTAL1: És una entrada a l’amplificador de l’oscil·lador inversor i entrada al circuit de funcionament del rellotge intern.

XTAL2: És una sortida de l'amplificador oscil·lador inversor.

AVCC: És el pin de tensió d'alimentació per al convertidor de ports A i A / D. Ha d’estar connectat a VCC.

AREF: AREF és el pin de referència analògic per al convertidor A / D.

Memòries ATmega32:

Té dos espais de memòria principals de memòria de dades i l'espai de memòria del programa. A més, compta amb una memòria EEPROM per emmagatzemar dades.

A la memòria del programa Flash programable del sistema:

ATmega32 conté un xip de 32Kbytes a la memòria flash reprogramable del sistema per emmagatzemar el programa. Flash s’organitza en 16k X 16 i la seva memòria es divideix en dues seccions Secció del programa d’arrencada i secció del programa d’aplicacions.

Esquema del circuit del programador ISP

Diagrama de circuits del programador ISP

Memòria de dades SRAM:

El fitxer Register, la memòria d'E / S i el SRAM de dades internes són dirigits per les ubicacions de memòria de dades més baixes de 2144. Les primeres 96 ubicacions tracten el fitxer Register i la memòria d'E / S, i les dades internes SRAM són abordades per les properes 2048 ubicacions. Directe, indirecte amb desplaçament, indirecte, indirecte amb predecrement i en directe amb postdecrement són els 5 modes d’adreçament diferents per a la cobertura de la memòria de dades. Els 32 registres d’ús general, 64 registres d’E / S i 2048 bytes de dades internes SRAM són accessibles mitjançant aquests modes d’adreces.

Diagrama de blocs d

Diagrama de blocs d'ATmega32

Memòria de dades EEPROM:

Conté 1024 bytes de memòria EEPROM de dades. Es pot accedir com un espai de dades separat en el qual es poden llegir i escriure bytes individuals.

Memòria d'E / S:

Totes les E / S i els perifèrics es col·loquen a l'espai d'E / S. Les instruccions IN i OUT accedeixen a les ubicacions d'E / S, transferint les dades entre els 32 registres de propòsit general i l'espai d'E / S. Els registres d'E / S amb l'adreça 00-1F són directament accessibles a bit mitjançant les instruccions SBI i CBI.

ATmega8

Introducció

És un microcontrolador de 8 bits construït amb CMOS de la família AVR (desenvolupat per Atmel Corporation el 1996) i està basat en l'arquitectura RSIC (Reduced Instruction Set Computer). El seu avantatge bàsic és que no conté cap acumulador i el resultat de qualsevol operació es pot emmagatzemar en qualsevol registre, definit per la instrucció.

Arquitectura

Arquitectura

Arquitectura

Memòria

Consta de 8 KB de memòria flash, 1 KB de SRAM i 512 Bytes d'EEPROM. El flaix 8K es divideix en dues parts: la part inferior s'utilitza com a secció de flaix d'arrencada i la part superior s'utilitza com a secció de flaix d'aplicació. El SRAM conté 1K bytes juntament amb 1120 bytes de registres d'ús general i registres d'E / S. Les ubicacions de 32 adreces inferiors s'utilitzen per a registres de 32 bits de propòsit general. Les següents 64 adreces s'utilitzen per als registres d'E / S. Tots els registres estan connectats directament a l'ALU. La EEPROM s'utilitza per emmagatzemar dades definides per l'usuari.

Ports d’entrada / sortida

Consta de 23 línies d'E / S amb 3 ports d'E / S, anomenats B, C i D. El port B consta de 8 línies d'E / S, el port C consta de 7 línies d'E / S i el port D consta de 8 E / S línies.

Els registres corresponents a qualsevol portX (B, C o D) són:

DDRX : Registre de direcció de dades del port X.

PORTX : Registre de dades del port X.

PINX : Registre d'entrada del port X.

Temporitzadors i comptadors

Consta de 3 temporitzadors amb modes comparables. Dos d'ells són de 8 bits, mentre que el tercer és de 16 bits.

Oscil·ladors

Incorpora restabliment intern i oscil·lador que permet eliminar la necessitat de qualsevol entrada externa. L'oscil·lador RC intern és capaç de generar un rellotge intern que pot funcionar a qualsevol freqüència d'1 MHz, 2 MHz, 4 MHz o 8 MHz segons s'hagi programat. També és compatible amb l'oscil·lador extern amb una freqüència màxima de 16 MHz.

Comunicació

Proporciona esquemes de transferència de dades tant síncrons com asíncrons mitjançant USART (transmissor de receptors síncron i síncron universal), és a dir, comunicació amb mòdems i altres dispositius en sèrie. També admet SPI (Serial Peripheral Interface) que s’utilitza per a la comunicació entre dispositius basada en el mètode mestre-esclau. Un altre tipus de comunicació compatible és el TWI (Two wire Interface). Permet la commutació entre dos dispositius mitjançant l'ús de dos cables juntament amb una connexió a terra comuna.

També té un mòdul comparador integrat al xip per proporcionar comparació entre dues tensions connectades a les dues entrades del comparador analògic a través dels xips externs.

També conté un ADC de 6 canals, dels quals 4 tenen precisió de 10 bits i 2 tenen precisió de 8 bits.

Registre d’estat : Conté informació sobre el conjunt d'instruccions aritmètiques executades actualment.

Diagrama ATmega Pin :

Diagrama ATmega Pin

Diagrama ATmega Pin

Una de les característiques importants d’ATmega8 és que, excepte els 5 pins, la resta de pins admeten dos senyals.

  • Els pins 23,24,25,26,27,28 i 1 s’utilitzen per al port C, mentre que els pins 9,10,14,15,16,17,18,19 s’utilitzen per al port B i els pins 2,3,4, 5.6,11,12 s’utilitzen per al port D.
  • El pin 1 també és el pin de reinicialització i un senyal d’aplicació de baix nivell durant un temps superior a la durada mínima del pols generarà un restabliment.
  • Els pins 2 i 3 també s’utilitzen per a la comunicació en sèrie d’USART.
  • Els pins 4 i 5 s’utilitzen com a interrupcions externes. Un d'ells s'activarà quan s'estableixi el bit de senyal d'interrupció del registre d'estat i l'altre s'activarà sempre que prevalgui la condició d'interrupció.
  • Els pins 9 i 10 s’utilitzen com a oscil·lador extern i també com a comptadors de temporitzador, on el cristall està connectat directament entre els pins. El pin 10 s'utilitza per a l'oscil·lador de cristall o l'oscil·lador de cristall de baixa freqüència. Si s'utilitza l'oscil·lador RC calibrat intern com a font del rellotge i el temporitzador asíncron està habilitat, aquests pins es poden utilitzar com a pins d'oscil·lador del temporitzador.
  • El pin 19 s'utilitza com a sortida de rellotge mestre, entrada de rellotge esclau per al canal SPI.
  • El pin 18 s'utilitza com a entrada de rellotge principal, sortida de rellotge esclau.
  • El pin 17 s'utilitza com a sortida de dades mestra, entrada de dades esclaves per al canal SPI. S'utilitza com a entrada quan està habilitat per un esclau i és bidireccional quan l'habilita el mestre. Aquest pin també es pot utilitzar com a sortida de comparació de sortida, que serveix com a sortida externa per a la comparació de temporitzador / comptador.
  • Pin16 s'utilitza com a entrada de selecció esclau. També es pot utilitzar com a comparador de temporitzador / comptador1 mitjançant la configuració del pin PB2 com a sortida.
  • El Pin15 es pot utilitzar com a sortida externa per a la comparació del temporitzador / comptador A.
  • Els pins 23 a 28 s’utilitzen per als canals ADC. El pin 27 també es pot utilitzar com a rellotge de la interfície sèrie i el pin 28 es pot utilitzar com a dades de la interfície sèrie
  • Els pins 13 i 12 s’utilitzen com a entrades de comparador analògic.
  • Els pins 11 i 6 s’utilitzen com a fonts de temporitzador / comptador.

Modes de repòs del microcontrolador

El microcontrolador funciona en 6 modes de repòs.

  • Mode d'inici: Atura el funcionament de la CPU, però permet el funcionament de SPI, USART, ADC, TWI, temporitzador / comptador i gos de vigilància i interromp el sistema. S’aconsegueix establint a zero SM0 a SM2 bits de la marca de registre MCU.
  • Mode de reducció de soroll ADC : Atura la CPU, però permet el funcionament de l'ADC, les interrupcions externes, el temporitzador / comptador2 i el gos de vigilància.
  • Mode d’apagada : Permet interrupcions externes, la interfície sèrie de 2 fils, gos de vigilància mentre es desactiva l'oscil·lador extern. Atura tots els rellotges generats.
  • Mode d'estalvi d'energia : S'utilitza quan el temporitzador / comptador es marca de manera asíncrona. Atura tots els rellotges excepte clkASY.
  • Mode d'espera : En aquest mode, es permet que l'oscil·lador funcioni, aturant la resta d'operacions.

Aplicacions que impliquen Atmega8

LED parpellejant

Aplicacions relacionades amb Atmega8

Esquema LEd intermitent

El programa s’escriu amb llenguatge C i primer es compila com a fitxer .c. L’eina de programari ATMEL convertirà aquest fitxer en un fitxer objecte binari ELF. Es torna a convertir a fitxer hexadecimal. El fitxer hexadecimal es passa al microcontrolador mitjançant el programa AVR dude.

Crèdit fotogràfic: