Practica CON Pic

PRACTICA N° 02 1.- TÍTULO: CONTADOR DIGITAL. 2.-ESTUDIANTE: …………………………………………………………………………….. 3.- CICLO Y SECCIÓN: …………………

Views 104 Downloads 0 File size 613KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

PRACTICA N° 02 1.- TÍTULO: CONTADOR DIGITAL. 2.-ESTUDIANTE: …………………………………………………………………………….. 3.- CICLO Y SECCIÓN: ………………………………….. 4.- FUNDAMENTACIÓN. Con el uso del PIC 16F877A, podemos realizar un conteo, el cual podemos realizar diversos trabajos que encontramos en lo cotidiano por lo regular en varios dispositivos ya sean electrodomésticos, anteriormente hacíamos un contador con los flip flop J-K, con estos podíamos hacer los relojes asíncronos por ejemplo, ahora con la ayuda del PIC, podemos programar muchas tareas por lo que resulta muy útil dicho dispositivo, anteriormente los PICs tenían memoria PROM o EPROM ahora se están renovando gradualmente por chips con memoria Flash. Así mismo, el juego de instrucciones original de 12 bits del PIC1650 y sus descendientes directos ha sido suplantado por juegos de instrucciones de 14 y 16 bits. Se pueden considerar tres grandes gamas de MCUs PIC en la actualidad: Los básicos (Linebase), los de medio rango (Mid Range) y los de alto desempeño (high performance). Los PIC18 son considerados de alto desempeño y tienen entre sus miembros a PICs con módulos de comunicación y protocolos avanzados (USB, Ethernet, Zigbee por ejemplo). 5.- OBJETIVO Familiarizar la manipulación de los puertos del Microcontrolador que estamos utilizando PIC 16F877A configurando los puertos en modo de receptores de pulsos así como señales digitales.

6.- ESQUEMA DEL CIRCUITO. Nuestro diagrama esquemático quedó de la siguiente forma:

Esquemático 7.- MATERIALES 1 PIC 16F877A 1 Display 7 segmentos ánodo común

2 Resistencias de 10 KΩ 1 Cristal de 4 MHz 2 Capacitores de 33 pf 1 Switch momentáneo normalmente abierto Protoboard Alambre de diferentes medidas Fuente de Alimentación 5 Volts Multímetro

8.- CÓDIGO DE PROGRAMACIÓN. Empleando la siguiente programación, editarlo para que el display encienda los números secuencialmente. TRISB=0 INICIO: Portb=%00100001 pause 2000 Portb=%00100011 pause 1000 Portb=%00001100 pause 1000 Portb=%00011100 pause 1000 GOTO Inicio End

9.- OBSERVACIONES Y CONCLUSIONES. …………………………………………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………………………………………… …………………………………………………………………………………………………………………………………………………………………………………..

MicroCode Studio & PBP: Contador ascendente y descendente de un dígito con PIC16F84A Siguiendo con las prácticas en Pic Basic Pro y utilizando el MicroCode Studio para nuestros Microcontroladores PIC, en esta ocasión utilizaremos un Display de 7 Segmentos y pulsadores para visualizar los números del 0 al 9. Además es una pequeña demostración de la gran cantidad de formas en las cuales podemos utilizar el ya conocido PIC16F84A. Algo que tenemos que tener en cuenta es que el código cambia dependiendo si usamos un display de ánodo común o de cátodo común. En este caso lo veremos con un display de cátodo común, lo que nos dice que para que algún segmento encienda el pin tiene que recibir un 1 lógico. Por lo tanto para saber qué es lo que deseamos ver en el display necesitamos que el puerto B del PIC o salidas (RB0-RB7) tengan 1 lógicos ó 0 lógicos. Como lo que queremos ver en el display con los números del 0 al 9 tenemos la siguiente tabla que nos mostrara mejor lo antes mencionado. También se muestra los números en decimal, hexadecimal y binario esto nos será útil al momento de realizar la programación, que son las tres formas de mandar datos al puerto B de nuestro PIC.

El circuito es sencillo consta de un display de 7 segmentos de cátodo común conectado al puerto B del PIC16F84A con sus debidas resistencias y también su oscilador a 4MHz con sus respectivos capacitores de 22pF, además se tienen 2 pulsadores conectados al puerto A del PIC, el primero conectado a RA0 y es el que se utiliza para incrementar el conteo, el segundo conectado a RA1 y se utiliza para decrementar, para el Reset se tiene conectado otro pulsador en el pin Master Clear con su resistencia a Vcc para que el PIC trabaje adecuadamente. Recordar que los pines de alimentación del PIC son: 5 para GND y 14 para Vcc=5 Volts. El circuito se muestra a continuación:

El comando que se utilizara para mostrar el valor en el puerto B es LOOKUP el cual puede ser usado para obtener valores de una tabla de constantes de 8 bits en este caso utilizaremos la variable DIGITO. Los valores que irán dentro de LOOKUP en este ejemplo serán en forma hexadecimal para ello el compilador requiere que se utilice el símbolo “$”, si se quisiera utilizar los números en binario se debe de agregar el “%” y para los decimales solo basta escribir el numero tal y como es, estas tres posibilidades deben de ir separadas por comas. El código en Basic para este circuito es el siguiente: '*********************************************************************** '*

Name

: CONTADOR CON PIC + PULSADORES (ASCENDENTE Y DESCENDENTE) *

'*

Author

: xxxxxx

'*

Notice

: Copyright (c) 2014 M

'*

* *

: All Rights Reserved

*

: 20/05/2014

*

'*

Date

'*

Version : 1.0

*

'*

Notes

:

*

:

*

'*

'*********************************************************************** AllDigital TRISA = %11111111'Puerto A como entrada TRISB = %00000000'Puerto B como salida DIGITO var Byte 'declaramos la variable digito PORTB = 63 'Muestra el número cero en el display digito = 0 MAIN:

'Inicializamos digito en cero

If PORTA.0 = 1 Then'Si RA.0=1 hacemos lo siguiente pause 100 If digito = 10 Then digito = 0 Endif If digito