Doctor

Páginas: 13 (3053 palabras) Publicado: 24 de noviembre de 2012
Distribución de terminales del ATMega8 / 88 en encapsulado DIP

NOTAS:

1.

Para el curso y como opciones de remplazo, también pueden usarse los microcontroladores ATMega88A ó ATMega88PA
pues cubren y sobre pasan las características del ATMega8, pero también con una base para IC de 28 pines y 300 mil para
proteger sus terminales

2.

Si se desea hacer un programador por pareja paratrabajar en casa, también se necesitará comprar otro micro ATMega8 (NO
comprar remplazo) además de algunos componentes y materiales adicionales.

701 ASM para µC ATMEL (1° Parcial M8) v0.4

Página 1 de 37

SCS

El ATMega8 / 88 “por dentro” (diagrama a bloques)
Estos microcontroladores utilizan la arquitectura Harvard (RISC) y cada una de las instrucciones del programa (el cual quedar áen su memoria FLASH) se ejecutan por cada pulso de rel oj.
La mayoria de las instrucciones en el AVR tienen como base un formato de 16bits pero pueden combinarse dos localidades de
memoria para obtener una instrucción de 32bits.
ATMega8

701 ASM para µC ATMEL (1° Parcial M8) v0.4

Página 2 de 37

SCS

ATMega88

La ALU permite trabajar operciones del tipo l ógico y aritmético entreregistros o entre constantes y registros. Despues de cada
instrucción ejecutada, el registro de estados (“Status Register” ó SREG) se actualiza para reflejar información importante so bre
la operación que se acaba de realizar. NOTA: El SREG se explica más adelante en el tema “Registro de estados SREG”
El flujo del programa puede darse en forma lineal o con brincos co ndicionales e incondicionales,permitiéndole accesar a todo el
mapa de memoria.
Durante las interrupciones o llamadas a subru tina, el contador de programa (“Program Counter” o PC) se almacena en el
“Stack” (al final de la memoria RAM), por lo que siempre deberá inicalizarse el PC al inicio del programa cuando se pretenda
utilizar interrupciones o subrutinas.
El microcontrolador también cuenta con una serie de vectoresbien definidos para cada una de las interrupciones que puede
manejar y que deben definirse al principio del programa cuando se pretenda hacer uso de alguna de las interrupciones
disponibles.

701 ASM para µC ATMEL (1° Parcial M8) v0.4

Página 3 de 37

SCS

Las memorias del ATMega8 / 88:
Dibujar el diagrama electrónico para prender y apagar un LED manualmente con un PushButton, luego sudiagrama de flujo con una
subrutina de 1s, para explicarles cómo funciona el programa en FLASH y como se auxilia de la RAM al trabajar con subrutinas
Memoria RAM (SRAM)
En el programa y AVR Studio se define como “.DSEG”
Usada para datos o variables (8 bits) además de:
32 Registros de 8 bits para variables (de la $00 a $1F)
64 Registros de 8 bits para periféricos E/S (de la $20 a la $5F)
1024Bytes como Memoria RAM (de la $060 a la $45F)
Con un Stack Pointer (SP) y debe inicializarse siempre
señalando la última localidad de memoria

Memoria FLASH
En el programa y AVR Studio se define como “.CSEG”
Usada para el programa (instrucciones de 16 ó 32 Bits)
Inicia en la dirección $000 y termina en la dirección $FFF
Es decir: 4095 localidades x 16 bits (8K Bytes)
Resiste hasta 10,000ciclos de escritura/borrado
Con un Contador de programa (Program Counter o PC)
El PC inicia siempre señalando la primer localidad de memoria
B15

B8 B7

B0

PC

SP

$045E
$045F

Que los alumnos lean toda la información que sigue, pero yo me paso a la página 18 para trabajar con ellos p101 y p102

701 ASM para µC ATMEL (1° Parcial M8) v0.4

Página 4 de 37

SCS Inicialización de la RAM
Cada vez que se requiera trabajar con subrutinas, es necesario inicializar la memoria RAM para “recordarle” al µC donde termina y
poder trabajar con el SP.
La inicialización se logra con los siguientes comandos:
LDI
OUT
LDI
OUT

R16,HIGH(RAMEND)
SPH,R16
R16,LOW(RAMEND)
SPL,R16

; Main program start
; Set Stack Pointer to top of RAM

Modos de direccionamiento...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Doctor
  • Doctora
  • Doctor
  • Doctor
  • Doctor
  • Doctorado
  • Doctor
  • Doctor

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS