Microcontroladores: Instrucciones de Carga.
No quiero hacer un post con muchas palabras, debido a que muchas personas no les gusta leer.
En este post hablaremos de las instrucciones de carga las cuales considero son importantes para la programación de microcontroladores de 8 bits (PIC16F84, PIC16F88, PIC16F628A).
La primera instrucción que tenemos es: clrw
Esta instrucción lo que hace es borrar el contenido del registro de trabajo o acumulador “W”
Por ejemplo: si W contiene una combinación de 8 bits que puede ser esta de ejemplo: 11001100, lo que hace la instrucción clrw es borrarla y dejarla de la siguiente forma: 00000000.
gráficamente esto sería lo que haría dicha instrucción.
Esta instrucción puede ser considerada como aritmética.
Como dato adicional, el flag Z una vez limpia el registro W, se activa en 1, por ende Z=1
este flag se pone en 1 cuando la operación aritmética o lógica da como resultado “0” y está contenido en el registro status del microcontrolador, uno de los más importantes.
INSTRUCCIÓN clrf.
se denota de la siguiente forma:
clrf f
Esta instrucción borra el contenido del registro f.
El registro f representa un registro de los bancos de trabajo los cuales van desde 0x00 hasta 0x7F.
Un ejemplo podría ser el siguiente:
clrf FlagReg
y un ejemplo gráfico podría ser el siguiente:
INSTRUCCIÓN movlw.
Se denota de la siguiente forma:
movlw k
Esta instrucción lo que hace es cargar al registro W con el valor de 8 bits de la constante K, para esta instrucción no hay flags afectados del registro status.
Ejemplo: movlw 0x5A
W antes de la instrucción =¿?
W después de la instrucción=0X5A
INSTRUCCIÓN movf f,d
Esta instrucción se encarga de cargar el contenido del registro f en un registro destino dependiendo del valor de “d” si d=0 o d=1.
Si d = 0, el destino es el registro W
si d = 1, el destino es el propio registro f
El flag Z del registro status quedará afectado si el resultado de la operación es cero.
Ejemplo: movf PORTA,0 ;Esto quiere decir que el contenido de PORTA, será trasladado al registro W.
Recuerde que el destino definido como 0 indica que irá al registro W.
Ejemplo: movf FSR,1 ;Esto quiere decir que el contenido de FSR, será trasladado al mismo registro FSR.
Recuerde que el destino definido como 1 indica que irá al registro f.
INSTRUCCIÓN movwf f
Esta instrucción carga el contenido del registro “W” al registro f.
Ejemplo: movwf PORTB
CONTENIDOS RELEVANTES.