2.5 Las Instrucciones Del Microcontrolador.
Short Description
Download 2.5 Las Instrucciones Del Microcontrolador....
Description
Las instrucciones del Microcontrolador Microcontrolador
Intruduccion Como ya hemos visto, para que el microcontrolador lleve acabo una tarea, debemos indicarle exactamente que debe hacer, o en otras palabras, debemos escribir el programa que el micro ejecutara. Ya hemos visto varios ejemplos y muchas de las instrucciones del pic, pero ahora veremos las 35 instrucciones del ensamblador mpasm. Estas 35 instrucciones son las mismas para toda la gama media de los microcontroladores pic asi que si mas adelante se quiere realizar un programa para un pic 16F877 se usaran las mismas instrucciones.
Para entender mejor cada instrucción se explica a continuación el significado de algunos parámetros: f: Registro con el que trabaja la instrucción •
•
•
•
W: “Working Register ” (acumulador) registro básico de trabajo b: Numero de bit del registro 0-7 (hay instrucciones que afectan solo un bit del registro) d: Selecciona el destino del resultado de la instrucción. D puede ser “w” o “f” si es “w” el resultado se guarda en el registro W y si es “f” se guarda en el registro F que sea usado en la instruccion
Instrucciones orientadas a registros: ADDWF f,d
Suma W y el registro f, el resultado lo guarda según d( si d=W se guarda en W y si d=f se guarda en f)
ANDWF f,d
realiza la operación AND logica entre W y f, el resultado lo guarda según d
CLRF f
borra el registro f(pone a todos sus bits a cero)
CLRW
Borra el acumulador (W)
COMF f,d
calcula el complementario del registro f(los bits que estan a “0” los pone a “1” y viceversa. Resultado según d
Instrucciones orientadas a registros: DECF f,d
Decrementa f en uno (le resta uno a f). Resultado según d.
DECFSZ f,d
Decrementa f y se salta la siguiente instrucción si el resultado es cero. Resultado según d.
INCf f,d
Incrementa f en uno(le suma uno). Resultado según d.
INCFSZ f,d
Incremente f y se salta la siguiente instrucción si el resultado es cero (cuando se desborda un registro vuelva al valor 00h). Resultado según d.
IORWF f,d
Realiza la operación lógica OR entre W y f. Resultado según d.
Instrucciones orientadas a registros: MOVF f,d
Mueve el contenido del registro f a W si d=W (si d=f lo vuelve a poner el mismo registro).
MOVWF f
Mueve el valor de W a f.
NOP
No hace nada, solo pierde el tiempo durante un ciclo.
RLF f,d
Rota el registro f hacia la izquierda a traves del bit CARRY (todos los bits se mueven un lugar hacia la izquierda, el bit 7 de f pasa al CARRY y el bit CARRY pasa al bit 0 de f). Resultado según d.
RRF f,d
Lo mismo que RLF hacia la derecha.
SUBWF f,d
Resta f y W (f-W). Resultado según d.
SWAPF f,d
Intercambia los 4 primeros bit de f por los otros 4, Resultado según d.
XORWF f,d
Realizamos la operación logica XOR (OR exclusiva)
Instrucciones orientadas a bits: BCF f,b
Pone a “0” el bit b del registro f
BSF f,b
Pone a “1” el bit b del registro f
BTFSC f,b
Se salta la siguiente instrucción si el bit b del registro f es “0”
BTFSS f,b
Se salta la siguiente instrucción si el bit b del registro f es “1”
Instrucciones orientadas a constantes de control: ADDLW k
Le suma el valor k al registro W
ANDLW k
Operación lógica AND entre W y el calor k (resultado en W)
CALL k
Llamada a subrutina cuyo inicio esta en la dirección k
CLRWDT
Borra el registro Watchdog
SUBLW k
Le resta a k el valor W. Resultado en W
GOTO k
Salta a la dirección k de programa
IORLW k
Operación lógica OR entre W y el valor k (resultado en W)
MOVLW k
Carga el acumulador con el valor k
Instrucciones orientadas a constantes de control: RETLW k
Carga el valor k en W y vuelve de la subrutina
RETURN
Vuelve de una subrutina
XORLW k
Realiza la operación logica XOR (OR exclusiva) entre W y k. Resultado en W
SLEEP
El pic pasa a modo de Standby
View more...
Comments