inf 2 lab microprocesadores y micro controladores

Upload: pksonyq

Post on 16-Jul-2015

348 views

Category:

Documents


0 download

DESCRIPTION

Se presenta el informe del laboratorio 2 el cual se desarrolla con el pic 16f84A, se desarrolla siguiendo los pasos para la realización de proyectos con pic.

TRANSCRIPT

INFORME DE LABORATORIO # 2 ResumenSe realiz cada uno de los tres proyectos propuestos en el laboratorio 2 del curso de Microcontroladores y Microprocesadores, en los cuales bsicamente se trabajo con programacin para pic utilizando el 16f84A, se trata de dar solucin a la secuencia de leds para lo cual se necesita conocimiento sobre electrnica anloga y digital, para poder culminar con xito los proyectos propuestos.

secuencia de leds inicio encender led 1 no encender led 2 no encender led 3 no encender led 4 no encender led 5 no encender led 6 no encender led 7 no encender led 8 noEl diagrama anterior nos muestra las entradas y salidas de nuestro circuito, en el anterior no tenemos ninguna entrada, y las salidas son 8 las cuales son los 8 LEDs que nos estn pidiendo, tambin como podemos darnos cuenta al apagarse el led enciende automticamente el led siguiente y as sucesivamente, el clock es muy importante en este tipo de circuito ya que es el que nos genera la secuencia que estamos buscando, el siguiente paso es la generacin del programa ensamblador de nuestro pic 16f84A. TITLE "pic16f84 led on/off" list P=16f84A,F= INHX32

si si si

IntroduccinEl presente documento presenta el informe del laboratorio 2 el cual se desarrolla con el pic 16f84A, se realiza siguiendo los pasos para la realizacin de proyectos con pic, se realizara la programacin del pic y posteriormente se anexara el pic al circuito, se revisar si se est cumpliendo con la especificaciones que nos piden en el laboratorio, por ltimo se anexara video de la secuencia de cada circuito. Como podemos darnos cuenta el primer circuito se trata de una secuencia de 8 LEDs, en este circuito las secuencia la determina el pulso del reloj, para el segundo circuito la secuencia la genera un Stich, y para el tercer circuito es el mismo circuito pero con dos Stichs el uno para cambiar la secuencia y el otro para cambiar la velocidad.

si

PRIMER PROYECTOCon el circuito planteado implementar mnimo ocho (8) secuencias distintas para el conjunto de 8 LEDs conectado a uno de los puertos, las secuencias distintas se deben mostrar una tras otra. Para desarrollar este proyecto lo primero que debemos hacer, es desarrollar un diagrama de flujo el cual nos describa el problema planteado.

si si si si

#INCLUDE ;J STATUS EQU 03H ; REGISTRO ESTADO DEL PIC PTA EQU 05H ; PUERTO A PTB EQU 06H ; PUERTO B TRISA EQU 85H ; REGISTRO CONFIGURACION PUERTO A TRISB EQU 86H ; REGISTRO CONFIGURACION PUERTO B ; REGISTROS DE PROPOSITO GENERAL TMP1 EQU 0CH ; REGISTRO TEMPORAL 1 TMP2 EQU 0DH ; REGISTRO TEMPORAL 2 TMP3 EQU 0EH ; REGISTRO TEMPORAL 3 ; DEFINICION DE BITS

CALL RETARDO RETARDO GOTO INICIO

;

LLAMA

; VUELVE A INICIO

;*********************************************** ************************ ;*********************************************** ************************ ;RUTINA CONFIGURACION DE PUERTOS CONFIGURA BANK1 MOVLW 00H ;BINARIO "00000000" 0=OUT Y 1=IN MOVWF TRISB ;SE CONFIGURA PUERTOB COMO SALIDA MOVLW 00H ;BINARIO "00000000" 0=OUT Y 1=IN MOVWF TRISA ;SE CONFIGURA PUERTOA COMO SALIDA BANK0 RETURN ;RUTINA DE RETARDO RETARDO MOVLW VAL1 ;VALOR DE VAL1 PASA A W MOVWF TMP1 ;VALOR DE W SE GAURDA EN TEMPORAL 1 TRES MOVLW VAL2 ;VALOR DE VAL2 PASA A W MOVWF TMP2 ;VALOR DE W SE GUARDA EN TEMPORAL 2 DOS MOVLW VAL3 ;VALOR DE VAL3 PASA A W MOVWF TMP3 ;VALOR DE W SE GUARDA EN TEMPORAL 3 UNO DECFSZ TMP3, F GOTO UNO DECFSZ TMP2, F GOTO DOS DECFSZ TMP1, F GOTO TRES RETURN ;*********************************************** ************************ ;*********************************************** ************************ ;FIN DE PROGRAMA END

W F C Z B0 B1 B2 B3 B4 B5 B6 B7

EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU

0 1 0 2 0 1 2 3 4 5 6 7

; REGISTRO DE TRABAJO ; REGISTRO ;FLAG DE CARGA ;FLAG 0 ;BIT 0 ;BIT 1 ;BIT 2 ;BIT 3 ;BIT 4 ;BIT 5 ;BIT 6 ;BIT 7

;DFINICION DE CONSTANTES VAL1 EQU 30H VAL2 EQU 30H VAL3 EQU 40H ;MACRO #DEFINE BANK0 BCF STATUS, B5 #DEFINE BANK1 BSF STATUS, B5 ;*********************************************** ************************ ;*********************************************** ************************ ;INICIO DE PROGRAMA ORG 00H CALL CONFIGURA QUE CONFIGURA PUERTOS PRG1 CLRF PTB INICIO BSF PTB, B0 LED/ON BSF PTB, B1 BSF PTB, B2 CALL RETARDO RUTINA DE RETARDO BCF PTB, B0 LED/OFF BCF PTB, B1 BCF PTB, B2

;LLAMA RUTINA ;LIMPIA PUERTO B ;ENVIA PULSO A RB0

;

LLAMA CIRCUITO PROPUESTO

;APAGA LED EN RBO

C1 22pF18

X1 HC-49/U_3MHz C20

U117

5 6 7 8 9 10 11 12 13

V1 5V

VSS VDD RB0/INT RA0 RB1 RA1 RB2 RA2 RB3 RA3 RB4 RA4/TOCK1 RB5 ~MCLR RB6 OSC1/CLKIN RB7 OSC2/CLKOUT

14 17 18 1 2 3 4 16 15

22pF19

secuencia de leds con pulsador inicio si encender led 1 si encender led 2 si encender led 3 si encender led 4 si encender led 5 si encender led 6 si encender led 7 si encender led 8 siEl diagrama anterior nos muestra las entradas y salidas de nuestro circuito, en el anterior tenemos una entrada la cual es el pulsador, y las salidas son 8 las cuales son los 8 LEDs que nos estn pidiendo, tambin como podemos darnos cuenta pulsar se enciende al volver a pulsar se apaga y

LED1 R1 330 R2 33010 9

PIC16F84A

1

LED2

2

LED311

3

R3 330

LED412

7 8 5

4

R4 330 R5 330

LED513

no no no

LED614

6

R6 330 R7 330 R8 330

LED715

LED816

SEGUNDO PROYECTOCon el circuito planteado, de ocho (8) LEDs y un (1) botn, desplegar mnimo ocho (8) secuencias controladas en su visualizacin por el BOTON conectado a otro puerto. Al igual que en el proyecto anterior lo primero es desarrollar el diagrama de flujo el cual nos describe el problema planteado.

no

no no no no

enciende el led siguiente automticamente y as sucesivamente, el clock en este circuito no es muy importante en este tipo de circuito ya que el pulso nos genera la secuencia que estamos buscando, el siguiente paso es la generacin del programa ensamblador de nuestro pic 16f84A. CIRCUITO PROPUESTOC122

secuencia de leds con dos pulsadores inicio pulso 1 si encender led 1 si encender led 2 si encender led 3 si encender led 4 no si encender led 5 si encender led 6 si encender led 7 si encender led 8 no pulso 2 si apagar led 1 si apagar led 2 si apagar led 3 si apagar led 4 si apagar led 5 si apagar led 6 si apagar led 7 si apagar led 8 no no

R11 10018 21

22pF X1 HC-49/U_3MHz C20

R9 10k

U117

5 6 7 8 9 10 11 12 13

J1 Key = A20

V1 5V

VSS VDD RB0/INT RA0 RB1 RA1 RB2 RA2 RB3 RA3 RB4 RA4/TOCK1 RB5 ~MCLR RB6 OSC1/CLKIN RB7 OSC2/CLKOUT

14 17 18 1 2 3 4 16 15

22pF19

LED1 R1 330 R2 33010 9

PIC16F84A

1

LED2

2

LED311

3

R3 330

R10 1007 0 8 5 4

LED412

R4 330 R5 330

LED513

LED614

6

R6 330 R7 330 R8 330

LED715

LED816

TERCER PROYECTO

Con el circuito planteado, de ocho (8) LEDs y dos (2) botones, desplegar mnimo ocho (8) secuencias controladas en su visualizacin por el BOTON 1 y controladas en su velocidad por el BOTON 2 estos botones se ubican en un puerto diferente. Al igual que en el proyecto anterior lo primero es desarrollar el diagrama de flujo el cual nos describe el problema planteado.

El diagrama anterior nos muestra las entradas y salidas de nuestro circuito, en el anterior tenemos dos entradas las cuales son los pulsadores, y las salidas son 8 las cuales son los 8 LEDs que nos estn pidiendo, tambin como podemos darnos cuenta el pulsador 1 nos enciende el led y el pulsador 2 nos apaga el led segn el tiempo que deseemos y as sucesivamente, el clock en este circuito no es muy importante en este tipo de circuito ya que el pulso nos genera la secuencia que estamos buscando, el siguiente paso es la generacin del programa ensamblador de nuestro pic 16f84A.

CIRCUITO PROPUESTOC122

R11 100

25

22pF18

R14 100 U117

X1 HC-49/U_3MHz C20

R9 10k23

R12 10k21

5 6 7 8 9 10 11 12 13

VSS VDD RB0/INT RA0 RB1 RA1 RB2 RA2 RB3 RA3 RB4 RA4/TOCK1 RB5 ~MCLR RB6 OSC1/CLKIN RB7 OSC2/CLKOUT

14 17 18 1 2 3 4 16 15

22pF19

LED1 R1 330 R2 33010 9

J1 Key = A20

J2 Key = A

V1 5V

PIC16F84A

1

LED2

2

LED311

3

R3 330

R10 100

24

LED412

R13 1008 0

7

4

R4 330

LED513

5

R5 330

LED614

6

R6 330 R7 330 R8 330

LED715

LED816

CONCLUSIONES Para poder llegar a programar lo primero que debemos tener en cuenta es saber cmo vamos a plantear y solucionar el problema. Debemos siempre realizar el diagrama de flujo para que nos quede ms fcil resolver el problema en mencin. Pasar a lenguaje ensamblador y ejecutar el programa para saber si quedo bien diseado. Fue un buen ejercicio para irnos familiarizando con el pic 16f84A.

REFERENCIAS

Modulo de Microprocesadores y Microcontroladores. Tutoriales de MPLAB. Ideas Propias