0% encontró este documento útil (0 votos)
311 vistas4 páginas

Funciones para Programar en Ensamblador para Pic 16f887

Este documento presenta una lista de las principales instrucciones del microcontrolador PIC16F887, describiendo brevemente la función de cada una e incluyendo ejemplos de su sintaxis. Algunas de las instrucciones más importantes son MOVF, MOVWF, CLRF, ADDWF, SUBWF, ANDWF, IORWF, XORWF y BCF, entre otras.

Cargado por

El.irvin
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
311 vistas4 páginas

Funciones para Programar en Ensamblador para Pic 16f887

Este documento presenta una lista de las principales instrucciones del microcontrolador PIC16F887, describiendo brevemente la función de cada una e incluyendo ejemplos de su sintaxis. Algunas de las instrucciones más importantes son MOVF, MOVWF, CLRF, ADDWF, SUBWF, ANDWF, IORWF, XORWF y BCF, entre otras.

Cargado por

El.irvin
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

NOMBRE DE ALUMNOS:

EDWIN GIOVANNI FABIAN PEREZ FP182084

IRVIN JONATHAN RAMIREZ LOPEZ RL172634

PROFESOR:

EDUARDO HENRIQUEZ

MATERIA:

MICROCONTROLADORES

TEMA:

PRIMER ENSAYO (INSTRUCCIONES PIC16F887)

AÑO:

2019
LISTADO DE ISTRUPCIONES DE PIC16F887

Instrucción Descripción ejemplo


MOVF Lee el contenido del registro 0x20 0XAF
F y el resultado lo guardara 0x21 0XE3
en W si d=0 y en F si d=1 0X22 0X07
MOVF 0X21,0
MOVWF Lee el contenido de W y lo
escribe en el registro de MOVWF 0x20
RAM indicado por F
MOVLW Carga de contenido a W con MOVLW 0xAA
el valor escrito con el MOVWF 0X20
parámetro K
CLRF Escribe 0x00 en el registro F 0X20 0X22
y Z siempre es 1 después de CLRF 0X20
ejecutarse esta instrucción
CLRW Escribe 0x00 en W. W 0X73
Z siempre es 1 después de CLRW
ejecutarse esta acción
SWAPF Lee el contenido del registro 0x20 0x2E
F y le intercambia los nibbles SWAPF 0X20,0
de lugar (el nibble alto pasa
a la posición del nibble bajo
y viceversa). El resultado se
guardara en W si d=0 y en F
si d=1
ADDWF Suma el contenido de W con REG 0X20 0XAA
el contenido del registro F y W 0X73
el resultado se guardara en ADDWF 0X20,0
W si d=0 y el F si d=1
SUBWF Resta el contenido de W al REG 0X20 0XD9
contenido del registro F y el W 0XAB
resultado se guardara en W SUBWF 0X20,0
si d=0 y en F si d=1
SUBLW Resta el contenido del W 0x75
registro indicado por el SUBLW 0XFF
operando K al contenido de
W
INCF Incrementa el contenido del REG 0X20 0X81
registro F y el resultado se INCF 0X20,0
guardara en W si d=0 y en F
si d=1
DECF Decrementa el contenido del REG 0X20 0X82
registro F y el resultado se DECF 0X20,1
guardara en W si d=0 y en F
si d=1
ANDWF Realiza la función lógica REG 0X20 0XAA
AND con el contenido de W W 0X73
y el contenido del registro F ANDWF 0X20,1
y el resultado se guardará
en W si d=0 y en F si d=1
ANDLW Realiza la función lógica W 0XAB
AND con el contenido de W ANDLW 0X25
y el valor escrito en el
parámetro K
IORWF Realiza la función lógica OR REG 0X20 0XA6
con el contenido de W y el W 0X8B
contenido de F y el resultado IORWF 0X20,1
se guardara en W si d=1 y
en F si d=0
IORLW Realiza la función lógica OR W 0X21
con el contenido de W y el IORLW 0X75
valor escrito en el parámetro
K
XORWF Realiza la función lógica OR REG 0X20 0XE2
exclusiva con el contenido W 0X6C
de W y el contenido de F y el XORWF 0X20,1
resultado se guardara en W
si d=0 y en F si d=1
XORLW Realiza la función lógica OR W 0X8A
exclusiva con el contenido XORLW 0XCD
de W y el contenido
registrado por el parámetro
K
BCF Escribe 0 en el bit “b” del BCF 0X20,7
registro F
BSF Escribe 1 en el bit “b” del BSF 0X20,0
registro F
BTFSC Si el bit b del registro F está MOVLW 0XAA
en cero el contador del MOVWF 0X20
programa se incrementa en INCF 0X20
uno. BTFSC 0X20, 0
De otra manera continua
normalmente
BTFSS Si el bit b del registro F está MOVLW 0XA9
en uno el contador del MOVWF 0X20
programa se incrementa en DECF 0X20
uno. BTFSS 0X20, 0
De otra manera continua
normalmente
ADDLW Suma el contenido de W con W 0X6C
un valor de 8 bits escrito por ADDLW 0X3F
un parámetro K y lo asigna a
W
DECFSZ Decrementa en una unidad MOVLW 0X02
el contenido del registro F y MOVWF 0X20
el resultado se guardará en DECFSZ 0X20,1
W su d=0 y en F si d=1.
Si el resultado es 0
incrementa en 1 el contador
de programa
INCFSZ Incrementa en una unidad el MOVLW 0XFE
contenido de F y el resultado MOVWF 0X20
se guardará en W si d=0 y en INCFSZ 0X20,1
F si d=1
Si el resultado es 0 aumenta
en 1 el contador del
programa
COMF Realiza el complemento a 1 0X20 0X7D
del contenido del registro de COMF 0X20,1
RAM indicado por F.
El resultado se guardara en
W si d=0 y en F si d=1
RLF Lee el contenido del registro 0x20 0XAA
de RAM indicado por F y lo W 0X73
rota a la izquierda tomando ADDWF 0X20,1
en cuenta el acarreo. RLF 0X20,1
El resultado se guardara en RLF 0X20,0
W si d=0 y en F si d=1
RRF Lee el contenido del registro 0x20 0X3B
de RAM indicado por F y lo RRF 0X20,1
rota a la derecha tomando RRF 0X20,0
en cuenta el acarreo.
El resultado se guardara en
W si d=0 y en F si d=1
GOTO Salta hacia una etiqueta GOTO BUCLE
NOP Deja pasar un ciclo de NOP
maquina

También podría gustarte