Memoria de programa en el ATmega2560 Instrucciones aritméticas Instrucciones lógicas Instrucciones para manipulación de bits Instrucciones de salto incondicional El registro de estado Instrucciones de test Instrucciones de salto condicional Llamado a sub-rutinas
Arquitectura de Computadoras Temario
– – – – – – – – –
Memoria de programa en el ATmega2560 Instrucciones aritméticas Instrucciones lógicas Instrucciones para manipulación de bits Instrucciones de salto incondicional El registro de estado Instrucciones de test Instrucciones de salto condicional Llamado a sub-rutinas
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.!." Mapeo de la memoria +LAS,
-Cmo /unciona la memoria de programa del ATmega)*60 ATmega)*60
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.!." Mapeo de la memoria +LAS, ●
●
●
●
El microcontrolador ATmega2560 pertenece a la familia de microcontroladores A!" del fabricante Atmel #actualmente parte de Microc$ip%& Algunos miembros de la familia A! cuentan con solo unos cuantos 'ilob(tes de )LA*+ incorporada& Lo m,s importante es recordar ue ning.n miembro de la familia A! puede acceder a m,s de /M palabras de opcode" porue el contador de programa #1% en el A! puede tener un anc$o de 22 bits como m,imo #desde 0000000 $asta 03)))))% La primera ubicación en la memoria )LA*+ siempre es 00000004 sin embargo" la .ltima ubicación puede ser diferente" dependiendo del tamao de la )LA*+ en el c$ip& Entre los miembros de la familia A!" el ATmega2560 cuenta con una memoria )LA*+ de 256 b(tes& Esta memoria se encuentra organi7ada en 829 2 b(tes #829 86 bits% ( tiene direcciones desde 0000000 $asta $ast a 08))))& 08))))& 1uando el microcontrolador es encendido #o cuando recibe una seal de !E*ET%" éste inicia la e:ecución del programa a partir de la dirección 0000000 de la memoria de programa #)LA*+%& En otras palabras" al encender #o reinicar% el microcontrolador" el contador de programa #1% toma el ;alor 0&
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.!." Mapeo de la memoria +LAS,
!)57)8ytes
!++++
Mega2560 #1emplos de rango de direcciones en la memoria de programa 2+LAS,3 de los A4%.
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.!." Mapeo de la memoria +LAS,
2+LAS,3
Anc9o de la memoria de programa 2+LAS,3 para los microcontroladores A4%.
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.)." Almacenamiento de instrucciones en la +LAS, ●
●
●
●
1omo se sabe" la memoria )LA*+ es un tipo de memoria de solo lectura #! otros programas al microcontrolador%& Luego ue el programa $a sido almacenado en la )LA*+ de un microcontrolador como el ATmega2560" los opcodes ( operandos son colocados en las ubicaciones de la memoria )LA*+" comen7ando por 0000000& Las instrucciones completas #opcode ? operandos% son almacenadas en lengua:e m,uina #formato binario% en la memoria )LA*+& or e:emplo" la instrucción =L@I !86" 025> es traducida al código m,uina =0E205>& En este caso" 0E representa el opcode #L@I% ( 0205 representa a los operandos& @e forma similar" la instrucción =A@@ !86" !8> es traducida al código m,uina =0)08>& Las im,genes en las siguientes diapositi;as brindan ma(ores detalles&
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.)." Almacenamiento de instrucciones en la +LAS,
+ormato y e1emplos de la instruccin L&I.
Arquitectura de Computadoras !." M#M$%IA '%$(%AMA L ATM#(A)*60 !.)." Almacenamiento de instrucciones en la +LAS,