Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Arquitectura Del ATmega32 Espanol PDF
Arquitectura Del ATmega32 Espanol PDF
Figura 2.1.
REGISTROS
Es un espacio especial de almacenamiento de 8 bits, el cual luce como:
BIT7
BIT6
BIT5
BIT4
BIT3
BIT2
BIT1
BIT0
Note que la numeracin de estos bits: el bit menos significativo inicia con cero (20 =1).
Un registro puede almacenar nmeros desde 0 a 255 (nmeros positivos), o nmeros
__________________________________________________________________________ITSP
desde -128 a 127 (nmeros con signo y magnitud), o valores que representan
caracteres en el cdigo ASCII.
Las caractersticas especiales de los registros, comparados con otros sitios de
almacenamiento, es que:
Ellos se usan directamente en los comandos en ensamblador.
Las operaciones de su contenido requieren solamente comandos de una palabra.
Ellos estn ligados directamente a la Unidad Central de Procesamiento.
Ellos son la fuente o destino de los argumentos en las operaciones.
Existen 32 registros en un AVR. Ellos se nombran como R0 a R31, pero puedes
renombrarlos usando las directivas del ensamblador.
Los AVR utilizan la Arquitectura Harvard, con el bus de datos y el bus de memorias
separados. Mientras una instruccin se ejecuta, la prxima instruccin esta lista para
ser ejecutada en la memoria de programa. Las instrucciones se ejecutan en cada ciclo
de reloj. La memoria de programa esta en la memoria Flash. Al ejecutarse una
operacin en la ALU, los dos operandos estn a la salida del archivo de registros y el
resultado se almacena al fondo del archivo de registros en un solo ciclo de reloj. Seis de
los 32 registros se pueden usar como registros apuntadores de direccionamiento
indirecto a 16 bits para datos almacenados en memoria, siendo los registros de 16 bits
X, Y y Z. Despus de realizar una operacin aritmtica el Registro de Estado actualiza
la informacin acerca del resultado de la operacin.
Durante las interrupciones o llamados a subrutinas, la direccin del Contador de
Programa se almacena en la pila. La pila se localiza en la SRAM. El usuario al inicio de
un programa deber inicializar el SP en la rutina de reset.
El espacio de memoria de I/O contiene 64 direcciones para las funciones perifricas del
CPU como Registros de Control, SPI, y otras funciones de I/O.
Las operaciones de la ALU se dividen en tres categoras, aritmticas, lgicas y
operaciones a bits.
REGISTRO DE ESTADO
Este registro contiene informacin del resultado ms reciente de la operacin aritmtica.
As, esta informacin puede ser til para alterar el flujo del programa y ejecutar
operaciones condicionales. Puede ser manejado por software. La figura 2.2 muestra los
bits que maneja.
__________________________________________________________________________ITSP
__________________________________________________________________________ITSP
Figura 2.3.
A partir de la direccin 001Ah a la 001Fh, comienzan los 3 registros de 16 bits (X, Y y
Z), los cuales actan como apuntadores de direcciones para direccionamiento indirecto
a espacio de datos.
Figura 2.4.
__________________________________________________________________________ITSP
APUNTADOR DE PILA
La Pila se usa principalmente para almacenar datos temporales, para almacenamiento
local de variables y para almacenar direcciones de retorno despus de las
interrupciones y los llamados a subrutina. El Registro de Apuntador de Pila siempre
apunta al principio de la Pila.
El Apuntador de la Pila apunta a los datos de la SRAM que funcionan como pila. El
espacio de la pila la define el usuario y deber apuntar a una direccin arriba de la
0060h
Figura 2.5.
__________________________________________________________________________ITSP
Figura 2.6.
Las 2144 (860h) localidades de Memoria de Datos direccionan el Archivo de Registros,
la Memoria de I/O y los datos internos de la SRAM. Las primeras 96 (60h) localidades
direccionan el Archivo de Registros y la Memoria de I/O, y las siguientes 2048
localidades direccionan los datos internos de la SRAM, vase la figura 2.7.
Figura 2.7.
Documento traducido de la hoja de datos del ATmega32
__________________________________________________________________________ITSP
Figura 2.8.
Reloj del CPU clkCPU. El reloj del CPU se dirige a las partes del sistema
concernientes con la operacin del ncleo AVR. Tales mdulos sern el Archivo de
Registros de Propsito General, el Registro de Estado y el Apuntador de Pila. Parando
el reloj del CPU se inhibe el ncleo.
Reloj de I/O clkI/O. El reloj de I/O se usa para la mayora de los mdulos de I/O, tales
como los Timers/Contadores, SPI y el USART, as como tambin el Mdulo de
Interrupciones Externas.
Reloj de la Flash clkFLASH. El reloj de la Flash controla la operacin de la interfase
Flash. Se activa simultneamente con el reloj del CPU.
__________________________________________________________________________ITSP
Reloj del Timer Asncrono clkASY. El timer de reloj asncrono permite recibir
directamente un cristal externo de 32 KHz.
Reloj del ADC clkADC. El ADC es provisto con un reloj de dominio dedicado. Esto
permite parar los relojes del CPU y de I/O para reducir el ruido generado por la
circuitera digital. Esto proporciona ms precisin en la conversin del ADC.
FUENTES DE RELOJ
El dispositivo tiene las siguientes fuentes de reloj, seleccionables por los bits de Flash
Fusibles. El reloj de la fuente seleccionado es la entrada al reloj generador del AVR y se
dirige a los mdulos apropiados.
Las fuentes de reloj son: Oscilador Externo RC, Reloj Externo, Cristal Oscilador,
Oscilador de Cristal a Baja Frecuencia y el Oscilador Calibrado RC.
El dispositivo es fabricado con un Oscilador Interno RC como fuente de reloj por default
de 1 MHz.
__________________________________________________________________________ITSP
__________________________________________________________________________ITSP
10
__________________________________________________________________________ITSP
11
__________________________________________________________________________ITSP
12
__________________________________________________________________________ITSP
13
__________________________________________________________________________ITSP
Figura 2.9.
14
__________________________________________________________________________ITSP
2.6 INTERRUPCIONES.
Esta seccin describe las especificaciones para el manejo de interrupciones que ejecuta
el ATmega32. la tabla siguiente muestra el lugar de los vectores de Reset e
Interrupcin. Si un programa no habilita una fuente de interrupcin, el Vector de
Interrupciones no se usa, y el cdigo de un programa regular puede ser colocado en
estas localidades de memoria.
15
__________________________________________________________________________ITSP
16
__________________________________________________________________________ITSP
17
__________________________________________________________________________ITSP
18