ATENCIÓN

La presente página es sólo un testimonio de una antigua versión del programa de foros. No es posible aquí ni escribir ni registrarse

El foro actual de webcampista está en la página .: https://www.webcampista.com 
Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 20 de 37

Tema: Displays de 7 segmentos

  1. #1
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586

    Displays de 7 segmentos

    Hola a Tod@s.

    Tengo un problema con 4 displays individuales multiplexados, estos funcionan a través de un 74LS48 y unas resistencias de 220 ohmios pero los displays se ven muy ténues. He cambiado una resistencia por otra de 100 ohmios y no se nota que el segmento correspondiente se ilumine más, incluso he puenteado una resistencia y tampoco se nota más brillo en ese segmento. Los cátodos de cada display van a través de un transistor BC547 y la alimentación a 5v.

    Espero que alguno me "ilumine".

    Gracias y saludos.

  2. #2
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Pon el circuito. ¿solo lleva una resistencia? cuando solo lleva una resistencia y hay muchos segmentos encendidos, se iluminan menos, pues la corriente total que pasa por ella se reparte entre los encendidos. Si lleva 7 resistencias y todos se ven mal, tiene pinta de el transistor. ¿antes se veían bien?

    Edito, ya entiendo que cada uno lleva su resistencia. También puede ser el integrado. Piensa que si fallan todos, tiene que ser lo común a todos.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  3. #3
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Mirando el datasheet, parece que tiene una pata (la 5) para que se apaguen todos los segmentos, si ahí se ha colado algo algo de ruido, o de PWM que funcione mal, que hace que se encienda y se apague, la luminosidad total baja. ¿ha cambiado algo ahí?
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  4. #4
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586
    No, no ha cambiado nada, es un circuito nuevo que acabo de hacer y al probarlo los displays casi no se iluminan. He medido la tensión de salida en cada una de las 7 patas del 7448 y varía entre 0.15v y 2,86v dependiendo de que dígito hay en los displays. Los displays funcionan por que los probé antes de ponerlos en la placa.
    Subo el circuito.

    Nombre:  despertador.jpg
Visitas: 15012
Tamaño: 60.3 KB

    Gracias y saludos.

  5. #5
    Senior Member hablador Avatar de Josefe17
    Fecha de ingreso
    14 May, 11
    Ubicación
    Madrid
    Edad
    29
    Mensajes
    1,039
    No será que tienes baja la alimentación del circuito. Se me hacen pocos voltios para la salida high del decodificador. Prueba con el CD4511, que también es un deco de 7 segmentos, aunque no se si es compatible pin a pin.


    Edito, sí lo es.

    Reedito: lo es pero el pin 5 tiene lógica inversa: lo has de conectar a masa en lugar de a 5v para que funcione.

  6. #6
    Senior Member hablador Avatar de Josefe17
    Fecha de ingreso
    14 May, 11
    Ubicación
    Madrid
    Edad
    29
    Mensajes
    1,039
    Es más, el 74LS48 acepta la lógica del 4511, así que mejor pon el pin 5 a masa en cualquier caso.
    J = σ · E , P = ∫∫(E x H)·dS
    Sun Roller Jazz 49Cp + Hyundai Trajet. Con ganas de probarlos.


  7. #7
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Edito. Voy a revisar lo de los niveles, pone que la máxima corriente es a nivel bajo (6mA) pero todos los circuitos que encuentro son a nivel alto.

    https://www.physics.rutgers.edu/ugra...74ls48rev5.pdf
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  8. #8
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Otra cosa, la multplexación hace que el led no esté encendido todo el tiempo, la resistencia hay que calcularla para que la corriente equivalente sea la misma que si estuviera siempre encendido. Hay cuatro displays, 1/4 de tiempo, la resistencia hay que calcularla para que "meta" 4 veces más corriente (si dura poco el led debería soportar ese pico, la corriente efectiva sería la misma), o no se iluminará del todo. Aunque si dices que lo has probado sin resistencia... Quizá haya un tiempo en el que los cuatro estén apagados.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  9. #9
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    A lo mejor es que no se ve mucho más.

    En este datasheet indica que sí es a nivel alto, pero a través de una resistencia de 2k. Esto es, según ellos, 6mA como mucho.
    http://www.ti.com/lit/ds/symlink/sn7446a.pdf

    Se contradice un poco con el anterior, o así lo entiendo yo con lo que he entendido del otro datasheet. En la web hay circuitos que van a nivel bajo y también a nivel alto. atención a si es 7447 ó 7446 (que son en colector abierto -> salida activa a nivel bajo)

    ¿de donde salen los 6mA? pues 2k x 6mA= 1.2V en la resistencia, en el led -> 5V- 1.2= 3.8V, que se corresponde con un led blanco, el rojo debería verse más (a costa de más corriente) también quiere decir que no es necesaria resistencia adicional.

    Puesto que está multiplexado, quizá es eso lo que hace que no ilumine bien. 6mA/4 = 1.5mA, si no son leds de alta eficiencia, se iluminará poco.

    Edito: me parece que no puedes cambiar la programación ¿no? si pudieras, se podría poner un 7447, display con ánodo común, un transistor a positivo en vez de a negativo y, lo más interesante, resistencias más bajas que dan más corriente.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  10. #10
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586
    Cita Iniciado por Josefe17 Ver mensaje
    Es más, el 74LS48 acepta la lógica del 4511, así que mejor pon el pin 5 a masa en cualquier caso.
    ¿Quieres decir que ponga la pata 5 del 7448 a masa?, ¿no hay que variar nada más?.

    Cita Iniciado por Aunolose Ver mensaje
    A lo mejor es que no se ve mucho más.

    En este datasheet indica que sí es a nivel alto, pero a través de una resistencia de 2k. Esto es, según ellos, 6mA como mucho.
    http://www.ti.com/lit/ds/symlink/sn7446a.pdf

    Se contradice un poco con el anterior, o así lo entiendo yo con lo que he entendido del otro datasheet. En la web hay circuitos que van a nivel bajo y también a nivel alto. atención a si es 7447 ó 7446 (que son en colector abierto -> salida activa a nivel bajo)

    ¿de donde salen los 6mA? pues 2k x 6mA= 1.2V en la resistencia, en el led -> 5V- 1.2= 3.8V, que se corresponde con un led blanco, el rojo debería verse más (a costa de más corriente) también quiere decir que no es necesaria resistencia adicional.

    Puesto que está multiplexado, quizá es eso lo que hace que no ilumine bien. 6mA/4 = 1.5mA, si no son leds de alta eficiencia, se iluminará poco.

    Edito: me parece que no puedes cambiar la programación ¿no? si pudieras, se podría poner un 7447, display con ánodo común, un transistor a positivo en vez de a negativo y, lo más interesante, resistencias más bajas que dan más corriente.
    No, no tengo acceso a al programa y aunque pudiera no sabría como hacer el cambio. Si cambio al 7447 y displays de ánodo común, aparte de no valer el programa tendría que volver a empezar de cero.

    Gracias y saludos.

  11. #11
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    ¿tienes un fuente de alimentación y un amperímetro sensible? Puedes hacer la prueba de lo que se ilumina un led con 6mA y con 1.5, si es parecido a lo que se iluminan en el circuito, es que no hay ningún fallo. Quizá hay en el mercado algún display más brillante.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  12. #12
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586
    No tengo fuente de alimentación como tal, utilizo un transformador de 12v y luego un regulador ajustable para bajarlo a 5v. El lunes si puedo subo una foto con el mismo display en dos montajes diferentes alimentados con la misma "fuente" para que veas la diferencia de luminosidad.

    Gracias y saludos.

  13. #13
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Cita Iniciado por Fernandocasa Ver mensaje
    No tengo fuente de alimentación como tal, utilizo un transformador de 12v y luego un regulador ajustable para bajarlo a 5v. El lunes si puedo subo una foto con el mismo display en dos montajes diferentes alimentados con la misma "fuente" para que veas la diferencia de luminosidad.

    Gracias y saludos.
    El regulador ajustable te sirve, si tienes el amperímetro. Pones una resistencia de 2k2 y un led del display (no hay resistencias standar de 2K) como puedes ajustar la tensión y la resistencia siempre es la misma, puedes ajustar la corriente. Pues cuando midas 6mA, verás la luminosidad que da el led, esa será la máxima luz que puede entregar el led con el 74LS48. Luego le quitas 3/4, es decir, ajustas a 1.5mA y si esa luminosidad será la que entregue en el circuito. Más o menos, pues el display está multiplexado, y el micro reparte el tiempo de encendido entre los 4 displays.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  14. #14
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586
    Hola a Tod@s.

    Subo las fotos que he hecho, una con luz ambiente y la otra a oscuras, en los dos montajes es el mismo display.

    Nombre:  IMG_20151130_112059.jpg
Visitas: 258
Tamaño: 28.6 KB
    Nombre:  IMG_20151130_112116.jpg
Visitas: 245
Tamaño: 29.3 KB

    No se aprecia mucho, pero en directo el de la izquierda apenas se ve.

    Saludos.

  15. #15
    Senior Member hablador Avatar de Josefe17
    Fecha de ingreso
    14 May, 11
    Ubicación
    Madrid
    Edad
    29
    Mensajes
    1,039
    Es un 16F84 el micro? Es porque hagas una prueba.
    J = σ · E , P = ∫∫(E x H)·dS
    Sun Roller Jazz 49Cp + Hyundai Trajet. Con ganas de probarlos.


  16. #16
    Senior Member hablador Avatar de Josefe17
    Fecha de ingreso
    14 May, 11
    Ubicación
    Madrid
    Edad
    29
    Mensajes
    1,039
    Este código que he hecho te debería permitir hacer pruebas. Dándole a cada botón en interruptor se enciende cada display sin multiplexados al máximo brillo mostrando un 8 (o eso debiera), para poder medir la tensión y corriente sobre cada diodo. No sé como habrás programado el micro, por lo que te paso el código fuente y el fichero .hex con el código máquina para que lo grabes. Me he basado en el esquema y en la asignación de pines de la imagen. Si no funciona o has cambiado algo dímelo.
    Código:
    // CONFIG
    
    #define _XTAL_FREQ 4000000
    #include <xc.h>
    
    // CONFIG
    #pragma config FOSC = XT        // Oscillator Selection bits (XT oscillator)
    #pragma config WDTE = OFF       // Watchdog Timer (WDT disabled)
    #pragma config PWRTE = OFF      // Power-up Timer Enable bit (Power-up Timer is disabled)
    #pragma config CP = OFF         // Code Protection bit (Code protection disabled)
    
    
    void main (void){
        TRISA=0b00011111;
        TRISB=0;
        while(1){
            PORTB=8;
            PORTBbits.RB4=!PORTAbits.RA1;
            PORTBbits.RB5=!PORTAbits.RA2;
            PORTBbits.RB6=!PORTAbits.RA3;
            PORTBbits.RB7=!PORTAbits.RA4;
        }
    }

    16f84_test.X.production.txt

    Cambia la extensión de .txt a .hex para poderlo grabar.
    J = σ · E , P = ∫∫(E x H)·dS
    Sun Roller Jazz 49Cp + Hyundai Trajet. Con ganas de probarlos.


  17. #17
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586
    Cita Iniciado por Josefe17 Ver mensaje
    Este código que he hecho te debería permitir hacer pruebas. Dándole a cada botón en interruptor se enciende cada display sin multiplexados al máximo brillo mostrando un 8 (o eso debiera), para poder medir la tensión y corriente sobre cada diodo. No sé como habrás programado el micro, por lo que te paso el código fuente y el fichero .hex con el código máquina para que lo grabes. Me he basado en el esquema y en la asignación de pines de la imagen. Si no funciona o has cambiado algo dímelo.
    Código:
    // CONFIG
    
    #define _XTAL_FREQ 4000000
    #include <xc.h>
    
    // CONFIG
    #pragma config FOSC = XT        // Oscillator Selection bits (XT oscillator)
    #pragma config WDTE = OFF       // Watchdog Timer (WDT disabled)
    #pragma config PWRTE = OFF      // Power-up Timer Enable bit (Power-up Timer is disabled)
    #pragma config CP = OFF         // Code Protection bit (Code protection disabled)
    
    
    void main (void){
        TRISA=0b00011111;
        TRISB=0;
        while(1){
            PORTB=8;
            PORTBbits.RB4=!PORTAbits.RA1;
            PORTBbits.RB5=!PORTAbits.RA2;
            PORTBbits.RB6=!PORTAbits.RA3;
            PORTBbits.RB7=!PORTAbits.RA4;
        }
    }

    16f84_test.X.production.txt

    Cambia la extensión de .txt a .hex para poderlo grabar.
    Gracias por contestar.

    Efectivamente el micro es un 16F84A.

    Buscando por internet he encontrado los archivos ASM y HEX, pero no se programar, no se modificar el programa y tampoco se compilarlo. Lo más que puedo hacer es pasaros los archivos.

    Gracias y saludos.

  18. #18
    Senior Member hablador Avatar de Fernandocasa
    Fecha de ingreso
    17 Jan, 05
    Ubicación
    Madrid
    Edad
    62
    Mensajes
    586
    Hola a Tod@s.

    Pensando en el esquema, creo que la falta de brillo en los displays ¿puede ser debido a la programación?. Me explico, he dado la vuelta a los dos displays de los minutos para que con los puntos de los dos centrales ( : ) parpadeen una vez por segundo y separen las horas de los minutos. Esa parte la he hecho yo con un 555 y también he sustituido el led para indicar que la alarma está conectada por el punto del display de la derecha. Todo esto no pasa por el 7448 ni por el micro. Al probarlo con resistencias de 220 ohmios había una diferencia de luminosisdad muy grande con respecto a los dígitos, las he cambiado por resistencias de 1k y se ha igualado.

    Saludos.

  19. #19
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Cita Iniciado por Fernandocasa Ver mensaje
    Hola a Tod@s.

    Pensando en el esquema, creo que la falta de brillo en los displays ¿puede ser debido a la programación?. Me explico, he dado la vuelta a los dos displays de los minutos para que con los puntos de los dos centrales ( : ) parpadeen una vez por segundo y separen las horas de los minutos. Esa parte la he hecho yo con un 555 y también he sustituido el led para indicar que la alarma está conectada por el punto del display de la derecha. Todo esto no pasa por el 7448 ni por el micro. Al probarlo con resistencias de 220 ohmios había una diferencia de luminosisdad muy grande con respecto a los dígitos, las he cambiado por resistencias de 1k y se ha igualado.

    Saludos.
    Claro. Es lo que comentaba antes. Tal y como está montado, no pueden estar encendidos dos display al mismo tiempo: está multiplexado, es decir, durante 1/4 del tiempo se activa solo un transistor y se manda la información para que se enciendan los leds correspondientes, por ejemplo los minutos, pasado ese 1/4 del tiempo, se activa otro transistor y solo ese, por ejemplo las decenas de minutos, la información del 74LS48 cambia para mostrar esos dígitos, así con los 4 leds.

    Como la corriente que pasa por los leds viene marcada por la resistencia del 74LS48 y es de 2K, la corriente máxima será (5V- tensión del led)/2k, pero es que solo pasa durante 1/4 del tiempo, luego es eso, partido por 4.

    En el circuito que tu pones, es todo el tiempo (aunque se corte cada segundo) entonces es 5V/1K, que es mucha más corriente.

    En este circuito no hay solución posible, pues no podemos cambiar la resistencia del 74LS48. Tendríamos que poner una de 500 ohm, por ejemplo.





    Bueno... quizá si haya solución... aunque no simple. El integrado no lo puedes alimentar a más de 5V, luego entre masa y la salida, eso será lo que salga: 5V respecto a masa en serie con una resistencia de 2k. Y los cátodos del led están a masa a través del transistor, pero ¿y si el transistor no fuera a masa? si pones el transistor a -2V respeto a masa, la corriente aumenta y aumenta la luminosidad de los leds.

    Atención, si cambias de sitio el emisor de los transistores, la base de base debe cambiarse también, debería ser -2 también para que se corte, como el PIC solo manda 0V, la tensión base emisor le llegan 2V (a través de la resistencia de 680 ohm) y satura... tampoco es complicado hacer eso, pero es un suma y sigue, que no sé si vale la pena.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

  20. #20
    Adict Member hablador Avatar de Aunolose
    Fecha de ingreso
    01 Jun, 05
    Ubicación
    En el foro de Webcampista
    Mensajes
    37,697
    Edito, no vale, el 74LS49 es colector abierto, es decir, da negativo o nada.


    Otra opción es usar la información del 7448 para atacar un driver que pueda meter más corriente, mucho más sencillo.
    Cuanto más se aleja una ciencia de las matemáticas, menos tiene de ciencia.

    Ni en mi cartera ni en mi bragueta

Página 1 de 2 12 ÚltimoÚltimo

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •