Otro video de practicas con PIC16F84A


Ya habia tardado un buen tiempo sin subir ningun video sobre PICs, debido a que mi programadora antigua funciono entonces aproveche para poder realizar el video de las últimas practicas realizadas con el PIC16F84A:




También les recuerdo que dichas practicas o mini-proyectos contienen simulación, diagrama, video, explicación y código del programa.





Leer Más.....

Cambio en el diseño del blog

Como todo cambio es bueno, el blog tiene nuevo diseño como siempre busque algo que fuera como para la vista y me parecio bien esta plantilla, aún faltan unos pequeños retoques pero espero este listo pronto.



Muchas Gracias por leer este articulo

atte,

OptimusTronic
Administrador

Leer Más.....

Sobre Encuesta y Otras Cosas

Primero que nada, el resultado de la encuesta fue bastante interesante, un total de 58 votos, que quedarón de la siguiente manera:

Photobucket



Donde 26 votos fueron para el clásico PIC16F84A y 21 votos para el PIC16F877A por lo tanto seguiremos usando el PIC16F84A cuando alcancemos un número ya considerable de proyectos y prácticas pasaremos al PIC16F877A.

Algo que también quiero comentarles es que tenia planeado usar a la vez el PIC16F628A pero por motivos de prueba y error con una programadora nueva, al parecer lo queme, así que hasta nuevo aviso no utilizaremos ese PIC, posiblemente si en simulación pero solo ahi. Como mencione estaba probando una nueva quemadora pero no funciono y por lo tanto perdi dinero y no se cuando podré hacer una nueva más que todo por tiempo (esta vez perdi 2 dias). Si saben de alguna para pics de 18,28 y 40 pines avisenme porfavor, por el momento probare con otras que he publicado anteriormente.

Leer Más.....

Contador de 0-9 con PIC16F84A

Introducción

Cuando deseamos hacer un contador simple de 0-9 podemos usar flip-flops o circuitos integrados especiales para contadores, pero de cualquier manera tenemos que usar cierto número de elementos los cuales pueden ir creciendo dependiendo de lo que vamos a usar. Pero cuando usamos PICs todo se resuelve de manera más sencillo en el caso del Hardware los elementos son minimos y por lo tanto el gasto es menor comparado si lo hicieramos con flip-flops y lo bueno es que el PIC lo podemos reprogramar a nuestro antojo.

Descripción

En este pequeño proyecto utilizaremos un Display de 7 Segmentos para desplegar los números de 1 a 9 de manera que haremos un contador. Algo que tenemos que tener en cuenta es que dependiendo si usamos un display anódo común o cátodo común el programa del PIC puede cambiar. 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 que es lo que deseamos ver en el display necesitamos que el puerto B del PIC (RB0-RB7) tengan 1 lógicos ó 0 lógicos tal y como se ve en la siguiente tabla.



Funcionamiento


CODIGO DEL PROGRAMA

'DEFINIENDO VARIABLES 1 byte = 8 bits = 8 salidas > RB0-RB7
contador VAR byte
muestra var byte

'INICIANDO
TRISB = 0 'el PORTB como salida

inicio:
contador = 0 'inicializamos el contador a 0
programa:
gosub NUMERO 'se ve el numero elegido en PORTB
PORTB = muestra 'PORTB toma el valor de muestra
contador = contador + 1 'se incrementa contador con 1
pause 1000 'espera 1 segundo
if contador = 10 then inicio 'compara, si llega al #9 reinicia a #0
goto programa

NUMERO:
lookup contador, [63,6,91,79,102,109,125,7,127,111], muestra 'asigna valor
return

END 'fin del programa



Ahora explicaré el codigo del programa;

inicio:
contador = 0 'inicializamos el contador a 0


primero, contador será igual a 0 luego por la instrucción.


programa:
gosub NUMERO 'se ve el numero elegido en PORTB
.
.
.
.

NUMERO:
lookup contador, [63,6,91,79,102,109,125,7,127,111], muestra 'asigna valor
return
END 'fin del programa


con gosub numero nos direcciona a una subrutina (llamada NUMERO)que contiene el comando lookup; el cual puede ser usado para obtener valores de una tabla de constantes de 8 bits, en este caso usaremos contador y si contador es igual a cero, muestra toma el valor de la primera constante ( que seria 63 y así sucesivamente hasta que tome todas las constantes disponibles) luego regresá y toma la siguiente linea,

PORTB = muestra 'PORTB toma el valor de muestra
contador = contador + 1 'se incrementa contador con 1
pause 1000 'espera 1 segundo
if contador = 10 then inicio 'compara, si llega al #9 reinicia a #0
goto programa


luego el valor que tomó muestra es colocado en PORTB y será el valor que se visualizará en el DISPLAY, luego contador tendrá el valor que tenia anteriormente más uno, habra una pausa de 1 segundo para que podamos ver el resultado en el display y si contador es igual a 10 reinicia el programa de lo contrario repetira la secuencia.

En la siguiente tabla se muestra las constantes que se usarón en el comando LOOKUP, usamos decimales, aunque tambien se pueden colocar hexadecimales.


DIAGRAMA explicado
DIAGRAMA

SIMULACIÓN


Leer Más.....