View
8.421
Download
4
Category
Preview:
DESCRIPTION
Instrucciones y Modos de direccionamiento de los Microcontroladores AVR
Citation preview
jaime.velarde@epn.edu.ec 1
CONJUNTO DE INSTRUCCIONES DE LOS MICROCONTOLADORES
ATmega
Elaborado por: Ing. Jaime E. Velarde
jaime.velarde@epn.edu.ec 2
TIPOS DE INSTRUCCIONES
A LAS INSTRUCCIONES SE LAS PUEDE AGRUPAR POR EL TIPO DE ACCIONES QUE REALIZAN:
• DE TRANSFERENCIA DE DATOS• DE SALTO Y DE BIFURCACIÓN• PARA MANIPULACIÓN DE BITS• ARITMÉTICAS Y LÓGICAS• DE CONTROL
jaime.velarde@epn.edu.ec 3
DE TRANSFERENCIASON AQUELLAS QUE PERMITEN MOVER DATOS ENTRE LAS DISTINTAS LOCALIDADES DE LAS MEMORIAS:
• COPIAR REGISTROS (MOV, MOVW)• CARGAR AL REGISTRO UN VALOR (LDI)• CARGAR UN REGISTRO DESDE LA SRAM (LD,
LDD, LDS, POP)• ALMACENAR EN SRAM UN REGISTRO (ST, STD,
STS, PUSH)• CARGAR UN REGISTRO DESDE LA FLASH (LPM)• ENTRADAS Y SALIDAS MEDIANTE LOS
REGISTROS DE LOS PÓRTICOS (IN, OUT)
jaime.velarde@epn.edu.ec 4
DE SALTO Y DE BIFURCACIÓNMODIFICAN LA SECUENCIA NORMAL DE EJECUCIÓN DE LOS PROGRAMAS:
• SALTOS INCONDICIONALES (RJMP, IJMP, JMP)• LLAMADAS Y RETORNOS DE SUBRUTINAS
(RCALL, ICALL, CALL, RET)• COMPARACIÓN Y SALTO INCLUIDO (CPSE)• SALTOS CONDICIONADOS (SBRC, SBRS, SBIC,
SBIS)• BIFURCACIONES DE ACUERDO AL ESTADO DE
LAS BANDERAS (BRxC, BRxS)
jaime.velarde@epn.edu.ec 5
ARITMÉTICAS Y LÓGICAS
AQUELLAS QUE REALIZAN OPERACIONES CON BYTES:
• SUMAS, RESTAS, MULTIPLICACIONES, COMPARACIONES (ADD, ADDC, ADIW, SUB, SUBI, SBC, SBCI, MUL, MULS, MULSU, FMUL, FMULS, FMULSU, CP, CPC, CPI)
• INCREMENTOS, DISMINUCIONES (INC, DEC)• OPERACIONES LÓGICAS AND, OR, OR
EXCLUSIVO (AND, ANDI, TEST, OR, ORI, EOR)• COMPLEMENTO DE UNO, COMPLEMENTO DE
DOS (COM, NEG)
jaime.velarde@epn.edu.ec 6
MANIPULACIÓN DE BITS
SON AQUELLAS QUE REALIZAN OPERACIONES A NIVEL DE BITS:
• DESPLAZAMIENTOS Y ROTACIONES (ASR, LSL, LSR, ROL, ROR, SWAP)
• MOVER UN BIT (BLD, BST)• PONER UNO EN UN BIT Y BORRAR UN BIT
(SER, CLR, SBR, CBR, SBI, CBI)• PONER UNO EN UNA BANDERA Y BORRAR UNA
BANDERA (BSET, SEx, BCLR, CLx)
jaime.velarde@epn.edu.ec 7
DE CONTROL DE LA CPU
AQUELLAS QUE REALIZAN ACCIONES SOBRE TODO EL FUNCIONAMIENTO DEL MICROCONTROLADOR (BREAK, NOP, SLEEP, WDR)
jaime.velarde@epn.edu.ec 8
COMPONENTES DE LAS INSTRUCCIONES
LAS INSTRUCCIONES SE COMPONEN DE LA OPERACIÓN Y LOS OPERANDOS• LA OPERACIÓN ES LA ACCIÓN QUE SE REALIZA SOBRE LOS OPERANDOS. SE REPRESENTA MEDIANTE UN VERBO EN INFINITIVO• LOS OPERANDOS SON LOS DATOS QUE INTERVIENEN EN LA OPERACIÓN. SE REPRESENTAN MEDIANTE LOS “MODOS DE DIRECCIONAMIENTO”
jaime.velarde@epn.edu.ec 9
DEFINICIÓN
MODOS DE DIRECCIONAMIENTO, SON LOS DISTINTOS PROCEDIMIENTOS QUE UTILIZAN LA CPU PARA
OBTENER DESDE LA MEMORIA LOS DATOS QUE INTERVIENEN
EN LA OPERACIÓN
jaime.velarde@epn.edu.ec 10
NÚMERO DE OPERANDOS
A LAS INSTRUCCIONES TAMBIÉN SE LAS PUEDEN CLASIFICAR POR EL NÚMERO DE OPERANDOS EN:• INSTRUCCIONES SIN OPERANDOS• INSTRUCCIONES CON UN OPERANDO. QUE SE LO DENOMINA COMO EL OPERANDO DE DESTINO• INSTRUCCIONES CON DOS OPERANDOS SEPARADOS POR UNA COMA. EL PRIMERO SE DENOMINA COMO EL DE DESTINO Y EL SEGUNDO COMO EL DE ORIGEN
jaime.velarde@epn.edu.ec 11
NÚMERO DE OPERANDOS Y MODOS DE DIRECCIONAMIENTO• LAS INSTRUCCIONES SIN OPERANDOS UTILIZAN EL MODO DIRECCIONAMIENTO IMPLÍCITO • LAS INSTRUCCIONES CON UNO O DOS OPERANDO, TIENEN LOS SIGUIENTES:
– INMEDIATO– DIRECTO– INDIRECTO SIMPLE, CON DISMINUCIÓN
PREVIA, CON INCREMENTO POSTERIOR O CON DESPLAZAMIENTO
jaime.velarde@epn.edu.ec 12
DIRECTO A UN REGISTRO
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICA EL NÚMERO DEL REGISTRO QUE CONTIENE EL OPERANDO DE DESTINO (Rd)
jaime.velarde@epn.edu.ec 13
DIRECTO A DOS REGISTROS
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICAN LOS NÚMEROS DE LOS REGISTROS QUE CONTIENEN LOS OPERANDOS DE ORIGEN (Rr) Y DE DESTINO (Rd)
jaime.velarde@epn.edu.ec 14
INMEDIATO
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICA UN NÚMERO QUE CORRESPONDE AL OPERANDO DE ORIGEN
jaime.velarde@epn.edu.ec 15
DIRECTO AL REGISTRO DE E/S
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICA EL NÚMERO DEL REGISTRO DE E/S QUE CONTIENE EL OPERANDO DE ORIGEN O DE DESTINO
jaime.velarde@epn.edu.ec 16
DIRECTO A LA SRAM
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICA EN 16 BITS LA DIRECCIÓN DE LA LOCALIDAD DE LA SRAM QUE CONTIENE EL OPERANDO DE ORIGEN O DE DESTINO
jaime.velarde@epn.edu.ec 17
INDIRECTO A LA SRAM
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICA EL REGISTRO PUNTERO QUE APUNTA A LA LOCALIDAD DE LA SRAM QUE CONTIENE EL OPERANDO DE ORIGEN O DE DESTINO
jaime.velarde@epn.edu.ec 18
INDIRECTO A LA SRAM CON DISMINUCIÓN PREVIA
IDÉNTICO AL INDIRECTO. PERO, EL PUNTERO PREVIAMENTE DISMINUYE SU CONTENIDO ANTES DE EJECUTAR LA OPERACIÓN
jaime.velarde@epn.edu.ec 19
INDIRECTO A LA SRAM CON INCREMENTO POSTERIOR
IDÉNTICO AL INDIRECTO. PERO, EL PUNTERO INCREMENTA SU CONTENIDO DESPUÉS DE EJECUTAR LA OPERACIÓN
jaime.velarde@epn.edu.ec 20
INDIRECTO A LA SRAM CON DESPLAZAMIENTO
EN EL CÓDIGO DE MÁQUINA SE ESPECIFICA EL PUNTERO Y UN VALOR, QUE SUMADOS APUNTAN A LA LOCALIDAD DE LA SRAM QUE CONTIENE EL OPERANDO DE ORIGEN O DE DESTINO
jaime.velarde@epn.edu.ec 21
LECTURA DE CONSTANTES DE LA MEMORIA DE PROGRAMA
EN ESTAS INSTRUCCIONES EL PUNTERO Z PERMITE LEER CONSTANTES DE UN BYTE, DE LA MEMORIA DEL PROGRAMA
jaime.velarde@epn.edu.ec 22
LECTURA DE CONSTANTES DE LA MEMORIA DE PROGRAMA CON INCREMENTO POSTERIOR
IDÉNTICO AL ANTERIOR. PERO, EL PUNTERO INCREMENTA SU CONTENIDO DESPUÉS DE EJECUTAR LA OPERACIÓN
jaime.velarde@epn.edu.ec 23
CONJUNTO DE INSTRUCCIONES
LA UTILIZACIÓN DE ESTOS MODOS DE DIRECCIONAMIENTO, CON LOS
DIFERENTES CÓDIGOS DE LAS OPERACIONES DAN COMO
RESULTADO EL CONJUNTO DE INSTRUCCIONES DE LOS
MICROCONTROLADORES ATmega
AVR INSTRUCTION SET
jaime.velarde@epn.edu.ec 24
jaime.velarde@epn.edu.ec 25
RANGOS DE LAS DIRECCIONES
EL FABRICANTE PROPORCIONA EN FORMA GENERAL LA INFORMACIÓN DE LAS INSTRUCCIONES Y DE LOS MODOS DE DIRECCIONAMIENTO.
EL USUARIO AL ELABORAR EL PROGRAMA DEBE CONSIDERAN EL MICROCONTROLADOR QUE VA A UTILIZAR Y CONTROLAR LOS RANGOS DE DIRECCIONES DE LA MEMORIA
Recommended