Está en la página 1de 17

Set de instrucciones Microcontrolador PIC.

UNIVERSIDAD NACIONAL DE HUANCAVELICA CORNEJO AGUIRRE RONALD INGENIERIA ELECTRONICA

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 Sintaxis

ADD Literal to W ADDLW k 11 111x kkkk kkkk

ADDWF Sintaxis

ADD W to F ADDWF f, d 0001 11df ffff 00 0111 dfff ffff

Codificacin

Codificacin

Palabras, Ciclos

1, 1

Palabras,

1, 1

Operacin Bit de estado

W + k -> W C, DC, Z Aade el contenido de W al contenido de k, y almacena el resultado en W

Ciclos W + f -> f si d=1 Operacin W + f -> W si d=0 Bit de estado C, DC, Z

Descripcin Atencin: Esta instruccin no existe en los Pic 16c5X

Aade el contenido de W al contenido de f, y Descripcin almacena el resultado en W si d=0, y en f si d=1

Volver a la lista

ANDLW Sintaxis

AND Literal and W ANDLW k 1110 kkkk kkkk 11 1001 kkkk Kkkk

ANDWF Sintaxis

AND W with F ANDWF f, d 0001 01df ffff 00 0101 dfff ffff

Codificacin

Codificacin

Palabras, Ciclos Operacin Bit de estado

1, 1 W AND k -> W

Palabras, Ciclos Operacin

1, 1 W AND f -> f si d=1 W AND f -> W si d=0

Z Bit de estado

Efecta un AND lgico entre el contenido de W Descripcin y el literal k, y lo almacena en W

Efecta un AND lgico entre el contenido de W Descripcin 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 Sintaxis

Bit Clear F BCF f, b 0100 bbbf ffff 01 00bb bfff ffff

BSF Sintaxis

Bit Set F BSF f, b 0101 bbbf ffff 01 01bb bfff ffff

Codificacin

Codificacin

Palabras, Ciclos Operacin Bit de estado Descripcin

1, 1 0 -> b(f) Ninguno Pone a cero el bit numero b de f

Palabras, Ciclos Operacin Bit de estado Descripcin

1, 1 1 -> b(f) Ninguno Pone a uno el bit numero b de f

Volver a la lista

BTFSC Sintaxis

Bit Test, Skip If Clear BTFSC f, b

BTFSS Sintaxis

Bit Test, Skip If Set BTFSS f, b

0110 bbbf ffff Codificacin 01 10bb bfff ffff

0111 bbbf ffff Codificacin 01 11bb bfff ffff

Palabras, Ciclos Operacin Palabras, Ciclos Operacin Bit de estado 1, 1 o 2 Salta si b(f)=0 Ninguno Bit de estado

1, 1 o 2 Salta si b(f)=1 Ninguno

Si el bit numero b de f es nulo, la instruccin que sigue a esta se ignora y se trata como Descripcin un NOP. En este caso, y solo en este caso, la instruccin BTFSC precisa dos ciclos para ejecutarse.

Si el bit numero b de f esta en uno, la instruccin que sigue a esta se ignora y se trata Descripcin como un NOP. En este caso, y solo en este caso, la instruccin BTFSC precisa dos ciclos para ejecutarse.

Volver a la lista

CALL Sintaxis

Subrutina Call CALL k 1001 kkkk kkkk 10 0kkk kkkk kkkk

CLRF Sintaxis

Clear F with F CLRF f

0000 011f ffff Codificacin 00 0001 1fff ffff

Codificacin

Palabras, Ciclos

1, 2 En el caso de los 16c5X: Palabras, Ciclos Operacin Bit de estado PC + 1 -> Pila, k -> PC(0-7), 0 -> PC(8), PA2 a PA0 -> PC(9Descripcin 1, 1 00 -> f Z Pone el contenido de f a cero y activa el bit Z.

Operacin

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 Guarda la direccin de vuelta en la pila y despues llama a la subrutina situada en la direccin cargada en el PC.

Descripcin 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 Sintaxis

Clear W register CLRW 0000 0100 0000 00 0001 0xxx xxxx

CLRWDT Sintaxis

Clear Watchdog Timer CLRWDT 0000 0000 0100 00 0000 0110 0100

Codificacin Codificacin

Palabras,

1, 1

Ciclos Operacin Bit de estado Descripcin 00 -> W Z Pone el registro W a cero y activa el bit Z

Palabras, Ciclos Operacin Bit de estado

1, 1 00 -> WDT y 0 -> predivisor del temporizador 1 -> TO y 1 -> PD

Pone a cero el registro contador del Descripcin temporizador watchdog, asi como el predivisor

Volver a la lista

COMF Sintaxis

Complement F COMF f, d 0010 01df ffff 00 1001 dfff ffff

DECF Sintaxis

Decrement F to F DECF f, d 0000 11df ffff 00 0011 dfff ffff

Codificacin

Codificacin

Palabras, Ciclos

1, 1 ~f -> f su d=1

Palabras, Ciclos

1, 1 f - 1 -> f si d=1

Operacin Operacin ~f -> W si d=0 Bit de estado Z f - 1 -> W si d=0 Bit de estado Z

Hace un complemento de f bit a bit. El resultado lo almacena Descripcin de nuevo en f si d=1 (borra el anterior), o en W si d=0 (f no vara)

Decrementa el contenido de f en una Descripcin unidad. El resultado se guarda en W si d=0 (f no varia), y en f si d=1

Volver a la lista

DECFSZ Sintaxis

Decrement F, Skip If Zero DECFSZ f, d 0010 11df ffff 00 1011 dfff ffff

GOTO Sintaxis

Salto Incondicionalwith F GOTO k 101k kkkk kkkk 10 1kkk kkkk kkkk

Codificacin

Codificacin

Palabras, Ciclos

1, 1(2) f - 1 -> f si d=1

Palabras, Ciclos

1, 2 En el caso de los 16c5X:

Operacin f - 1 -> W si d=0 Bit de estado Ninguno 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 Descripcin Si el reusltado es nulo, se ignora la siguiente instruccin y en este caso la instruccin dura dos ciclos. Operacin 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) Ninguno LLama a la subrutina situada en la direccin cargada en el PC

Bit de estado

Descripcin 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 Sintaxis

Increment F INCF f, d 0010 10df ffff 00 1010 dfff ffff

INCFSZ Sintaxis

Increment F, Skip if Zero INCFSZ f, d 0011 11df ffff 00 1111 dfff ffff

Codificacin Codificacin

Palabras, Ciclos

1, 1 f + 1 -> f si d=1

Palabras, Ciclos

1, 1(2) f + 1 -> f si d=1

Operacin f + 1 -> W si d=0 Bit de estado Z Bit de estado Operacin f + 1 -> W si d=0 En ambos casos: Salto si f + 1 = 0 Ninguno

Incrementa el contenido de f en una unidad. El resultado se almacena Descripcin de nuebo en f si d=1 y en W si d=0(en este caso f no vara)

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 Descripcin 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 Sintaxis

Inclusive OR Literal With W IORLW k 1101 kkkk kkkk 11 1000 kkkk kkkk

IORWF Sintaxis

Inclusive OR W With f IORWF f, d 0001 00df ffff 11 0100 dfff ffff

Codificacin

Codificacin

Palabras, Ciclos Operacin Bit de estado

1, 1 W OR k -> W Z

Palabras, Ciclos

1, 1 W OR f -> f si d=1

Operacin W OR f -> W si d=0 Bit de estado Z

Efecta un OR lgico inclusivo entre el Descripcin contenido de W y el literal K, y almacena el resultado en W

Efecta un OR lgico inclusivo entre el contenido de W y el Descripcin contenido de f, y almacena el resultado en f si d=1 o en W si d=0

Volver a la lista

MOVF Sintaxis

Move F MOVF f, d 0010 00df ffff 00 1000 dfff ffff

MOVLW Sintaxis

Move Literal to W with F MOVLW k 1100 kkkk kkkk 11 00xx kkkk kkkk

Codificacin Codificacin Palabras, Ciclos

1, 1 f -> f si d=1 Palabras, Ciclos Operacin f -> W si d=0 Bit de estado 1, 1 k -> W Ninguno

Operacin

Bit de estado

Z Pone el contenido de f en f si d=1 o f en W si d=0

Descripcin Carga W con el literal k

Descripcin

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

Volver a la lista

MOVWF Sintaxis

Move W to F MOVWF f

NOP Sintaxis Codificacin

No Operation NOP

Codificacin 0000 001f ffff

00

0000 1fff ffff

0000 0000 0000 00 0xx0 0000

Palabras, Ciclos Operacin Bit de estado

1, 1 W -> f Ninguno

Palabras, Ciclos Operacin Bit de estado

1, 1 Ninguna Ninguna

Carga f con el contenido Descripcin de W

Consume tiempo de la maquina y ocupa un Descripcin lugar en la memoria de programa.

Volver a la lista

OPTION Sintaxis

Load Option Register Option

RETFIE Sintaxis

Return From Interrupt RETFIE 00 0000 0000 1001

0000 0000 0010 00 0000 0110 0010 Codificacin

Codificacin

Palabras, Ciclos Operacin Bit de estado

Palabras, Ciclos 1, 1 W -> OPTION Ninguno Operacin Bit de estado

1, 2 Pila -> PC, 1 -> GIE Ninguno

Carga el registro OPTION con el Descripcin contenido de W

Carga el PC con el valor que se encuentra en la parte superior de la pila, Descripcin 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 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

Atencin: Esta interrupcin dura dos ciclos Esta instruccin no existe para los PIC 16c5X

Volver a la lista

RETLW Sintaxis

Return Literal to W RETLW k

RETURN Sintaxis

Return from Subroutinewith F RETURN 00 0000 0000 0000

1000 kkkk kkkk Codificacin 11 01xx kkkk kkkk

Codificacin

Palabras, Ciclos Operacin Bit de estado

1, 2 k -> W, Pila -> PC Ninguno

Palabras, Ciclos Operacin Bit de estado

1, 2 Pila -> PC Ninguno

Carga W con el literal k, y despus carga el PC con el valor que se Descripcin encuentra en la parte superior de la pila, efectuando asi un

Carga el PC con el valor que se encuentra en la parte superior de la pila, Descripcin efectuando asi una vuelta a la subrutina. Se trata de la instruccin

retorno de subrutina

RETLW simplificada

Atencin: Esta instruccin dura dos ciclos

Atencin:Esta instruccin dura dos ciclos Esta instruccin no existe en los PIC 16c5X

Volver a la lista

RLF Sintaxis

Rotate Left F through Carry RLF f,d

RRF Sintaxis

Rotate Right F through Carry RRF f, d 0011 00df ffff 00 1100 dfff ffff

0011 01df ffff Codificacin 00 1101 dfff ffff

Codificacin

Palabras, Ciclos Operacin Bit de estado

1, 1 ver descr. C

Palabras, Ciclos Operacin Bit de estado

1, 1 Ver descr. C

Rotacin de un bit a la izquierda del contenido de f, pasando por el bit Descripcin de acarreo C. Si d=1 el resultado se almacena en f si d=0 el resultado se almancena en W

Rotacin de un bit a la derecha del contenido de f, pasando por el bit Descripcin de acarreo C. Si d=1 el resultado se introduce en f, si d=0 el resultado se amacena en W

Volver a la lista

SLEEP Sintaxis

Sleep SLEEP 0000 0000 0011 00 0000 0110 0011

SUBLW Sintaxis

Substract W from Literal SUBLW k 11 110x kkkk kkkk

Codificacin

Codificacin

Palabras, Ciclos Operacin Bit de estado

Palabras, Ciclos 1, 1 0 -> PD, 1 -> TO, 00 -> WDT, 0 -> Predivisor del WDT PD, TO Pone el circuito a dormir con parada del oscilador. Su consumo es inferior. Operacin Bit de estado

1, 1 k - W -> W C, DC, Z Sustrae el contenido de W del literal k, y almacena el resultado en W. La sustraccin se realiza en complemento a dos

Descripcin

Descripcin Atencin: Use esta instruccin con mucho cuidado, pues puede provocar que el micro no despierte si no se ha seteado correctamente.

Atencin: Esta instruccin no existe en los Pic 16c5X

Volver a la lista

SUBWF Sintaxis

Substract W from F SUBWF f, d

SWAPF Sintaxis

Swap F to F SWAPF f, d

0000 10df ffff Codificacin 00 0010 dfff ffff

0011 11df ffff Codificacin 00 1110 dfff ffff

Palabras, Ciclos

1, 1 f - W -> f si d=1

Palabras, Ciclos

1, 1 f(0-3) -> f(4-7) y f(4-7) -> f(0-3)

Operacin f - W -> W si d=0 Bit de estado C, DC, Z Bit de estado Operacin

Sustrae el contenido de W del contenido de f, y almacena el resultado en Descripcin W si d=0 y en f si d=1. La sustraccin se realiza en complemento a dos

Resultado -> f si d=1 Resultado -> W si d=0 Ninguno

Intercambia los cuatro bit de mayor peso por los cuatro de menor Descripcin peso de f, y almacena el resultado en W si d=0, y en f si d=1

Volver a la lista

TRIS Sintaxis

Load TRIS Register TRIS f

XORLW Sintaxis

Exclusive OR Literal With W XORLW k 1111 kkkk kkkk 11 1010 kkkk kkkk

0000 0000 0fff 00 0000 0110 0fff Codificacin Codificacin

Palabras, Ciclos Operacin

1, 1 W -> registro TRIS del puerto f

Palabras, Ciclos Operacin

1, 1 W OR (Exclusivo) k ->

Bit de estado

Ninguno Carga el contenido de W en el registro TRIS del puerto f. Bit de estado

W Z

Atencin: Esta instruccin no debe utilizarse en otros Descripcin 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

Efecta un OR lgico exclusivo entre el contenido de W y el Descripcin contenido del Literal K y almacena el resultado en W

Volver a la lista

XORWF Sintaxis

Exclusive Or W with F XORWF f,d 10df 0110 ffff dfff ffff

0001 Codificacin 00

Palabras, Ciclos Operacin

1, 1 W OR (Exclusivo) f -> f si d=1

W OR (Exclusivo) f -> W si d=0 Bit de estado Descripcin Z 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

También podría gustarte