instrucciones pic 16f877

Páginas: 12 (2918 palabras) Publicado: 30 de marzo de 2013
Instrucciones para programar el
PIC16F877

Instrucciones para programar el PIC16F877

2

Instrucciones para programar el PIC16F877

Estos microcontroladores responden a una serie de instrucciones o códigos que se deben grabar en
su memoria de programa, en total son 35. A continuación se encuentra una tabla con la lista
completa y después una descripción de cada una de ellas con elfin de facilitar su aprendizaje.
Si d = 0 el resultado de la operación se almacena en el registro W
Si d = 1 el resultado se almacena en el registro utilizado
Operaciones orientadas a registros
Nemotécnico
Operación
ADDWF
ANDWF
CLRF
CLRW
COMF
DECF
DECFSZ

f,d
f,d
f
f,d
f,d
f,d

INCF
f,d
INCFSZ f,d
IORWF f,d
MOVF
f,d
MOVWF f
NOP
RLF
f,d
RRF

f,d

SUBWF f,d
SWAPFf,d
XORWF f,d

Sumar W y f
AND entre W y f
Limpiar f
Limpiar w
Complementar f
Decrementar f
Decrementar f,
saltar si cero
Incrementar f
Incrementar f,
saltar si cero
OR entre W y f
Mover f
Mover W a f
No operación
Rotar a la izquierda a
través del carry
Rotar a la derecha a
través del carry
Restar W de f
Intercambiar nibbles de f
OR exclusiva entre W y f

Cód. de operación(14 bits)
00
00
00
00
00
00

0111
0101
0001
0001
1001
0011

dfff
ffff
dfff
ffff
1fff
ffff
0XXX XXXX
dfff
ffff
dfff
ffff

00 1011 dfff
00 1010 dfff
00
00
00
00
00

1111
0100
1000
0000
0000

ffff
ffff

dfff
ffff
dfff
ffff
dfff
ffff
1fff
ffff
0XX0 0000

00 1101 dfff

ffff

00
00
00
00

dfff
dfff
dfff
dfff

ffff
ffff
ffff
ffff01 00bb bfff
01 01bb bfff

Z
Z
Z
C

ffff

01 11bb bfff

C,DC,Z
Z
Z
Z
Z
Z

ffff
ffff

01 10bb bfff

Estados
afectados

ffff

1100
0010
1110
0110

C
C,DC,Z
Z

Operaciones orientadas a bits
BCF
f,b
BSF
f,b
BTFSC f,b
BTFSS

f,b

Limpiar bit b de f
Activar bit b de f
Probar bit b de f,
saltar si es cero
Probar bit b de f,
saltar si es unoOperaciones con constantes y de control
ADDLW k
ANDLW k
CALL
k
CLRWDT
GOTO k
IORLW k
MOVLW k
RETFIE
RETLW k
RETURN
SLEEP
SUBLW k
XORLW k

Sumar literal k a W
AND entre k y W
Llamar subrutina
Limpiar WDT
Salta a dirección k
OR entre k y W
Cargar a W con literal k
Retornar de interrupción
Retornar y cargar a W con k
Retornar de subrutina
Ir al modo de bajo consumo
Restarle k a WOR exclusiva entre k y W

11
11
10
00
10
11
11
00
11
00
00
11
11

111X kkkk
1001 kkkk
0kkk kkkk
0000 0110
1kkk kkkk
1000 kkkk
00XX kkkk
0000 0000
01XX kkkk
0000 0000
0000 0110
110X kkkk
1010 kkkk

kkkk
kkkk
kkkk
0100
kkkk
kkkk
kkkk
1001
kkkk
1000
0011
kkkk
kkkk

C,DC,Z
Z
T0,PD
Z

T0,PD
C,DC,Z
Z

3

Instrucciones para programar el PIC16F877Instrucción ADDLW:

Suma un valor constante k al contenido del registro W, el resultado
se guarda en el registro W.

Sintaxis:
ADDLW k
Operación:
(W) + k
Ciclos de instrucción:
1
Bits del registro de estados que se afectan: C, DC, Z
Ejemplo :

ADDLW
d’15’
Antes de la instrucción
Después de la instrucción

Instrucción ADDWF:

registro W = d’10’
registro W = d’25’

Suma elcontenido de un registro f al contenido del registro W, el
resultado se guarda en el registro escogido según el valor del bit d.

Sintaxis:
ADDWF f,d
Operación:
(W) + (f)
Ciclos de instrucción:
1
Bits del registro de estados que se afectan: C, DC, Z
Ejemplo:

ADDWF 15h,0
Antes de la instrucción
Después de la instrucción

Instrucción ANDLW:

registro W = 17h
registro W = 0D9hregistro 15h = 0C2h
registro 15h = 0C2h

Operación lógica AND entre una constante k y el registro W, la
operación se hace bit a bit, el resultado queda en el registro W.

Sintaxis :
ANDLW k
Operación :
(W) AND (k)
Ciclos de instrucción :
1
Bits del registro de estados que se afectan: Z
Ejemplo:

ANDLW b’10101010’
Antes de la instrucción
Después de la instrucción

registro W =...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Pic 16F877
  • Practicas Pic 16F877
  • pic 16f877
  • Pic 16F877
  • Instrucciones Pic 16F877A
  • Pic 16F877
  • Instrucciones del pic 16f84a
  • Instrucciones del pic 16f84

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS