Explicación de las instrucciones básicas de un microcontrolador PIC16F877A

February 14, 2024 | Author: Anonymous | Category: N/A
Share Embed Donate


Short Description

Download Explicación de las instrucciones básicas de un microcontrolador PIC16F877A...

Description

CATEDRÁTICO: ROGELIO FERNANDO HERNÁNDEZ ALARCÓN Alumno: VÍCTOR MANUEL MUÑIZ DEL VALLE GRUPO: 702 VESPERTINO PROGRAMA EDUCATIVO: INGENIERO EN COMPUTACIÓN.

CHILPANCINGO DE LOS BRAVOS; 06 DE MARZO DEL 2019

PIC [1]Es un circuito integrado que permite ser programado para hacer lo que nosotros adaptemos a nuestras necesidades, al ser un componente integrado, este posee en su interior memoria, temporizadores y circuitos auxiliares que nos facilita nuestras tareas.

Microcontrolador [1] es un componente eléctrico integrado el cual puede relacionarse como si fuera una micro computadora, porque es un sistema de procesamiento de datos que incluye elementos de entrada y de salida. Adicionalmente posee un procesador que le permite realizar operaciones matemáticas y posee una memoria flash y RAM que le facilita la tarea de almacenamiento de programas y variables. Su principal función consiste en automatizar, controlar y procesar información de infinidad de procesos caseros e industriales.

Microcontroladores PIC. [1]Existen diferentes microcontroladores PIC en el mercado, podemos encontrar familias de microcontroladores PIC de gama media como la 16F o la 18F y familias un poco más avanzadas como la 24F o 32F. En forma general los PIC tienen una arquitectura Harvard que nos indica que la CPU (microprocesador del chip) está conectada a la memoria por más de 8 líneas. Por lo tanto podemos encontrar chips de 12, 14, 16 y 32 bits en el mercado dependiendo del ancho del bus.

Instrucciones En esta sesión hablaremos de la familia de 16F8XX lo cual posee únicamente 35 instrucciones en ensamblador debido a que posee una arquitectura RISC para poder conseguir velocidad en el cálculo operativo del microcontrolador, a continuación se les presentara una tabla con la lista completa y después una descripción de cada una de ellas con el fin de facilitar cada instrucción. Sintaxis

Descripción

Instrucciones de carga

Status

Ciclos de

Banderas Instrucción

CLRF f

Borra el contenido del registro f

Z

1

CLRW

Borra el contenido del registro W

Z

1

MOVF f,d

Mueve el contenido del registro f al registro (d = W)

Z

1

MOVWF f

Mueve el contenido del registro W al registro f

1

MOVLW k

Guarda en el registro W el valor k ; k = Es Numero

1

Instrucciones de bit BCF f,b

Pone en "0" el bit b del registro f

1

BSF f,b

Pone en "1" el bit b del registro f

1

Instrucciones aritméticas ADDLW k

Suma el valor k al registro W ; k = Es Numero

C,DC,Z

1

ADDWF f,d

Suma el contenido del registro W con el de f

C,DC,Z

1

DECF f,d

Decrementa en una unidad el contenido del registro f

Z

1

INCF f,d

Incrementa en una unidad el contenido del registro f

Z

1

SUBLW k

Resta el valor k al registro W ; k = Es Numero

C,DC,Z

1

SUBWF f,d

Resta el contenido del registro W al registro f

C,DC,Z

1

Instrucciones lógicas ANDLW k

Realiza la operación lógica AND entre el valor k y el registro W

Z

1

ANDWF f,d

Realiza la operación lógica AND entre el contenido del registro W y el de f

Z

1

COMF f,d

Niega el valor del registro f

Z

1

IORLW k

Realiza la operación lógica OR entre el valor k y el registro W

Z

1

IORWF f,d

Realiza la operación lógica OR entre el contenido del registro W y el de f

Z

1

RLF f,d

Rota el contenido del registro f hacia la Izquierda a través del Carry bit

C

1

RRF f,d

Rota el contenido del registro f hacia la Derecha a través del Carry bit

C

1

SWAPF f,d

Intercambia los cuatro primeros bits con los cuatro últimos del registro f

XORLW f

Realiza la operación lógica XOR entre el valor k y el registro W

Z

1

XORWF f,d

Realiza la operación lógica XOR entre el contenido del registro W con el de f

Z

1

1

Instrucciones de salto BTFSC f,b

Lee el bit b del registro f y salta la instrucción siguiente si está en “0”

1 (2 si salta)

BTFSS f,b

Lee el bit b del registro f y salta la instrucción siguiente si está en “1”

1 (2 si salta)

DECFSZ f,d

Decrementa en una unidad el contenido del registro f y salta una línea de instrucción siguiente si el resultado es cero ^(f)-1= en d ^

1 (2 si salta)

INCFSZ f,d

Incrementa en una unidad el contenido del registro f y salta la instrucción siguiente si es cero

1 (2 si salta)

GOTO k

Salto incondicional a la etiqueta k ; k = Es letras

2

Instrucciones de manejo de subrutinas CALL k

Llamada a la subrutina k ; k = Es letras

RETFIE

Retorno de una interrupción

RETLW

Retorno de una subrutina con el valor k en el registro W

2

RETURN

Retorno de una subrutina

2

2 GIE

2

Instrucciones especiales CLRWDT

Borra el temporizador del Watchdog

NOP

No realiza ninguna operación (pero consume tiempo de ejecución)

𝑇𝑇𝑇𝑇, 𝑃𝑃𝑃𝑃

1 1

SLEEP

Se pone el PIC en estado de reposo (dormido)

𝑇𝑇𝑇𝑇, 𝑃𝑃𝑃𝑃

Tabla 1. [2]Conjunto de instrucciones de un Microcontrolador PIC16F877A para ensamblador. EN TODAS LAS INSTRUCCIONES DONDE APARECE UNA “ d “ COMO OPERANDO: SI d = 0, EL RESULTADO DE LA OPERACIÓN SE GUARDA EN W “ACUMULADOR”. SI d = 1, EL RESULTADO DE LA OPERACIÓN SE GUARDA EN EL REGISTRO f. ES EL VALOR POR DEFECTO.

Referencia. [1] Microcontroladores PIC. Link: https://controlautomaticoeducacion.com/microcontroladorespic/#_Que_es_un_PIC. [2] Conjunto de 35 instrucciones. Link: https://es.slideshare.net/einllelcardenasyllanes/conjuntode-35-instrucciones?from_action=save.

1

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF