INTRODUCCION: En electrónica digital,
un contador es un circuito secuencial construido a
partir de un biestable y puertas lógicas capaz
de almacenar y contar los impulsos (a menudo
relacionados con una señal de reloj), que recibe en la entrada destinada
a tal efecto, pero en nuestro caso todo eso lo ara el microcontrolador PIC, a
este PIC nosotros lo vamos a programar que cuando pulsamos el pulsador vaya
contando en ascendente o descendente.
Normalmente, el cómputo se realiza
en código binario, en nuestro caso
vamos a programar el código en PROTON IDE, y lo aremos con el código Binario.
Diagrama. |
MATERIALES:
- 1 PIC 16F84A.
- 1 Display Cátodo Común.
- 1 Crystal de 4MHz.
- 2 Condensadores cerámicos de 22pf.
- 3 Pulsadores N.A.
- 3 Resistencias de 10kΩ.
- 7 Resistencias de 330Ω.
- 1 Protoboard.
- 1 Fuente de 5v (pueden utilizar como fuente de alimentación, un cargador de celular, estos nos dan 5v).
EL PIC 16F84A: El PIC16F84A es un microcontrolador de gama
media de 8 bits que físicamente consta de 18 pines, su memoria de programa es
de tipo flash, lo que nos permitirá grabarlo hasta unas 10000 veces. Es
realmente sencillo de manejar, y es un PIC muy comercial, la programación para
este PIC es muy fácil que lo veremos más
adelante.
El puerto RA0 (pin
17) se va a encargar de contar en forma ascendente (A), y el puerto RA1 (pin
18) se encargara de contar en forma descendente (D).
CARACTERISTICAS:
- Tiene 35 instrucciones.
- Memoria de programa de 1 KB (equivale a 1024 instrucciones).
- Máxima velocidad de operación: 20 MHz.
- 68 Bytes de RAM.
- 64 Bytes de EEPROM.
- 4 fuentes de interrupción.
- 2 puertos de salida.
- 13 Líneas de I/O configurables individualmente.
- 25 mA de consumo por pin.
¿QUE ES UN DISPLAY 7 SEGMENTOS?
El display 7 segmentos es un
componente electrónico muy utilizado para representar visualmente números y
letras, es de gran utilidad dado su simpleza para implementar en cualquier
proyecto electrónico.
Está compuesto por 7 Leds que forman un “8”, y hay otro led (un punto) que es para visualizar un punto, que se utiliza para números decimales, de esta forma controlamos el encendido y apagado de cada led, podremos representar el numero o letra que necesitamos, en electrónica tenemos dos tipos de display: Ánodo común y Cátodo común.- En nuestro caso vamos a utilizar display cátodo común.
Y para que el
contador sea ascendente y descendente tenemos que programar al PIC, cada vez
que pulsamos el pulsador cuente un número y así sucesivamente, y para esto
tenemos que tener un conocimiento en código binario.
CODIGO BINARIO: El código
binario es el sistema numérico usado para la representación de textos, o
procesadores de instrucciones de una computadora, el sistema binario es aquel
sistema de numeración que se emplea en las matemáticas y en la informática y en
el cual los números se representan usando únicamente las cifras cero y uno (0 y
1).
Podemos decir
entonces, que el sistema
de numeración binario es utilizado básicamente por los
microprocesadores de los dispositivos informáticos para detectar la ausencia o
presencia de señal o de bits como también se les conoce. La facilidad que tiene
el microprocesador de agrupar hasta 8 bits en una sola señal, se denomina
velocidad de transferencia de datos y este grupo de bits forman un byte, la
unidad base de medida de datos en informática.
La utilidad de código
binario se ha demostrado en todo el mundo moderno en multitudes de tecnologías
audiovisuales y dispositivos de comunicaciones. Debido a que el código binario
es la base de la comunicación electrónica, este lenguaje aparentemente sencillo
ha transformado radicalmente al mundo moderno en una sociedad más rápida, clara
y fuerte basada en la tecnología con posibilidades prácticamente ilimitadas.
1 registro equivale a
128.
Y la suma de todo el
peso binario es 255.
A continuación les
dejo un cuadro del código binario.
Tabla básica del código binario. |
Como vemos en el cuadro
el código binario 10001000 equivale al número 136, porque sumamos 128+8.
Este mismo sistema
aplica para hacer letras o números en un display, a continuación les dejo un
diagrama con todos los números, del 0 al 9.
¿COMO HACER LOS NÚMEROS? |
Teniendo ya esta base, ahora vamos a programar el PIC, en mi caso
programo con el PROTON IDE, es un código muy simple de programar, a continuación
les dejo el código bas o código fuente, al final del blog los dejare para que
lo descarguen.
Device = 16F84A 'declaramos el pic a usar
XTAL = 4 'declaramos el crystal
TRISA.0 = 1 'declaramos el puerto A.0=1,como entrada y a la vez es el pulsador ASCENDENTE.
TRISA.1 = 1 'declaramos el puerto A.1=1,como estrada y ala vez es el pulsador DESCENDENTE.
TRISB = 0 'puerto B ,direccionamos como salida , que ban al display.
ALL_DIGITAL true 'entradas analogicas
Dim vec As Byte 'declarando el almacebamiento en el registro *vec* y
Dim num As Byte 'que se visualicen en el display *num*
vec = 0
PORTB= 63 'CONTEO QUE EMPIESE DESDE CERO
inicio:
If PORTA.0=0 Then 'SI EL PUERTO A.0=0 POR Q CON EL PULSO LO ENVIAREMOS A CERO (0) PARA Q CUENTE
vec=vec+1 'QUE BAYA SUMANDO DE A UNO +1
LookUp vec,[63,63,6,91,79,102,109,125,7,127,103],num 'NUMERO DESDE 0 AL 9
PORTB=num 'EN EL PUERTO B (DISPLAY) VISUALIZACION DE LOS NUEMEROS
If vec>=10 Then
vec=0
End If
DelayMS 600
End If
If PORTA.1=0 Then
vec=vec-1
LookUp vec,[63,63,6,91,79,102,109,125,7,127,103],num
PORTB=num
If vec<=1 Then
vec=11
End If
DelayMS 600
End If
GoTo inicio
End
Una vez que hayamos programado el PIC en PROTON IDE,
y lo hayamos compilado sin ningún error, entonces aremos nuestras pruebas en
PROTEUS (programa para simular circuitos en la PC), después de esto tenemos que
cargar ese código hex a nuestro PIC, y
para eso necesitamos de un GRAVADOR DE PICs, una vez cargado el código ahora lo
podemos conectar el PIC a la protoboard con el circuito armado, y hacemos las pruebas
y debe de funcionar muy bien.
A continuación leds dejo el video para que vean
de cómo debe de funcionar el circuito contador con pulsadores.
Links de descarga aquí:
1.- Circuito en proteus (para hacer sus
pruebas).
2.- Código bas. O código fuente en Protón Ide.
3.- Código hex. para que lo carguen a su PIC.
Comentarios