Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Estas son las todas las instrucciones que hay para poder programar el Pic 16c5x, 16c64, 16c71, 16c74,
16c84, 16f84, 16f873. Las encontraremos en orden alfabetico.
En total son 37 y haciendo un clic sobre una de ellas podemos acceder a su respectiva descripcin:
NOTA: Las instrucciones OPTION y TRIS incluidas en este listado, no forman parte del set de
instrucciones de los PIC 16f84 y 16f873.
ADDLW
ADDWF
ANDLW
ANDWF
BCF
BSF
BTFSC
BTFSS
CALL
CLRF
CLRW
CLRWDT
COMF
DECF
DECFSZ
GOTO
INCF
INCFSZ
IORLW
IORWF
MOVF
MOVLW
MOVWF
NOP
OPTION
RETFIE
RETLW
RETURN
RLF
RRF
SLEEP
SUBLW
SUBWF
SWAPF
TRIS
XORLW
XORWF
ADDLW ADD Literal to W
Sintaxis ADDLW k
Codificacin
11 111x kkkk kkkk
Palabras, Ciclos 1, 1
Operacin W + k -> W
Bit de estado C, DC, Z
Descripcin
Aade el contenido de W al
contenido de k, y almacena el
resultado en W
Atencin: Esta instruccin no
existe en los Pic 16c5X
ADDWF ADD W to F
Sintaxis ADDWF f, d
Codificacin
0001 11df ffff
00 0111 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
W + f -> f si d=1
W + f -> W si d=0
Bit de
estado
C, DC, Z
Descripcin
Aade el contenido de W al
contenido de f, y almacena el
resultado en W si d=0, y en f si d=1
Volver a la lista
ANDLW AND Literal and W
Sintaxis ANDLW k
Codificacin
1110 kkkk kkkk
11 1001 kkkk Kkkk
Palabras,
Ciclos
1, 1
Operacin W AND k -> W
Bit de
estado
Z
Descripcin
Efecta un AND lgico entre el
contenido de W y el literal k, y lo
almacena en W
ANDWF AND W with F
Sintaxis ANDWF f, d
Codificacin
0001 01df ffff
00 0101 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
W AND f -> f si d=1
W AND f -> W si d=0
Bit de
estado
Z
Descripcin
Efecta un AND lgico entre el
contenido de W y el contenido de f, y
almacena el resultado en W si d=0, y
en f si d=1
Volver a la lista
BCF Bit Clear F
Sintaxis BCF f, b
Codificacin
0100 bbbf ffff
01 00bb bfff ffff
Palabras,
Ciclos
1, 1
Operacin 0 -> b(f)
Bit de
estado
Ninguno
Descripcin Pone a cero el bit numero b de f
BSF Bit Set F
Sintaxis BSF f, b
Codificacin
0101 bbbf ffff
01 01bb bfff ffff
Palabras,
Ciclos
1, 1
Operacin 1 -> b(f)
Bit de
estado
Ninguno
Descripcin Pone a uno el bit numero b de f
Volver a la lista
BTFSC Bit Test, Skip If Clear
Sintaxis BTFSC f, b
Codificacin
0110 bbbf ffff
01 10bb bfff ffff
Palabras,
Ciclos
1, 1 o 2
Operacin Salta si b(f)=0
Bit de
estado
Ninguno
Descripcin
Si el bit numero b de f es nulo, la
instruccin que sigue a esta se
ignora y se trata como un NOP. En
este caso, y solo en este caso, la
instruccin BTFSC precisa dos ciclos
para ejecutarse.
BTFSS Bit Test, Skip If Set
Sintaxis BTFSS f, b
Codificacin
0111 bbbf ffff
01 11bb bfff ffff
Palabras,
Ciclos
1, 1 o 2
Operacin Salta si b(f)=1
Bit de
estado
Ninguno
Descripcin
Si el bit numero b de f esta en uno,
la instruccin que sigue a esta se
ignora y se trata como un NOP. En
este caso, y solo en este caso, la
instruccin BTFSC precisa dos ciclos
para ejecutarse.
Volver a la lista
CALL Subrutina Call
Sintaxis CALL k
Codificacin
1001 kkkk kkkk
10 0kkk kkkk kkkk
Palabras,
Ciclos
1, 2
Operacin
En el caso de los 16c5X:
PC + 1 -> Pila, k -> PC(0-7), 0 ->
PC(8), PA2 a PA0 -> PC(9-11)
En el caso de los 16c64, 71, 74, 84:
PC + 1 -> Pila, k -> PC(0-10),
PCLATH(3,4) -> PC(11,12)
Bit de
estado
Ninguno
Descripcin Guarda la direccin de vuelta en la
CLRF Clear F with F
Sintaxis CLRF f
Codificacin
0000 011f ffff
00 0001 1fff ffff
Palabras,
Ciclos
1, 1
Operacin 00 -> f
Bit de
estado
Z
Descripcin
Pone el contenido de f a cero y
activa el bit Z.
pila y despues llama a la subrutina
situada en la direccin cargada en el
PC.
Atencin: El modo de calculo de la
direccin difiere segn la familia PIC
utilizada. Tambin hay que
posicionar bien PA2, PA1, PA0
(16c5X) o el registro PCLATH (en los
demas PIC), antes de ejecutar la
instruccin CALL
Volver a la lista
CLRW Clear W register
Sintaxis CLRW
Codificacin
0000 0100 0000
00 0001 0xxx xxxx
Palabras,
Ciclos
1, 1
Operacin 00 -> W
Bit de
estado
Z
Descripcin
Pone el registro W a cero y activa el
bit Z
CLRWDT Clear Watchdog Timer
Sintaxis CLRWDT
Codificacin
0000 0000 0100
00 0000 0110 0100
Palabras,
Ciclos
1, 1
Operacin
00 -> WDT y 0 -> predivisor del
temporizador
Bit de
estado
1 -> TO y 1 -> PD
Descripcin
Pone a cero el registro contador del
temporizador watchdog, asi como el
predivisor
Volver a la lista
COMF Complement F
Sintaxis COMF f, d
Codificacin
0010 01df ffff
00 1001 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
~f -> f su d=1
~f -> W si d=0
Bit de
estado
Z
Descripcin
Hace un complemento de f bit a bit.
El resultado lo almacena de nuevo
en f si d=1 (borra el anterior), o en
W si d=0 (f no vara)
DECF Decrement F to F
Sintaxis DECF f, d
Codificacin
0000 11df ffff
00 0011 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
f - 1 -> f si d=1
f - 1 -> W si d=0
Bit de
estado
Z
Descripcin
Decrementa el contenido de f en
una unidad. El resultado se guarda
en W si d=0 (f no varia), y en f si
d=1
Volver a la lista
DECFSZ Decrement F, Skip If Zero
Sintaxis DECFSZ f, d
Codificacin
0010 11df ffff
GOTO Salto Incondicionalwith F
Sintaxis GOTO k
Codificacin
101k kkkk kkkk
00 1011 dfff ffff
Palabras,
Ciclos
1, 1(2)
Operacin
f - 1 -> f si d=1
f - 1 -> W si d=0
Bit de
estado
Ninguno
Descripcin
Decrementa el contenido de f en
una unidad. El resultado se guarda
en W si d=0 (f no varia), y en f si
d=1
Si el reusltado es nulo, se ignora la
siguiente instruccin y en este caso
la instruccin dura dos ciclos.
10 1kkk kkkk kkkk
Palabras,
Ciclos
1, 2
Operacin
En el caso de los 16c5X:
k -> PC(0-8), PA2 PA1, PA0 -> PC(9-
11)
En el caso de los 16c64,71,74 y 84:
k -> PC(0-10), PCLATH(3,4) ->
PC(11,12)
Bit de
estado
Ninguno
Descripcin
LLama a la subrutina situada en la
direccin cargada en el PC
Atencin: El modo de clculo de la
direccin difiere segn la familia de
PIC utilizada. Tambin hay que
posicionar correctamente PA2, PA1,
PA0 (16c5X) o el registro PCLATH
(en los demas PIC) antes de ejecutar
la instruccin GOTO
Volver a la lista
INCF Increment F
Sintaxis INCF f, d
Codificacin
0010 10df ffff
00 1010 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
f + 1 -> f si d=1
f + 1 -> W si d=0
Bit de
estado
Z
Descripcin
Incrementa el contenido de f en una
unidad. El resultado se almacena de
nuebo en f si d=1 y en W si d=0(en
este caso f no vara)
INCFSZ Increment F, Skip if Zero
Sintaxis INCFSZ f, d
Codificacin
0011 11df ffff
00 1111 dfff ffff
Palabras,
Ciclos
1, 1(2)
Operacin
f + 1 -> f si d=1
f + 1 -> W si d=0
En ambos casos: Salto si f + 1 = 0
Bit de
estado
Ninguno
Descripcin
Incrementa el contenido de f en una
unidad. El resultado se guarda de
nuevo en f si d=1 y en w si d=0 (en
este caso f no varia). Si el resultado
es nulo, se ignora la siguiente
instruccin y en este caso, esta
instruccin dura dos ciclos
Volver a la lista
IORLW Inclusive OR Literal With W
Sintaxis IORLW k
Codificacin
1101 kkkk kkkk
11 1000 kkkk kkkk
Palabras,
Ciclos
1, 1
Operacin W OR k -> W
IORWF Inclusive OR W With f
Sintaxis IORWF f, d
Codificacin
0001 00df ffff
11 0100 dfff ffff
Palabras,
Ciclos
1, 1
Operacin W OR f -> f si d=1
Bit de
estado
Z
Descripcin
Efecta un OR lgico inclusivo entre
el contenido de W y el literal K, y
almacena el resultado en W
W OR f -> W si d=0
Bit de
estado
Z
Descripcin
Efecta un OR lgico inclusivo entre
el contenido de W y el contenido de
f, y almacena el resultado en f si
d=1 o en W si d=0
Volver a la lista
MOVF Move F
Sintaxis MOVF f, d
Codificacin
0010 00df ffff
00 1000 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
f -> f si d=1
f -> W si d=0
Bit de
estado
Z
Descripcin
Pone el contenido de f en f si d=1 o
f en W si d=0
Atencin: El desplazamiento de f en
f que pareceria inutil, permite
comprobar el contenido de f con
respecto a cero ya que esta
instuccin acta sobre el bit Z
MOVLW Move Literal to W with F
Sintaxis MOVLW k
Codificacin
1100 kkkk kkkk
11 00xx kkkk kkkk
Palabras,
Ciclos
1, 1
Operacin k -> W
Bit de
estado
Ninguno
Descripcin Carga W con el literal k
Volver a la lista
MOVWF Move W to F
Sintaxis MOVWF f
Codificacin
0000 001f ffff
00 0000 1fff ffff
Palabras,
Ciclos
1, 1
Operacin W -> f
Bit de
estado
Ninguno
Descripcin Carga f con el contenido de W
NOP No Operation
Sintaxis NOP
Codificacin
0000 0000 0000
00 0xx0 0000
Palabras,
Ciclos
1, 1
Operacin Ninguna
Bit de
estado
Ninguna
Descripcin
Consume tiempo de la maquina y
ocupa un lugar en la memoria de
programa.
Volver a la lista
OPTION Load Option Register
Sintaxis Option
Codificacin
0000 0000 0010
RETFIE Return From Interrupt
Sintaxis RETFIE
Codificacin
00 0000 0000 1001
00 0000 0110 0010
Palabras,
Ciclos
1, 1
Operacin W -> OPTION
Bit de
estado
Ninguno
Descripcin
Carga el registro OPTION con el
contenido de W
Atencin: Esta instruccin no debe
utilizarse en otros circuitos que no
sean los PIC 16c5x. Sin embargo, es
correctamente interpretada por los
circuitos 16c64, 71, 74, 84 con el fin
de asegurar una compatibilidad
ascendente
Palabras,
Ciclos
1, 2
Operacin Pila -> PC, 1 -> GIE
Bit de
estado
Ninguno
Descripcin
Carga el PC con el valor que se
encuentra en la parte superior de la
pila, asegurando asi la vuelta de la
interrupcin. Pone a 1 el bit GIE,
con el fin de autorizar de nuevo que
se tengan en cuenta las
interrupciones
Atencin: Esta interrupcin dura
dos ciclos
Esta instruccin no existe para los
PIC 16c5X
Volver a la lista
RETLW Return Literal to W
Sintaxis RETLW k
Codificacin
1000 kkkk kkkk
11 01xx kkkk kkkk
Palabras,
Ciclos
1, 2
Operacin k -> W, Pila -> PC
Bit de
estado
Ninguno
Descripcin
Carga W con el literal k, y despus
carga el PC con el valor que se
encuentra en la parte superior de la
pila, efectuando asi un retorno de
subrutina
Atencin: Esta instruccin dura dos
ciclos
RETURN Return from Subroutinewith F
Sintaxis RETURN
Codificacin
00 0000 0000 0000
Palabras,
Ciclos
1, 2
Operacin Pila -> PC
Bit de
estado
Ninguno
Descripcin
Carga el PC con el valor que se
encuentra en la parte superior de la
pila, efectuando asi una vuelta a la
subrutina. Se trata de la instruccin
RETLW simplificada
Atencin:Esta instruccin dura dos
ciclos
Esta instruccin no existe en los PIC
16c5X
Volver a la lista
RLF Rotate Left F through Carry
Sintaxis RLF f,d
Codificacin
0011 01df ffff
00 1101 dfff ffff
Palabras,
Ciclos
1, 1
Operacin ver descr.
Bit de
estado
C
Descripcin
Rotacin de un bit a la izquierda del
contenido de f, pasando por el bit de
acarreo C. Si d=1 el resultado se
almacena en f si d=0 el resultado se
RRF Rotate Right F through Carry
Sintaxis RRF f, d
Codificacin
0011 00df ffff
00 1100 dfff ffff
Palabras,
Ciclos
1, 1
Operacin Ver descr.
Bit de
estado
C
Descripcin
Rotacin de un bit a la derecha del
contenido de f, pasando por el bit de
acarreo C. Si d=1 el resultado se
introduce en f, si d=0 el resultado se
almancena en W
amacena en W
Volver a la lista
SLEEP Sleep
Sintaxis SLEEP
Codificacin
0000 0000 0011
00 0000 0110 0011
Palabras,
Ciclos
1, 1
Operacin
0 -> PD, 1 -> TO, 00 -> WDT, 0 ->
Predivisor del WDT
Bit de
estado
PD, TO
Descripcin
Pone el circuito a dormir con parada
del oscilador. Su consumo es inferior.
Atencin: Use esta instruccin con
mucho cuidado, pues puede provocar
que el micro no despierte si no se ha
seteado correctamente.
SUBLW Substract W from Literal
Sintaxis SUBLW k
Codificacin
11 110x kkkk kkkk
Palabras,
Ciclos
1, 1
Operacin k - W -> W
Bit de
estado
C, DC, Z
Descripcin
Sustrae el contenido de W del literal
k, y almacena el resultado en W. La
sustraccin se realiza en
complemento a dos
Atencin: Esta instruccin no existe
en los Pic 16c5X
Volver a la lista
SUBWF Substract W from F
Sintaxis SUBWF f, d
Codificacin
0000 10df ffff
00 0010 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
f - W -> f si d=1
f - W -> W si d=0
Bit de
estado
C, DC, Z
Descripcin
Sustrae el contenido de W del
contenido de f, y almacena el
resultado en W si d=0 y en f si d=1.
La sustraccin se realiza en
complemento a dos
SWAPF Swap F to F
Sintaxis SWAPF f, d
Codificacin
0011 11df ffff
00 1110 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
f(0-3) -> f(4-7) y f(4-7) -> f(0-3)
Resultado -> f si d=1
Resultado -> W si d=0
Bit de
estado
Ninguno
Descripcin
Intercambia los cuatro bit de mayor
peso por los cuatro de menor peso de
f, y almacena el resultado en W si
d=0, y en f si d=1
Volver a la lista
TRIS Load TRIS Register
Sintaxis TRIS f
Codificacin
0000 0000 0fff
00 0000 0110 0fff
Palabras,
Ciclos
1, 1
XORLW Exclusive OR Literal With W
Sintaxis XORLW k
Codificacin
1111 kkkk kkkk
11 1010 kkkk kkkk
Palabras,
Ciclos
1, 1
Operacin W -> registro TRIS del puerto f
Bit de
estado
Ninguno
Descripcin
Carga el contenido de W en el
registro TRIS del puerto f.
Atencin: Esta instruccin no debe
utilizarse en otros circuitos que no
sean los Pic 16c5X. No obstante, es
correctamente interpretada por los
circuitos 16c64, 71, 74, 84, con el fin
de asegurar una compatibilidad
ascendente
Operacin W OR (Exclusivo) k -> W
Bit de
estado
Z
Descripcin
Efecta un OR lgico exclusivo entre
el contenido de W y el contenido del
Literal K y almacena el resultado en
W
Volver a la lista
XORWF Exclusive Or W with F
Sintaxis XORWF f,d
Codificacin
0001 10df ffff
00 0110 dfff ffff
Palabras,
Ciclos
1, 1
Operacin
W OR (Exclusivo) f -> f si d=1
W OR (Exclusivo) f -> W si d=0
Bit de
estado
Z
Descripcin
By: Alvaro
A. Vera
Sch.
Efecta un Or lgico exclusivo entre el contenido de
W y el contenido de f y almacena el resultado en f si
d=1 o en W si d=0