Juegos instrucciones PIC
INSTRUCCIONES QUE MANEJAN REGISTROS
Nemónicos
operandos
Descripción
Ciclos
Flags
ADDWF
f,d
Suma W y f
1
C, DC, Z
ANDWF
f,d
AND W con f
1
Z
CLRF
f
Borra f
1
Z
CLRW
---
Borra W
1
Z
COMF
f,d
Complementa f
1
Z
DECF
f,d
Decrementa f
1
ZDECFSZ
f,d
Decrementa f, si es 0 salta
1 (2)
Ninguno
INCF
f,d
Incrementa f
1
Z
INCFSZ
f,d
Incrementa f, si es 0 salta
1
Ninguno
IORWF
f,d
OR entre W y f
1
Z
MOVF
f,d
Mueve f
1
Z
MOVWF
f
Mueve W a f
1
Ninguno
NOP
---
No opera
1
Ninguno
RLF
f,d
Rotaf a la izqda. a través del carry
1
C
RRF
f,d
Rota f a la dcha. a través del carry
1
C
SUBWF
f,d
Resta a f el reg. W
1
C, DC, Z
SWAPF
f,d
Intercambia f
1
Ninguno
XORWF
f,d
XOR de W con f
1
Z
INSTRUCCIONES QUE MANIPULAN BITS
BCF
f,b
Borra bit de f
1
Ninguno
BSF
f,b
Pone a 1el bit de f
1
Ninguno
BTFSC
f,b
Comprueba un bit de f y salta si es 0
1 (2)
Ninguno
BTFSS
f,b
Comprueba un bit de f y salta si es 1
1 (2)
Ninguno
INSTRUCCIONES DE CONTROL Y DE OPERANDOS INMEDIATOS
ANDLW
k
AND inmediato con W
1
Z
CALL
k
Llamada a subrutina
2
Ninguno
CLRWDT
k
Borra Watchdog
1
TO,PD
GOTO
k
Salto incondicional
2
Ninguno
IORLW
k
OR inmediato con W
1
Z
MOVLW
k
Mueve a W un valor inmediato
1
Ninguno
OPTION
k
Carga el registro OPTION
1
Ninguno
RETLW
k
Retorno y carga de W
2
Ninguno
SLEEP
---
Pasa a estado de reposo
1
TO, PD
TRIS
fCarga el registro
1
Ninguno
XORLW
k
OR exclusiva a W
1
Z
ADDWF
Suma W y f
Sintaxis:
[label] ADDWF f,d
Operandos:
d=0 ó d=1; 0 <= f <= 31
Operación:
(W) + (f) --> (dest)
Flags afectados:
C, DC, Z
Descripción:
Suma el contenido del registro W y el registro "f". Si "d" es 0, el resultado se almacena en el registro W. Si "d" es 1 el resutado se almacena enel registro "f".
Ejemplo:
ADDWF REG,0 Antes de la instrucción: Después de la instrucción:
W= 0x17 REF= 0xC2 W= 0xD9 REG= 0xC2
ANDWF
W AND f
Sintaxis:
[label] ANDWF f,d
Operandos:
d=0 ó d=1; 0 <= f <= 31
Operación:
(W) AND (f) --> (dest)
Flags afectados:
Z
Descripción:
Realiza la operación lógica AND entre el registro W y el registro "f". Si "d" es 0 el resultado se almacena en elregistro W. Si "d" es 1, el resultado se almacena en el registro "f".
Ejemplo:
ANDWF REG,1 Antes de la instrucción: Después de la instrucción:
W=0x17 REG= 0xC2 W=0x17 REG= 0x02
ANDLW
W AND literal
Sintaxis:
[label] ANDWL k
Operandos:
0 <= k <= 255
Operación:
(W) AND (k) --> (W)
Flags afectados:
Z
Descripción:
Realiza la operación lógica AND entre el registro W y la constante "k". El resultadose almacena en el registro W.
Ejemplo:
ANDLW 0x5FAntes de la instrucción: Después de la instrucción:
W= 0xA3 W= 0x03
BCF
Borra un bit
Sintaxis:
[label] BCF f,b
Operandos:
0 <= f <= 31; 0 <= b <= 7;
Operación:
0 --> (f < b >)
Flags afectados:
Ninguno
Descripción:
Borra el bit "b" del registro "f".
Ejemplo:
BCF REG,7Antes de la instrucción: Después de la instrucción:
REG = 0x0A REG =0x47
BSF
Activa un bit
Sintaxis:
[label] BSF f,b
Operandos:
0 <= f <= 31; 0 <= b <= 7;
Operación:
1 --> (f < b >)
Flags afectados:
Ninguno
Descripción:
Activa el bit "b" del registro "f".
Ejemplo:
BSF REG,0x0AAntes de la instrucción: Después de la instrucción:
REG = 0x0A REG = 0x8A
BTFSC
Test de bit y salto
Sintaxis:
[label] BTFSC f,b
Operandos:
0 <= f <= 31; 0 <= b <= 7;...
Regístrate para leer el documento completo.