Autor Tema: Busco ejemplo ADC y Flowcode 8 (potenciometro)  (Leído 841 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado cicloide2

  • PIC18
  • ****
  • Mensajes: 338
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #15 en: 21 de Octubre de 2019, 19:47:57 »
Puedes adjuntar el fichero de proteus para ver que es lo que sucede y que no te muestre los valores.

No tenemos el mismo proteus (no se si recordas, cuando vimos el primer PWM sin ADC), mi version es la 8.8 sp1. Basicamente es un pic16f877a un potenciometro un led y el display, nada mas-

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3434
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #16 en: 25 de Octubre de 2019, 11:20:28 »
Creo que el problema con la no visualización en Proteus se debe a los tiempos de refresco del LCD. Para Proteus no deben estar optimizados con la compilación de Flowcode.
En Flowcode al ser un simulación propio no lo tiene en cuenta y por ese motivo no se ve nada en Proteus.
Al menos esa es mi opinión.
¿No lo puedes probar d forma física?
F.

Desconectado cicloide2

  • PIC18
  • ****
  • Mensajes: 338
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #17 en: 26 de Octubre de 2019, 13:30:13 »
Hola Fermin, aca te subo el archivo que tu me enviaste mas el archivo de proteus. Aparentemente a de ser lo que tu dices, prueva y ve que el led se enciende y se apaga (pero a destiempo) y en el LCD no se muestra nada directamente.

Con el archivo anterior (el que yo subi, que no es mas que tu mismo archivo pero hecho para el micro que tengo a mano que es un 16F877A ) pasa lo mismo, a diferencia que en este el display muestra cero en ambas lineas, pero el led no se enciende.

Otra cosa que note que tiene problemas es en Flowcode al querer setear un frecuencia en particular (20K, son los que me interesan) en cada simulacion cambia por si solo el valor sin que haga nada.

Como probarlo en fisico puedo, tengo un pote de 10K un micro 16F877A  un led y alguna r por ahi, el punto es que no voy a poder saber si la frecuencia del PWM es la que sete, por que no tengo osci.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3434
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #18 en: 26 de Octubre de 2019, 17:49:19 »
Acabo de ver lo adjuntado.
En el LCD no se aprecia nada. Me reafirmo en lo indicado en el post anterior.
Referente al problema de Flowcode no entiendo muy bien el problema que se te origina.
Si no tienes oscilador, quizás tengas un micro que tenga oscilador interno y puedas probar de forma física.

F.

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3434
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #19 en: 26 de Octubre de 2019, 18:06:18 »
Creo haber encontrado tu error con el PWM en tu ejemplo:
1º Tienes seleccionado 2 módulos PWM uno en el panel 3D que has llamado PWM1 y el otro lo tienes seleccionado en el panel 2D, donde tienes el LCD, en este le has llamado PWM2.
2º En el diagrama de flujo tienes, al inicio habilitado el PWM2 y después quieres presentar el valor del ADC en el PWM1, por eso no ves el duty cycle.

Tienes que:
a.- Borrar el componente PWM1 del panel 3d
b.- Cambiar el bloque de asignar el valor del duty cycle de acuerdo a la figura adjunta.

F.

 

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3434
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #20 en: 26 de Octubre de 2019, 18:35:07 »
Mira con mas detenimiento he revisado todo y también he encontrado algunos fallos en la parte del fichero de proteus.

1º.- Faltaban las conexiones a los pines RS(RB4) y E(RB5) del LCD.
2º.-  Las lineas de datos también estaban mal colocadas las he cambiado a los pines D4(RB0),5(RB1),6(RB2),7(RB3), del LCD.

Con todo esto ya se aprecian los valores en el LCD de proteus , pero la simulación falla y no encuentro porque. Me da un error de TIME-OUT y el cambio de valores solo van en modo ascendente.

De todas formas y con referencia la diagrama de Flowcode  cuando lees el valor del ADC, este puede llegar hasta 1023 y cuando le asignas al duty cicle este aumenta hasta 255, al llegara a ese valor vuelve a empezar desde 0. Esto es debido porque la asignación la tienes declarada con BYTE y por tanto solo llega hasta 255. Debes de poner algún tipo de limitación, conversión o declarar el valor leído con otro tipo.

Te adjunto los ficheros actualizados.

F.

Desconectado cicloide2

  • PIC18
  • ****
  • Mensajes: 338
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #21 en: 26 de Octubre de 2019, 18:50:23 »
Mira con mas detenimiento he revisado todo y también he encontrado algunos fallos en la parte del fichero de proteus.

1º.- Faltaban las conexiones a los pines RS(RB4) y E(RB5) del LCD.
2º.-  Las lineas de datos también estaban mal colocadas las he cambiado a los pines D4(RB0),5(RB1),6(RB2),7(RB3), del LCD.

Con todo esto ya se aprecian los valores en el LCD de proteus , pero la simulación falla y no encuentro porque. Me da un error de TIME-OUT y el cambio de valores solo van en modo ascendente.

De todas formas y con referencia la diagrama de Flowcode  cuando lees el valor del ADC, este puede llegar hasta 1023 y cuando le asignas al duty cicle este aumenta hasta 255, al llegara a ese valor vuelve a empezar desde 0. Esto es debido porque la asignación la tienes declarada con BYTE y por tanto solo llega hasta 255. Debes de poner algún tipo de limitación, conversión o declarar el valor leído con otro tipo.

Te adjunto los ficheros actualizados.

F.

Si Fer es verdad me di cuenta tarde pero me di cuenta   :mrgreen: (de de esas dos conecciones en el lcd) ahora mira lo hice toooooooodo otra vez y voila funciona pero proteus muestra una frecuencia de 5 Khz y flowcode de 20Khz ¿? por que, no se.

Respecto al duty yo selecciono conversion a 10 bit en el pwm, (la imagen en el siguiente post por que no se como pegar la imagen como lo haces vos.

Compilalo en flowcode y fijate ese "warning" que aparece dice que es algo que esta en uso pero no recibe valores, pasa tanto en este archivo que subo ahora como en el que vos modificaste.


« Última modificación: 26 de Octubre de 2019, 19:06:11 por cicloide2 »

Desconectado cicloide2

  • PIC18
  • ****
  • Mensajes: 338
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #22 en: 26 de Octubre de 2019, 19:10:21 »
Mira con mas detenimiento he revisado todo y también he encontrado algunos fallos en la parte del fichero de proteus.

1º.- Faltaban las conexiones a los pines RS(RB4) y E(RB5) del LCD.
2º.-  Las lineas de datos también estaban mal colocadas las he cambiado a los pines D4(RB0),5(RB1),6(RB2),7(RB3), del LCD.

Con todo esto ya se aprecian los valores en el LCD de proteus , pero la simulación falla y no encuentro porque. Me da un error de TIME-OUT y el cambio de valores solo van en modo ascendente.

De todas formas y con referencia la diagrama de Flowcode  cuando lees el valor del ADC, este puede llegar hasta 1023 y cuando le asignas al duty cicle este aumenta hasta 255, al llegara a ese valor vuelve a empezar desde 0. Esto es debido porque la asignación la tienes declarada con BYTE y por tanto solo llega hasta 255. Debes de poner algún tipo de limitación, conversión o declarar el valor leído con otro tipo.

Te adjunto los ficheros actualizados.

F.

Si Fer es verdad me di cuenta tarde pero me di cuenta   :mrgreen: (de de esas dos conecciones en el lcd) ahora mira lo hice toooooooodo otra vez y voila funciona pero proteus muestra una frecuencia de 5 Khz y flowcode de 20Khz ¿? por que, no se.

Respecto al duty yo selecciono conversion a 10 bit en el pwm, (la imagen en el siguiente post por que no se como pegar la imagen como lo haces vos.

Compilalo en flowcode y fijate ese "warning" que aparece dice que es algo que esta en uso pero no recibe valores, pasa tanto en este archivo que subo ahora como en el que vos modificaste.

Aca la captura donde seteo que valores que tomara el duty

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3434
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #23 en: 26 de Octubre de 2019, 19:28:30 »
En la última captura lo que se elige es que el valor leído para el duty cicle sea de 10bits
Los warnings de la compilación lo único que indican es que Flowcode no utiliza una serie de variables internas.
Con respecto a los valores de la frecuencia distintos no entiendo porque, ni tampoco sabría ahora decirte cual es el correcto.

F.

P.D.: Lo que si he visto es que cambiando la frecuencia de Flowcode, la que se observa en Proteus siempre es la cuarta parte de lo que indica Flowcode.
« Última modificación: 26 de Octubre de 2019, 19:39:28 por Fer_TACA, Razón: Añadir P.D. »

Desconectado cicloide2

  • PIC18
  • ****
  • Mensajes: 338
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #24 en: 27 de Octubre de 2019, 14:42:15 »
En la última captura lo que se elige es que el valor leído para el duty cicle sea de 10bits
Los warnings de la compilación lo único que indican es que Flowcode no utiliza una serie de variables internas.
Con respecto a los valores de la frecuencia distintos no entiendo porque, ni tampoco sabría ahora decirte cual es el correcto.

F.

P.D.: Lo que si he visto es que cambiando la frecuencia de Flowcode, la que se observa en Proteus siempre es la cuarta parte de lo que indica Flowcode.
Si en la captura lo que te quiero mostrar es que esta bien asignada la variable al duty del pwm el adc (potenciometro realiza la convercion  a 10 bit) y el seteo que hago en el PWM (captura) es a 10 bit.
Pero sin embargo en el ejercicio del PWM y el led (no de este post del que vimos en su momento cuando consulte por los PWM) bueno, en ese ejercicio si funcionaba correctamente la frecuencia de flowcode era la misma que mostraba proteus, raro no? vos aconsejas que para ver 20Khz en proteus genere una frecuencia de 100Khz en flowcode? en ese caso como compruebo quien miente si no tengo osci? gracias. :? :(
« Última modificación: 27 de Octubre de 2019, 14:44:47 por cicloide2 »

Desconectado Fer_TACA

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3434
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #25 en: 27 de Octubre de 2019, 15:43:24 »
Si en la captura lo que te quiero mostrar es que esta bien asignada la variable al duty del pwm el adc (potenciometro realiza la convercion  a 10 bit) y el seteo que hago en el PWM (captura) es a 10 bit.
Pero sin embargo en el ejercicio del PWM y el led (no de este post del que vimos en su momento cuando consulte por los PWM) bueno, en ese ejercicio si funcionaba correctamente la frecuencia de flowcode era la misma que mostraba proteus, raro no? vos aconsejas que para ver 20Khz en proteus genere una frecuencia de 100Khz en flowcode? en ese caso como compruebo quien miente si no tengo osci? gracias. :? :(

Yo también creo que es raro la diferencia de la frecuencia y no se cual es lo correcto. De todas formas si tienes por ahí el ejemplo donde si funcionaba y me lo pasas puedo investigar mas a ver si encuentro el porque.
No te aconsejo lo de colocar la frecuencia a 80KHz para obtener los 20Khz, hasta no saber cual es el dato verdadero.

F.

Desconectado cicloide2

  • PIC18
  • ****
  • Mensajes: 338
Re:Busco ejemplo ADC y Flowcode 8 (potenciometro)
« Respuesta #26 en: 28 de Octubre de 2019, 21:34:03 »
Si en la captura lo que te quiero mostrar es que esta bien asignada la variable al duty del pwm el adc (potenciometro realiza la convercion  a 10 bit) y el seteo que hago en el PWM (captura) es a 10 bit.
Pero sin embargo en el ejercicio del PWM y el led (no de este post del que vimos en su momento cuando consulte por los PWM) bueno, en ese ejercicio si funcionaba correctamente la frecuencia de flowcode era la misma que mostraba proteus, raro no? vos aconsejas que para ver 20Khz en proteus genere una frecuencia de 100Khz en flowcode? en ese caso como compruebo quien miente si no tengo osci? gracias. :? :(

Yo también creo que es raro la diferencia de la frecuencia y no se cual es lo correcto. De todas formas si tienes por ahí el ejemplo donde si funcionaba y me lo pasas puedo investigar mas a ver si encuentro el porque.
No te aconsejo lo de colocar la frecuencia a 80KHz para obtener los 20Khz, hasta no saber cual es el dato verdadero.

F.

Hola Fermin, no en realidad no tengo un ejercicio que funcione como deberia, yo pense que este https://www.todopic.com.ar/foros/index.php?topic=49397.0 si funcionaba, pero lo simule en proteus y tira como 50khz cuando fue programado en flowcode a 20khz (lo que es no tener un osci. para provarlo)  :(