Reloj digital miniatura con atmega328p AU y RTC

Solo hace falta los transistores para seleccionar los dígitos ya que por esa linea, en el peor caso, circulara la corriente de 7 LEDs. El puerto que maneja los segmentos solo tiene que aportar corriente para encender 1 solo LED por cada linea, si no se supera la corriente maxima que puede aportar ese puerto en total no habrá problema.

Igual ese es el menor de los problemas ya que la matriz esta mal echa y jamas funcionara.
Pero sigue empecinado en que esta bien.

Voy a hacer un ultimo intento para ver si se entiende donde esta el problema: Una matriz de LEDs, como la quiere implementar permite encender como mínimo 1 LED.

Por ejemplo, quiero que el display muestre lo siguiente: El primer, segundo tercero, cuarto y quinto dígito apagado, y en el sexto dígito que aparezca el numero 1.
Solo quiero que aparezca eso siempre, ¿ que puertos tengo que activar para que se enciendan solamente esos dos LEDs ?
veraz, para usar estos displays se enciende 1 digito a la vez y se van cambiando uno a uno de forma tan rapida que el ojo no nota que se van cambiando
no quiero una matriz de leds, solo son displays simplemente que en lugar del componente como tal pongo leds con la misma conexion para ahorrar espacio y dinero
 
Va de nuevo, quiero que solo el dígito de la derecha muestre el numero 1, nada mas, ¿ Que pines tengo que activar ?
 
¿ En el micro cual seria el pines que controla el dígito 6 y cuales los segmentos B y C ?


Por cierto, compara como esta conectado un display comercial a tu diagrama, quizás así veas el error y la diferencia:

diagram display.png

Edito: es la imagen mas clara que encontré pero es ánodo común, habría que darle la vuelta a todos los LEDs en esta foto.
 
Si no hay que verificar en el Eagle ni en el Sparrow, se ve a 10m lo que pasa.
Cuando lo montes y todos los segmentos a, todos los b, todos los c... muestren lo mismo volvemos al punto de partida.
Ya nos avisas cuando pase, y ya si eso miras de solucionarlo.

Móntalo ya, no preguntes mas. Que tu ya sabes que funciona. Ánimo.
a ok
seria activar el digito 6 y activar los segmentos B y C
No, eso no hace lo que te han dicho. Presta atención.
¿ En el micro cual seria el pines que controla el dígito 6 y cuales los segmentos B y C ?


Por cierto, compara como esta conectado un display comercial a tu diagrama, quizás así veas el error y la diferencia:

Ver el archivo adjunto 196285

Edito: es la imagen mas clara que encontré pero es ánodo común, habría que darle la vuelta a todos los LEDs en esta foto.
A ver si así se fija.
 
Si no hay que verificar en el Eagle ni en el Sparrow, se ve a 10m lo que pasa.
Cuando lo montes y todos los segmentos a, todos los b, todos los c... muestren lo mismo volvemos al punto de partida.
Ya nos avisas cuando pase, y ya si eso miras de solucionarlo.

Móntalo ya, no preguntes mas. Que tu ya sabes que funciona. Ánimo.

No, eso no hace lo que te han dicho. Presta atención.
como si pudiera
solo hago estas cosas en digital como proyectos personales para pasar el rato y aprender nuevas cosas
pero no tengo con que hacer esto en concreto, puedo hacer un reloj de 4 digitos con arduino pero no tengo para mas xd
 

Dr. Zoidberg

Well-known-Papá Pitufo
Hasta donde "creo" entender lo conversado, lo que estás buscando hacer (o te está saliendo) es "multiplexar SEGMENTOS" nó dígitos... pero tampoco se hace así.:unsure::unsure::unsure:🤯
 
¿ En el micro cual seria el pines que controla el dígito 6 y cuales los segmentos B y C ?


Por cierto, compara como esta conectado un display comercial a tu diagrama, quizás así veas el error y la diferencia:

Ver el archivo adjunto 196285

Edito: es la imagen mas clara que encontré pero es ánodo común, habría que darle la vuelta a todos los LEDs en esta foto.
esta bien, pondre asi los leds en el esquematico para que se pueda entender
y si no me falla la memoria, el digito B y C estan en los pines 1 y 2 (PD! y PD2 me parece recordar) mientras que el digito 6 estaba en el pin 12 creo que seria como el PB2
perdon pero ando haciendo tareas y no tengo el esquematico a mano para darte una respuesta clara
tambien he de decir que nunca he usado un micro controlador de esta forma, solo un arduino en su placa
 
Tu circuito está mal y no anda. Cambia el multiplexado por uno de verdad y quita la cosa esa.
Como tienes los leds en paralelo todos hacen lo mismo, si no quieres que hagan lo mismo no pueden estar en paralelo, ya te lo hemos dicho cien veces, te han puesto el esquema correcto porque no lo ves. Cambialo porque así es imposible que funcione.
Si quieres que cada led muestre cosas distintas no pueden estar conectados iguales, porque entonces todos harán cosas iguales.
 
Hasta donde "creo" entender lo conversado, lo que estás buscando hacer (o te está saliendo) es "multiplexar SEGMENTOS" nó dígitos... pero tampoco se hace así.:unsure::unsure::unsure:🤯
si lo se, el circuito esta bien, el esquematico tambien pero no lo hice para que se entendiera muy bien asi que es confuso
solo vine para saber como usar un RTC y mejoras (que ya me las dijeron)
igual hago los cambios que me piden, para que voy a llevarles la contraria
¡Ah! ¿que es pasatiempo?
Pues ya nos has distraido bastante, tu circuito está mal y no anda. Cambia el multiplexado por uno de verdad y quita la cosa esa.
Como tienes los leds en paralelo todos hacen lo mismo, si no quieres que hagan lo mismo no pueden estar en paralelo, ya te lo hemos dicho cien veces, te han puesto el esquema correcto porque no lo ves. Cambialo porque así es imposible que funcione.
ese es el punto, si usas un display multiplexado y activas todo los digitos podrias notar que los leds actuan como si estuvieran en paralelo
en todo caso cambiare lo que me dijiste, asi que tranquilo
 
si lo se, el circuito esta bien, el esquematico tambien pero no lo hice para que se entendiera muy bien asi que es confuso
solo vine para saber como usar un RTC y mejoras (que ya me las dijeron)
igual hago los cambios que me piden, para que voy a llevarles la contraria
No es así, tu esquema está mal y no funciona.
ese es el punto, si usas un display multiplexado y activas todo los digitos podrias notar que los leds actuan como si estuvieran en paralelo
en todo caso cambiare lo que me dijiste, asi que tranquilo
No, no no, tu esquema no multiplexa nada, no es como si estuvieran en paralelo, en tu esquema están en paralelo
 
No es así, tu esquema está mal y no funciona.

No, no no, tu esquema no multiplexa nada, no es como si estuvieran en paralelo, en tu esquema están en paralelo
ya se que estan en paralelo
pero si los segmentos multiplexados no funcionan como si estuvieran en paralelo, entonces como?

hasta donde se los segmentos funcionan como si estuvieran en paralelo, lo que evita que se enciendan todos al mismo tiempo es el comun (catodo en este caso) el cual se usa para elegir que digito usar
 
Última edición:
si no me falla la memoria, el digito B y C estan en los pines 1 y 2 (PD1 y PD2 me parece recordar) mientras que el digito 6 estaba en el pin 12 creo que seria como el PB2
perdon pero ando haciendo tareas y no tengo el esquematico a mano para darte una respuesta clara
tambien he de decir que nunca he usado un micro controlador de esta forma, solo un arduino en su placa

Raro que no tengas el esquemático a mano ya que lo has publicado, esta en la pagina 1 :LOL:.

Bien, supongamos que los pines están bien, si activas esos pines no se activara nada el display permanecerá apagado. En un display multiplexado, por mas que los pines que dijiste estén mal dos led deberían encenderse.

Como has dicho quieres aprender, por eso te hago estas preguntas para que tu mismo sigas el circuito y te des cuenta como funciona, que hace, si lo hace mal o bien.

Decir que esta bien por terquedad no te va a ayudar a aprender.

Incluso te propongo que uses algún simulador para ver tu circuito funcionando, ni siquiera hace falta que programes nada, solo arma la matriz y conecta los pines a positivo y negativo y ve que pasa. Hay muchos simuladores gratis para instalar e incluso online.

Me olvidaba, usar el RTC es lo mas fácil y simple en este proyecto: comunicación serial, se envía los comandos, se lee la hora y se muestra en el display, incluso hay librerias que hacen el trabajo pesado por vos... pero primero el circuito tiene que funcionar bien.
 
ya se que estan en paralelo
¡Menos mal!. Pensaba que hablaba en chino. Te pido disculpas si he resultado demasiado vehemente.
pero si los segmentos multiplexados no funcionan como si estuvieran en paralelo, entonces como?
Multiplexado. Si lo pones en paralelo, los dos mostrarán lo mismo. El compañero switchxxi te ha puesto un esquema magnífico. Eso NO ES PARALELO
El compañero
hasta donde se los segmentos funcionan como si estuvieran en paralelo, lo que evita que se enciendan todos al mismo tiempo es el comun (catodo en este caso) el cual se usa para elegir que digito usar
Lo sabes mal, estás en un error, lo siento pero es así. Si están en paralelo muestran lo mismo SIEMPRE.
Lo has conectado mal.
Mira el esquema de switchxxi que es diferente al tuyo. Hay una gran diferencia, es lo que intento decirte desde el principio.
 
Raro que no tengas el esquemático a mano ya que lo has publicado, esta en la pagina 1 :LOL:.

Bien, supongamos que los pines están bien, si activas esos pines no se activara nada el display permanecerá apagado. En un display multiplexado, por mas que los pines que dijiste estén mal dos led deberían encenderse.

Como has dicho quieres aprender, por eso te hago estas preguntas para que tu mismo sigas el circuito y te des cuenta como funciona, que hace, si lo hace mal o bien.

Decir que esta bien por terquedad no te va a ayudar a aprender.

Incluso te propongo que uses algún simulador para ver tu circuito funcionando, ni siquiera hace falta que programes nada, solo arma la matriz y conecta los pines a positivo y negativo y ve que pasa. Hay muchos simuladores gratis para instalar e incluso online.

Me olvidaba, usar el RTC es lo mas fácil y simple en este proyecto: comunicación serial, se envía los comandos, se lee la hora y se muestra en el display, incluso hay librerias que hacen el trabajo pesado por vos... pero primero el circuito tiene que funcionar bien.
no lo hago por terquedad, es una mala costumbre que tengo, asi que disculpas por eso
no me expreso muy bien asi que suelo parecer asi cuando quiero dar a saber mi punto o lo que se para saber si estoy en lo correcto o no
creo que tengo un simulador a mano, asi que voy a probarlo
y lo del esquematico, estaba haciendo algunas tareas asi que solo habria esta ventana para responder

edito, ahora si vi lo que me decias xd
siempre me fallan las cosas mas comunes
 
Última edición:
Ultimo intento.

Este es tu diagrama simplificado:

LEDs 1.png

Si solo quieres prender D2 (y en un display multiplexado se puede) no podrás ya que también lo hará D1, lo mismo con D3 y D4.

Ahora como te decimos que debería ser:

LEDs 2.png

En este caso si activas PD0 y PB0 (PD0=5v, PB0=0v) solo se encenderá D2. Como puedes ver lo que están unidos en los LEDs son los cátodos, de ahí que este tipo se llame cátodo común, pero los ánodos están separados y solo se unen son su par en el siguiente dígito, no en el .mismo como tu lo haz echo.

En esta simplificación D1 y D2 serian los LEDs de uno de los dígitos y D3 y D4 los del segundo dígito.
 
Ultimo intento.

Este es tu diagrama simplificado:

Ver el archivo adjunto 196293

Si solo quieres prender D2 (y en un display multiplexado se puede) no podrás ya que también lo hará D1, lo mismo con D3 y D4.

Ahora como te decimos que debería ser:

Ver el archivo adjunto 196294

En este caso si activas PD0 y PB0 (PD0=5v, PB0=0v) solo se encenderá D2. Como puedes ver lo que están unidos en los LEDs son los cátodos, de ahí que este tipo se llame cátodo común, pero los ánodos están separados y solo se unen son su par en el siguiente dígito, no en el .mismo como tu lo haz echo.

En esta simplificación D1 y D2 serian los LEDs de uno de los dígitos y D3 y D4 los del segundo dígito.
si, al hacer el circuito en el simulador me di cuenta del error, perdon por tanta insistencia
hare un nuevo esquematico en cuanto pueda ya que solo tengo una laptop conmigo y nose si aguante el Eagle
hasta entonces me puedes ayudar un momento con el RTC?
 
Última edición:
El RTC es la parte mas fácil del proyecto, mas si programas usando arduino y librerías.

Básicamente, por lo que leí ya que nunca use ese integrado, es una comunicación serial. Se inicia poniendo el pin de datos en modo salida, se pone la linea de RST en alto, se coloca el bit a enviar y se da un pulso de CLK, y así hasta enviar los 8 bits del comando. Luego se pone el pin de datos en modo entrada y si se envió el byte adecuado los próximos 8 bits que transmite el DS1302 contiene la información a leer.

Si usas una librería, esta ya hace el trabajo pesado y devuelve el valor listo para ser mostrado.
 
El RTC es la parte mas fácil del proyecto, mas si programas usando arduino y librerías.

Básicamente, por lo que leí ya que nunca use ese integrado, es una comunicación serial. Se inicia poniendo el pin de datos en modo salida, se pone la linea de RST en alto, se coloca el bit a enviar y se da un pulso de CLK, y así hasta enviar los 8 bits del comando. Luego se pone el pin de datos en modo entrada y si se envió el byte adecuado los próximos 8 bits que transmite el DS1302 contiene la información a leer.

Si usas una librería, esta ya hace el trabajo pesado y devuelve el valor listo para ser mostrado.
Gracias y disculpas por las molestias
Subiré el avance en cuanto lo tenga
 
Arriba