08 Memoria de los Atmega164P
-
Upload
jaime-e-velarde -
Category
Education
-
view
4.429 -
download
3
description
Transcript of 08 Memoria de los Atmega164P
![Page 2: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/2.jpg)
TIPOS DE MEMORIA
• 16 KBYTES DE MEMORIA FLASH PARA EL PROGRAMA
• 1280 BYTES DE MEMORIA RAM ESTÁTICA (SRAM) PARA DATOS
• 512 BYTES DE EEPROM (RAM NO VOLÁTIL), TAMBIÉN PARA DATOS
![Page 3: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/3.jpg)
16 KBYTES DE FLASH
PARA DIRECCIONAR 16 KBYTES SE NECESITA UN BUS DE DIRECCIONES DE 14 BITS, DESDE:
00 0000 0000 0000 = $0000
HASTA:
11 1111 1111 1111 = $3FFF
CÓDIGO DE MAQUINA DE LAS INSTRUCCIONES
![Page 4: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/4.jpg)
ARREGLO DE 8 K x 16 BITS
LAS INSTRUCCIONES Atmega SON DE 16 o 32 BITS. POR ESO, LA FLASH ESTÁ ARREGLADA EN PALABRAS DE 16 BITS y EL CONTADOR DEL PROGRAMA TIENE 13 BITS, DIRECCIONANDO DESDE:0 0000 0000 0000 = $0000HASTA:1 1111 1111 1111 = $1FFF BYTES
IMPARESBYTES PARES
PALABRAS DE 16 BITS
![Page 5: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/5.jpg)
1280 BYTES DE LA SRAM
LA SRAM CONTIENE 32 REGISTROS DE PROPÓSITO GENERAL, 64 REGISTROS DE ENTRADA / SALIDA, 160 REGISTROS ADICIONALES DE E/S y 1024 BYTE PARA DATOS, DESDE:000 0000 0000 = $000HASTA:100 1111 1111 = $4FF
INFORMACIÓN QUE SE ESTÁ PROCESANDO
INFORMACIÓN DE E/S Y DE
PERIFÉRICOS
INFORMACIÓN DE NUEVOS
PERIFÉRICOS
ÁREA PARA ALMACENAR DATOS DEL USUARIO
![Page 6: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/6.jpg)
32 REGISTROS DE PROPÓSITO GENERAL
LOS REGISTROS ESTÁN IDENTIFICADOS ENTRE R0 y R31LOS ÚLTIMOS 16 SE DIFERENCIAN ALGO EN LA FUNCIONALIDAD DE LOS PRIMEROSLOS SEIS ÚLTIMOS AGREGAN A ESA FUNCIONALIDAD, LA DE SER PARTE DE LOS PUNTEROS
![Page 7: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/7.jpg)
REGISTROS PUNTEROS
LOS TRES PUNTEROS DE 16 BITS X, Y y Z PERMITEN ACCEDER A LOS CONTENIDOS DE LOS ESPACIOS DE MEMORIA UTILIZANDO EL DIRECCIONAMIENTO INDIRECTO
![Page 8: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/8.jpg)
64 REGISTROS DE E/S
LOS PÓRTICOS DE ENTRADA / SALIDA Y LOS PERIFÉRICOS ESTÁN UBICADOS EN ESTA ÁREACUANDO SE ACCEDEN COMO LOCALIDADES DE MEMORIA, LAS DIRECCIONES SON ENTRE $020 y $05F; PERO, SI SE ACCEDEN COMO REGISTROS DE E/S DEBEN SER ENTRE $000 y $03F
DIRECCIÓN COMO E/S
DIRECCIÓN COMO SRAM
![Page 9: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/9.jpg)
REGISTRO DE ESTADO
EL “STATUS REGISTER” O SREG CORRESPONDE AL REGISTRO DE BANDERAS, OCUPA LA ÚLTIMA LOCALIDAD DE ESTA ÁREA
CADA UNO DE LOS BITS TIENE DIFERENTE FUNCIÓN Y PUEDEN SER ACCEDIDOS INDIVIDUALMENTE PARA LEER O MODIFICAR
![Page 10: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/10.jpg)
BANDERAS DEL SREG
BIT 0 = C BANDERA DEL LLEVOBIT 1 = Z BANDERA DE CEROBIT 2 = N BANDERA DE NEGACIÓNBIT 3 = V BANDERA DEL DESBORDAMIENTOBIT 4 = S BANDERA DEL SIGNOBIT 5 = H BANDERA DEL LLEVO INTERMEDIOBIT 6 = T BANDERA PARA COPIAR BITSBIT 7 = I BANDERA PARA HABILITAR GLOBALMENTE LAS INTERRUPCIONES
![Page 11: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/11.jpg)
LA PILA O STACK ES UNA ZONA DE LA SRAM DONDE SE ALMACENAN MOMENTÁNEAMENTE DATOSEL “STACK POINTER” INDICA O APUNTA A LA DIRECCIÓN DEL ÚLTIMO DATO ALMACENADOEL SP ESTA FORMADO POR DOS REGISTROS EL SPH y EL SPL, QUE INICIALMENTE TIENEN EL VALOR $00
PUNTERO DE LA PILA(STACK POINTER)
![Page 12: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/12.jpg)
LAS 32 LÍNEAS DE E/S CONFORMAN LOS CUATRO PÓRTICOS DE 8 BITS CADA UNO: PÓRTICO A, B, C y D
PARA OPERAR CADA PÓRTICO UTILIZA TRES REGISTROS: EL DE ENTRADA “PINx”, EL DEL SENTIDO O DIRECCIÓN DEL DATO “DDRx” Y EL DE SALIDA “PORTx”
PÓRTICOS DE E/S PARALELAS
![Page 13: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/13.jpg)
512 BYTES DE EEPROMEL RANGO DE ESTA MEMORIA VA DESDE:0 0000 0000 = $000HASTA:1 1111 1111 = $1FFEL ACCESO A ESTA MEMORIA NO SE REALIZA DIRECTAMENTE MEDIANTE INSTRUCCIONES, SINO A TRAVÉS DE REGISTROS DE E/S
![Page 14: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/14.jpg)
REGISTROS PARA LA EEPROM
EL ACCESO ENTRE LA EEPROM Y LA CPU SE REALIZA MEDIANTE LOS SIGUIENTES REGISTROS DE ENTRADA / SALIDA:REGISTRO DE CONTROL (EECR)REGISTRO DE DATOS (EEDR)REGISTROS DE DIRECCIONES (EEARL – EEARH)
![Page 15: 08 Memoria de los Atmega164P](https://reader036.fdocumentos.com/reader036/viewer/2022082421/55932f231a28ab1e648b456f/html5/thumbnails/15.jpg)
ESTOS REGISTROS ESTÁN DESDE $060 HASTA $0FFEL ACCESO SOLO REALIZA MEDIANTE LAS DIRECCIONES QUE OCUPAN DENTRO DE LA SRAMNO ESTÁ TOTALMENTE OCUPADOS. A ESTA ZONA, TAMBIÉN SE HAN MOVIDOS CIERTOS REGISTROS QUE EN LOS ATmega16 ESTABAN EN LA OTRA ZONA DE REGISTROS DE E/S
160 REGISTROS E/S ADICIONALES