Visualización en 7 segmentos

Foro para hablantes de español que deseen escribir en su lengua materna.

Moderator: Benj

Post Reply
Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Visualización en 7 segmentos

Post by Fer_taca »

Hola,

Como principiante que soy en Flowcode, tengo una nueva consulta para ver si me pueden ayudar.
Se trata de lo siguiente:
Estoy realizando un temporizador regresivo. La parte del ajuste del valor de la temporización y puesta en marcha creo que ya la tengo implementada, salvo depuraciones posteriores durante las pruebas. Esto lo veo visualizando los valores de las distintas variables durante la ejecución del programa.

El problema lo tengo al intentar visualizar los valores en un display (2 dígitos) de 7 segmentos. Los valores serán de un máximo de 60 y no se como poder descomponer el numero en 2 dígitos separados para visualizar cada numero en un digito. Actualmente tengo una macro que me va actualizando el valor del tiempo, este valor cuando alcanza el valor de 10, me pasa el primer digito(unidades) a 0 y me incrementa en una unidad el segundo(decenas). Ahora bien cuando sucede eso, el valor del digito de unidades ya no se vuelve a incrementar, sin embargo cuando el tiempo llega a 20, 30, 40 50 o 60 (valor máximo) el digito de las decenas si se incrementa.

¿Me pueden ayudar a solucionar esta cuestión?
Adjunto el proyecto (sin finalizar) y una imagen de la macro donde se actualizan los valores.

Muchas Gracias
F..
Attachments
Actualizar valores.zip
(71.25 KiB) Downloaded 237 times
TEMPORIZADOR_REGRESIVO_01.fcfx
(30.59 KiB) Downloaded 241 times

medelec35
Matrix Staff
Posts: 9520
Joined: Sat May 05, 2007 2:27 pm
Location: Northamptonshire, UK
Has thanked: 2585 times
Been thanked: 3815 times
Contact:

Re: Visualización en 7 segmentos

Post by medelec35 »

Probar diagrama de flujo adjunto


Try Attached flowchart.
Attachments
TEMPORIZADOR_REGRESIVO_02.fcfx
(26.12 KiB) Downloaded 258 times
Martin

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

Gracias por la respuesta y sobre todo por la corrección del programa.

Llevo parte de la tarde revisando los cambios que me has propuesto y sobre todo estudiando el porque y como se han realizado.
No obstante tengo una pregunta adicional, ya que todo funciona correctamente, pero detecto un pequeño defecto que no se si será por estar viendo el programa en simulación. Se trata de lo siguiente:

Una vez programado un tiempo determinado, en el display se aprecia correctamente el decremento perro cuando la cuenta llega a 0 (variable de Tiempo Total =0) el display se queda marcando el valor "01".
Creo que no debería de pasar pues según el programa cuando el tiempo total es 0 se para el programa hasta que se deshabilita el interruptor de "Start_Stop".

Otra cosa y que no tiene nada que ver con el programa en cuestion, aprovecho el post para una pregunta general: ¿en el panel de sistema no se pueden colocar etiquetas que identifiquen los elementos colcados?

Una vez mas gracias.
F.

medelec35
Matrix Staff
Posts: 9520
Joined: Sat May 05, 2007 2:27 pm
Location: Northamptonshire, UK
Has thanked: 2585 times
Been thanked: 3815 times
Contact:

Re: Visualización en 7 segmentos

Post by medelec35 »

Adding Labels.png
(55.27 KiB) Downloaded 4475 times
Adding Labels2.png
(11.28 KiB) Downloaded 4475 times
o
Adding Labels3.png
(56.41 KiB) Downloaded 4475 times
Martin

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

Gracias nuevamente por la respuesta.

Ya coloqué las etiquetas y pude corregir el que el display no se quedase marcando el valor 01 al llegar a su tiempo final.

F.

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

¿Me pueden indicar si mis cálculos son correctos?
Acabo de terminar el programa de temporización descendente y antes de pasarlo al pcb quería estar seguro de que lo realizado veces esta correctamente.
Cuando lo simulo estimo que la lógica es la correcta, pero en los valores de tiempos que obtengo tengo una duda porque no son los que he diseñado, pienso que debe ser por estar en simulación y que en la realidad son correctos. Los he calculado varias y siempre me han dado los mismos.
Utilizo 2 interrupciones, una del TMR0 y otra del TMR1, agradecería que me indicasen si mis cálculos son correctos o no:
Para el TMR0:
Con un oscilador de 8MHz, oscilador interno y un prescaler de 1:128, Flowcode me dice la frecuencia de interrupción es de 61,035Hz o lo que es lo mismo 0,016384sg. Necesito obtener 60 segundos por lo que utilizo un contador de1sg por lo que cuento 61 veces esa interrupción y cuando se alcanza ese valor, incremento otra variable hasta contar otra vez 60.
Para el TMR1:
Con un oscilador de 8MHz, oscilador interno y un prescaler de 1:8, Flowcode me dice la frecuencia de interrupción es de 3,815Hz o lo que es lo mismo 0,2621234sg. Necesito obtener 12 segundos por lo que utilizo un contador hasta que cuento 458 veces esa interrupción.

Adjunto el fichero del programa.

Muchas Gracias
F.
Attachments
TEMPORIZADOR_REGRESIVO.fcfx
(32.57 KiB) Downloaded 243 times

medelec35
Matrix Staff
Posts: 9520
Joined: Sat May 05, 2007 2:27 pm
Location: Northamptonshire, UK
Has thanked: 2585 times
Been thanked: 3815 times
Contact:

Re: Visualización en 7 segmentos

Post by medelec35 »

¿Qué versión de flowcode estás usando?




what version of flowcode are you using?
Martin

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

La versión que tengo es: 8.0.0.6

En mi pregunta anterior hay un error con el texto del TMR1 indico que necesito 12 segundos. En realidad son 120 por eso la cuenta de 458 interrupciones

medelec35
Matrix Staff
Posts: 9520
Joined: Sat May 05, 2007 2:27 pm
Location: Northamptonshire, UK
Has thanked: 2585 times
Been thanked: 3815 times
Contact:

Re: Visualización en 7 segmentos

Post by medelec35 »

Error causado por un oscilador interno que funciona a una frecuencia incorrecta.
OSCCON ajusta la velocidad del oscilador interno.
Set Osccon Value.png
(116.04 KiB) Downloaded 4430 times
Coloque el bloque de código C al inicio de Main.

Flowcode requiere actualización:
Update V8.png
(192.77 KiB) Downloaded 4430 times
Más preciso si usa timer2:
Timer2 int.png
(22.91 KiB) Downloaded 4430 times
Martin

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

Muchas gracias de nuevo.
Independientemente de la precisión usando el TMR2.
He realizado los cambios propuestos y los tiempos ahora en simulación son mas lentos, pero el tiempo del TMR0 que obtengo ahora es justamente la mitad de lo programado.

Es decir que si programo un tiempo de 60, al dar al interruptor de Start_Stop el display se está decrementando cada segundo cuando en realidad según lo programado si no me he equivocado, el display se debería de decrementar cada minuto. :shock: :shock: :shock:
Attachments
TEMPORIZADOR_REGRESIVO.fcfx
(33.48 KiB) Downloaded 247 times

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

Por otra parte también acabo de comprobar que el tiempo de interrupción del TMR1 sigue siendo muy rápido, prácticamente me está dando un tiempo aproximado de 2sg en vez de los 2 minutos. :shock: :shock: :shock:

medelec35
Matrix Staff
Posts: 9520
Joined: Sat May 05, 2007 2:27 pm
Location: Northamptonshire, UK
Has thanked: 2585 times
Been thanked: 3815 times
Contact:

Re: Visualización en 7 segmentos

Post by medelec35 »

De nada.
Semicolon missing.png
(6.71 KiB) Downloaded 4418 times
Para cronometrar, probar en hardware
Martin

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

Gracias,
Lo raro es que no diese ningún error al compilar.
En cuanto pueda lo pruebo en hardware. Pero se me sigue haciendo muy raro que el tiempo se ajusto 1/10 del tiempo ajustado.
¿Puede revisar la rutina del TMR0 y ver si hay algo mal?

medelec35
Matrix Staff
Posts: 9520
Joined: Sat May 05, 2007 2:27 pm
Location: Northamptonshire, UK
Has thanked: 2585 times
Been thanked: 3815 times
Contact:

Re: Visualización en 7 segmentos

Post by medelec35 »

La simulación es mucho más rápida que en tiempo real.
Martin

Fer_taca
Posts: 91
Joined: Fri Oct 27, 2017 9:50 am
Has thanked: 13 times
Been thanked: 10 times
Contact:

Re: Visualización en 7 segmentos

Post by Fer_taca »

Una vez más gracias.

Post Reply