PIC16F676 - ¿Es posible agregar un circuito de atenuación a las pantallas de siete segmentos?

1

Estoy intentando construir un voltímetro basado en PIC16F676 usando 3 pantallas multiplexadas de siete segmentos de ánodo común. ¿Es posible agregar un atenuador activado por luz para controlar el brillo de las pantallas a través del PIC o controlar la corriente externamente contra las pantallas? Esto resultaría en una pantalla brillante en condiciones de luz brillante y un atenuador en condiciones de oscuridad para no ser tan brillante ni distraer. La mayoría de las pantallas estándar de siete segmentos no suelen ser tan brillantes, pero se trata de una pantalla grande que usa leds brillantes.

Editar: estoy agregando el esquema del que estoy trabajando. Supongo que debería haber añadido en el principio. Lo siento, gente.

Sitio original: enlace

En la pantalla, cada segmento contiene 5x leds en paralelo. Como resultado, los BC557 deberán cambiarse a algo más grande, ya que 5x leds paralelos pueden dibujar > 100ma. El problema de los leds es que estoy usando 01005 SMD leds en un factor de forma pequeño, pero solo los encuentro en stoopid bright en lugar de standard bright. :( Cuando pensé en plantear esta pregunta, tuve dificultades para imaginar cómo titularla y estoy tratando de no dibujar la pregunta en esa dirección.

    
pregunta Remembermyname

3 respuestas

5

Necesitas hacer dos cosas separadas:

  1. Mida el nivel de luz. Esto debe hacerse con una resistencia dependiente de la luz y una entrada analógica del PIC.

  2. Ajusta el brillo de la pantalla. La forma más sencilla en que puedo pensar es reducir el ciclo de trabajo, la fracción del tiempo que los LED están encendidos.
    Ya está cambiando rápidamente entre los dígitos separados, por lo que debería ser una cuestión simple activarlos cada uno por un período de tiempo aún más corto. Esto hará que parezcan menos brillantes.

Luego puedes vincular los dos con una fórmula o algoritmo, que puedes desarrollar por experimento.

Una nota sobre multiplexación:
Por lo general, puede salirse con un parpadeo de un LED a quizás 50 o 100 Hz, si es para un rango de brillo normal. Pero para ciclos de trabajo muy cortos (y tendrá que ir muy corto para obtener una pantalla tenue, tal vez 1/256), incluso 100 Hz comienzan a parecer extraños, las luces dejan rayas punteadas mientras mira alrededor de la habitación. Así que apunta a algo más como 1 kHz, para asegurarte de que se vea suave incluso con un brillo bajo.

    
respondido por el tomnexus
0

Deberías leer la resistencia conectada a RA4 con un ADC. Con el valor de voltaje, establece el ciclo de trabajo en PWMs creados en RA0 / 1/2. Si tiene PWM de hardware en esos pines, puede usarlos y deshabilitarlos cuando el múltiplex no debería estar habilitado en cada dígito.

Recuerde que al multiplexar sus dígitos ya perderá alrededor de 2/3 de su brillo, ya que estará alrededor de 2/3 del tiempo desactivado. Si necesita atenuar más, debe deshabilitar el ánodo común durante un período más largo en cada ciclo múltiplex.

    
respondido por el Ronan Paixão
0

Tiene dos métodos para controlar el brillo de los LED: 1) Controle la corriente a través del ánodo común de las pantallas, tal vez utilizando transistores para seleccionar varios valores de resistencia (o dispositivo de resistencia conmutable digital)

2) El ancho de pulso modula los segmentos LED. Use una rutina de interrupción, temporizadores, y encienda y apague los segmentos de LED y controle la relación entre el tiempo de encendido y apagado de los LED.

    
respondido por el Dean

Lea otras preguntas en las etiquetas