ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Rutina De Multiplicacion En Pic16f887


Enviado por   •  12 de Octubre de 2012  •  10.514 Palabras (43 Páginas)  •  1.885 Visitas

Página 1 de 43

MICROPROCESADORES

PRACTICA No 3:

MULTIPLICACION Y SUMA CON ENTER Y DESBORDAMIENTO

PROFESOR:

DR. REYMUNDO RAMIREZ BETANCOUR

ALUMNO:

ERIK RIVERO HERNANDEZ

Miércoles 12 de septiembre del 2012

Material y equipo

1 MICROCONTROLADOR PIC 16F887

1 TECLADO MATRICIAL 4X4

1 PROTOBOARD

9 LEDS

10 RESISTENCIAS DE 220 HOMS

1 FUENTE DE VOLTAJE

1 GRABADORA DE PIC

1 PROTEUS

1 PUSH BUTTON

1 CAPACITOR

OBJETIVO.

Lo que se desea hacer en esta práctica es realizar un programa donde se implemente una rutina de multiplicación, la suma, la resta entre otras instrucciones.

Resumen de procedimiento

Se utiliza el teclado matricial 4x4 con el Pic 16f887, se determina una tecla como enter, máximo se presiona cuatro veces en el teclado lo cual pueden ser un numero y enter, dos números y enter o tres números y enter. Se presiona la primer tecla, después se presiona otra tecla y se verifica si es un enter o es otro numero, si es enter entonces el primer numero se muestra en los leds y se reinicia, sino entonces se multiplica el primer numero por diez , se le suma el segundo y se guarda, se presiona otra tecla y se verifica si es enter u otro numero, si es enter se muestra en los leds el resultado de la operación anterior, si no es enter se multiplica el resultado por diez y se le suma el tercer numero y se guarda, por ultimo se presiona enter o cualquier otra tecla y se muestra el resultado en los leds. Realizaremos la programación en asm con mplab y la simulación con proteus, por último se realizara en protoboard.

DESARROLLO.

PASO 1. Deberá realizarse el código en ASM del programa.

;UNIVERSIDAD JUAREZ AUTONOMA DE TABASCO

;DIVISION ACADEMICA DE INGENIERIA Y ARQUITECTURA

;INGENIERIA EN ELECTRICIDAD Y ELECTRONICA

;MATERIA: MICROPROCESADORES

;ALUMNO: erik rivero hernandez

;segunda practica : Uso del teclado con multiplicacion y suma

PROCESSOR 16f887

#include "p16f887.inc"

__CONFIG _CONFIG1, _WDT_OFF & _PWRTE_ON & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOR_ON & _IESO_ON & _FCMEN_ON & _LVP_OFF & _DEBUG_OFF & _INTRC_OSC_NOCLKOUT

__CONFIG _CONFIG2, _BOR40V & _WRT_OFF

cont1 EQU 0x20

cont2 EQU 0X21

cont3 EQU 0x22

cont4 EQU 0X23

tecla EQU 0X24

x EQU 0X25

z EQU 0X26

resul EQU 0X27

num1 EQU 0x28

num2 EQU 0x29

suma EQU 0X2A

num3 EQU 0x2B

CA EQU 0X2C

CB EQU 0X2D

CC EQU 0X2E

constante EQU 0x2F

resul2 EQU 0x30

ORG 0x00 ;inicio

goto Main ; despues del reset salta hacia su lugar

ORG 0x04 ; el vector es interrumpido

goto Main ; rutina no interuunpida

Main

banksel OSCCON

movlw b'01111110'

movwf OSCCON

bsf OSCCON ,3 ; SELECCIONA OSCILADOR ExTERNO

clrf STATUS ; selecciona el banco 0 ]

bcf STATUS,RP0 ; seleccionamos el banco 0

clrf PORTA ; Limpiamos todo el puerto A

clrf PORTC ;liempiar puerto c

bsf STATUS,RP0 ; seleccionamos el banco 1

clrf TRISA ; configuramos todas las patitas de A como salida

movlw 0x00 ; mandar 0x00 a w

movwf TRISC ;se pone como salida digital puerto c

bsf STATUS,RP1 ;seleccionar el banco 2

...

Descargar como (para miembros actualizados)  txt (20.3 Kb)  
Leer 42 páginas más »
Disponible sólo en Clubensayos.com