Creación de un reloj binario desde cero

Buenas a todos, estoy interesado en hacer un reloj binaro. He visto un post parecido por ahi pero yo lo quiero hacer con un microcontrolador 8051 que pienso que es mas facil y exacto. si no es asi, corregidme.

la primera duda que me surge, es qué microcontrolador compro ya que creo que hay de muchas marcas no? el precio creo qUE no suele ser caro verdad?

y la siguiente duda es : ¿como puedo programarlo?

Un saludo.
 
Última edición por un moderador:
2 cosas...

1) los microcontroladores si son relativamente caros.
2) no son tan facil de programar...yo hace bastante que estoy queriendo aprender a hacerlo....y no es simple.:cry:

espero tengas suerte...

saludos.
 
Entonces me parece que tengo algunos conceptos eQUivocados.

los microcontroladores estos no los venden a euro y pico? o eso son otras cosas?

estoy un poco perdio...
 
Última edición por un moderador:
Hola, hace poco en el colegio( estoy en una escuela tecnica) hicimos con un pic 16F84A un reloj binario, no era muy complicado, programamos con el code lite el pic a modo de reloj binario, lo probamos en el proteus y era completamente funcional. El pic que usamos es bastante economico.
 
podrias darme mas informacion por favor? que es el code lite? que lenguaje utiliza?

yo usaba el keil uvision pero hace unos años qUE no lo toco (ensamblador).

gracias.

199-tabla.jpg
 
Última edición por un moderador:
Ya me lo estoy bajando. Por lo que veo es lenguaje C, que la verdad hace unos 6 años que no lo uso, asi que a ver si me pongo al dia.

Si me puedes pasar el codigo si lo tienes mejor.

Muchas gracias por tu ayuda. Espero tu proxima respuesta.

Un slaudo.
 
Si, no hay drama te paso el codigo, pero me surgio una duda cuando lo estaba haciendo. Como lo queres? tipo am y pm? o sea que llege a 24 o a 12 ?, espero que me entiendas con lo que me refiero. Y bueno cuando te ponga el codigo te explico mas o menos como lo fui haciendo y eso como para que tengas un poco de nocion, no es muy complicado c si lo usas para cosas asi.
Saludos
 
Bueno, me ha surgido algunas duda mas generales sobre microcontroladores que no he sabido encontrar respuestas en la red.

Por ejemplo, cuando vaya a hacer algun proyecto como sé que pic necesito? ya que hay muchos modelos distintos.

Que lenguaje se puede utilizar con cada tipo de pic?

pronto me surgirán mas...
 
Hola, disculpa que todavia no suba el codigo, es que lo habia creado y por una confusion borre una carpeta de mi pendrive donde este estaba :cry:, en cuanto pueda te lo armo nuevamente.
Respecto a tus dudas, el tipo de microcontrolador depende la complejidad del proyecto que desees realizar. En otras palabras la cantidad de bits que vas a precisar.
Y con el tema de los lenguajes, busque un poco, resulta que hay mas que C como lenguaje para pics:
Microchip proporciona un entorno de desarrollo freeware llamado MPLAB que incluye un simulador software y un ensamblador. Otras empresas desarrollan compiladores C y BASIC. Microchip también vende compiladores para los PICs de gama alta ("C18" para la serie F18 y "C30" para los dsPICs) y se puede descargar una edición para estudiantes del C18 que inhabilita algunas opciones después de un tiempo de evaluación.
Para el lenguaje de programación Pascal existe un compilador de código abierto, JAL, lo mismo que PicForth para el lenguaje Forth. GPUTILS es una colección de herramientas distribuidas bajo licencia GPL que incluye ensamblador y enlazador, y funciona en Linux, MacOS y Microsoft Windows. GPSIM es otra herramienta libre que permite simular diversos dispositivos hardware conectados al PIC.
Uno de los más modernos y completos compiladores para lenguaje C es [mikroC], que es un ambiente de desarrollo con editor de texto, librerías con múltiples funciones para todos los módulos y herramientas incorporadas para facilitar enormemente el proceso de programación.
Lo saque de wikipedia:D jaja, pero bueno, es bastante informativo. Te dejo el enlace. http://es.wikipedia.org/wiki/Microcontrolador_PIC


Saludos!
 
Bueno, me ha surgido algunas duda mas generales sobre microcontroladores que no he sabido encontrar respuestas en la red.

Por ejemplo, cuando vaya a hacer algun proyecto como sé que pic necesito? ya que hay muchos modelos distintos.

Que lenguaje se puede utilizar con cada tipo de pic?

pronto me surgirán mas...

hola con respecto a tus dudas te aporto, siempre la elección del pic va a depender de las necesidades de tu diseño, por ejemplo, hay pic de baja memoria y otros con mayor memoria, con menos puertos de entrada/salida y otros con mas puertos entrada/salida, te aconsejo empezar con uno básico como el 16f84a, una vez que armes proyectos te darás cuenta que al hacer proyectos de mayor complejidad sera necesario buscar el datasheet de algún otro pic.

ojo, en todos los pic el programa que tu le grabas es en .HEX, es por eso que programas como quieras con un buen compilador, puedes programar en c, el compilador transforma tu programa c en un archivo HEX, al igual que programas que trabajen en assembler el compilador crea un archivo HEX. tu puedes elegir el que te acomode mas.

con un pic el reloj digital es mucho mas facil que realizarlo con un 8051.
 
....con un pic el reloj digital es mucho mas facil que realizarlo con un 8051.

Por? si sabes C, es lo mismo uno que otro. Si sabes assembler tampoco difiere en mucho, solo los nombres de los registros.

Antes de usar un uC, habria que evaluar cuanto seria el costo de usar logica convencional, porque no seria nada complicado hacerlo con contadores - decodificadores - displays, y se podria usar un cristal como base de tiempo (al igual que en el uC) o la linea como se planteo en un post.

No digo que no este bueno usar un uC, pero creo que hay aplicaciones en los que realmente se podria usar una alternativa mas convencional.
 
La idea es que ya que he empezado, voy a intentar hacerlo con pic para adentrarme en este mundo que tengo algo olvidado. El lenguaje qUE mejor recuerdo es Ensamblador y el programa que usaria seria el Keil uVision.

por otro lado, el reloj qUE quiero hacer tendria 20 salidas (bits) y una entrada por lo que no podria usar ese pic aunque he pensdo no hacer segundero y entonces solo tengo 13 salidas y una entrada, y asi si puedo usar el 16f84.
 
Última edición por un moderador:
si vas a realizar el programa en assembler te recomiendo utilizar mlab, gratuito y es el programa del fabricante http://www.microchip.com.

las 13 salidas de que son??. para las horas de 0 a 24, 5 pines, para los minutos de 0 a 60 6 pines lo que nos da 11 pines a menos que estes pensando en otra cosa.

para los segundos con un pin que genere un pulso de 1hz, se puede conectar a un par de contadores y consigues el segundo. pero eso mas adelante pero si podrias considerar dejar una salida para ese pulso q te dije.
 
De hecho te convendria hacer una multiplexacion, usar solo 7 puertos para los 7 segmentos y 6 para seleccionar que display encender (asi tendrias un display HH:MM:SS), estos ultimos 6 podrian ser solo 3 si usas un deco de 3 lineas, en si dependera del modelo de uC que elijas.
 
A nunca vi uno de esos, para que sirve? tiene la forma de los numeros que usan en braile.

Igual el principio es el mismo (haciendo multiplexacion), si tomas el segundero seran 6 bits para el control de cada digito y 3 para elegir que digito usar, en total 9, si no tomas segundero, seran simplemente 8 puertos.
 
bueno algo parecido para las horas solo necesitas 4 pines, el pic envia los primeros cuatro datos luego los otros 4 datos que correspondan a las hora, a esa velocidad se veran siempre encendidos. lo mismo para los minutos y los segundos. ahora el boton que quieres establecer es para poner el reloj a 00:00:00 ?? o pretendes con ese boton configurar la hora en cualquier momento? por que si quieres poner el reloj a cero lo unico que tienes que hacer es resetear el pic por el pin de reset que maneja el pic.
 
Es verdad, esa es una buena manera utilizando solo 4 pines. seria para ponerla a la hora que quieras, yo he pensado en unos switches conectados a las salidas pero enviando los datos como tú me dices me da que no se podria
 
Atrás
Arriba