Voltímetro con el ADC del PIC

Estado
Cerrado para nuevas respuestas.
Quiero modificar el programa de D@rkbytes de cátodo común a ánodo común y me quedé acá. No me funciona bien. ¿Qué es lo que estoy haciendo mal?
Cambia la rutina para multiplexar los displays por esta otra:
PHP:
      output_b(0xFE);   // Activar display 1 y desactivar display 2 y 3
      output_c(tabla_7segs[display[3]]);  // Mostrar unidades.
      delay_ms(1);   // Retardo para mostrar las unidades.
      output_b(0xFD);   // Activar display 2 y desactivar Display 1 y 3
      output_c(tabla_7segs[display[2]]);  // Mostrar decenas.
      delay_ms(1);   // Retardo para mostrar las decenas.
      output_b(0xFB);   // Activar display 3 y desactivar Display 1 y 2
      output_c(tabla_7segs[display[1]]);  // Mostrar las centenas.
      output_low(punto);  // Apagar el punto.
      delay_ms(1);   // Retardo para mostrar las centenas.
      output_b(0xF7);
      output_c(tabla_7segs[display[0]]);  // Mostrar los millares.
      output_high(punto);   // Encender el punto.
      delay_ms(1);
PD:
Ya encontré la forma para mejorar la transición de los decimales.
 
¿Los transistores coloco PNP y el resto lo dejo igual que en la simulación?

Consulta: ¿Cómo controlo por PWM un mosfet para hacer una fuente?
 
Última edición por un moderador:
Si. Pero recuerda que ahora debes colocar los emisores hacia positivo y los colectores hacia los ánodos de los displays.

La segunda pregunta no la entendí. ¿Podrías explicarlo mejor?
 
Última edición:
Estoy haciendo una fuente pequeña le voy a colocar el voltimetro con display de 7 segmentos y queria controlar con el pic un transistor para hacer la fuente y subir y bajar el voltaje con dos pulsadores no se si se puede. Saludos
 
ok si es pulsante podría poner un mosfet, también pienso como llegar a los 18 volt ya que con el pic solo saldría 5 volt como máximo tendría que amplificar con un operacional mmmm bastante complicado para mi , saludos
 
Ya encontré la forma para mejorar la transición de los decimales.
Aquí adjunto el programa con los cambios para lograr una lectura más estable.

Mejoras realizadas:

  1. ADC a 16 Bits.
  2. Uso del Timer 1 para realizar la lectura del conversor.
  3. Voltaje de referencia externo en 2.5 V. con un C.I. TL431.
Notas:
Proyecto probado y funcionando físicamente con 4 displays de cátodo común.
Si se desea usar displays de ánodo común, en posts anteriores de ha dicho como realizar el cambio.
 

Adjuntos

Hola callecuatro1976

Tal vez parpadea la pantalla porque el código le faltan algunas mejoras.
Viste los Avisos que se generan al correr la simulación ??

Hice algunos cambios en tu código y reacomodé todo en la simulación de ISIS de Proteus.
Yo no se mucho de programación pero Tú, de alguna manera, debes modificar tu código para que no se borren los letreros Volts y Ampers en el Display. Tan solo borra las lecturas anteriores e imprime las nuevas, no importa que tengan el mismo valor.

Te adjunto tu código y el archivo de ISIS de Proteus Modificados.

saludos
a sus ordenes
 

Adjuntos

Una consulta arme el voltimetro lcd y funciona bien uso el lcd gdm1602a y anda perfecto ahora quiero usar el gdm1602s de caracteres grande y solo me muestra una línea y todos los cuadraditos y nada mas que puede ser
 
Una consulta arme el voltimetro lcd y funciona bien uso el lcd gdm1602a y anda perfecto ahora quiero usar el gdm1602s de caracteres grande y solo me muestra una línea y todos los cuadraditos y nada mas que puede ser
Hola...Generalmente eso indica una falta de conexión con el micro-controlador. Puede ser por error de conexiones o por incompatibilidad de algún tipo. Aparentemente son similares.
Saludos.

Ric.
 
Aquí adjunto el programa con los cambios para lograr una lectura más estable.

Mejoras realizadas:

  1. ADC a 16 Bits.
  2. Uso del Timer 1 para realizar la lectura del conversor.
  3. Voltaje de referencia externo en 2.5 V. con un C.I. TL431.
Notas:
Proyecto probado y funcionando físicamente con 4 displays de cátodo común.
Si se desea usar displays de ánodo común, en posts anteriores de ha dicho como realizar el cambio.
el 16F887, ¿no tiene un ADC de 10bits de máxima resolución?
 
consulta estoy pasando el voltímetro a un lcd de 1 línea y me escribe solo la mitad 8 caracteres??? porque es eso
Hola...Puede ser problema de compatibilidad de como trata el compilador la linea y el LCD que estas usando...alguna ves tuve ese tipo de problemas y lo considere como si fuera de dos lineas de 8 caracteres cada una y funciono.
Saludos.

Ric.
 
consulta estoy armando el voltímetro de 7 segmentos ánodo común con la rutina de darkbytes y en el simulador me funciona pero cuando armo en la placa se ven todos 8888 y muy rápido como muestro mas lenta la lectura, gracias por el tiempo
 
Estado
Cerrado para nuevas respuestas.

Temas similares

Arriba