Autor Tema: visualizacion en display  (Leído 2026 veces)

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

Desconectado wickeny

  • PIC10
  • *
  • Mensajes: 2
visualizacion en display
« en: 30 de Julio de 2005, 15:32:00 »
estoy iniciandome con pic y estoy armando un proyecto que encontre en un libro que trata sobre un contador de hasta 60 seg. resulta que lo armo pero no puedo visualizar los segundos que se cuentan pues me aparecen los dos display que utilizo en cero y solo en uno de ellos se puede apreciar la cuenta de los segundos pero dentro del cero. ya le modifique el tiempo de habilitacion del transistor de cada display pero aun asi se nota el retardo de muestra del numero  pero la visualizacion  continua con el cero y el numero adentro. estoy trabajando con un pic 16f84 y el oscilador es de 4mhz con cap.de 20pf . El proyecto utiliza un 16c84 con cap 1000pf
que diferencia habria al cambiar los cap . para que sirven estos

Desconectado Micom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 783
RE: visualizacion en display
« Respuesta #1 en: 31 de Julio de 2005, 00:15:00 »
No creo que los capacitores sean las causas del problema mas creo que es el software, seria bueno que pusieras el codigo aqui para ver como esta y tambien el diagrama que esta usando, asi se te podra ayudar mejor. Hasta luego.
El programador GTP USB PLUS es un super programador
GRACIAS dobles amigo SISPIC

Tan solo queda seguir sobreviviendo

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: visualizacion en display
« Respuesta #2 en: 31 de Julio de 2005, 15:25:00 »
Jeje esos problemas tambien los sufri yo en su momento, haber los problemas pueden venir por dos caminos: software(tu programa) o por hardware(resistencias conectadas al 7seg,al transistor,etc) ; Un tiempo de retraso para cambiar de un display a otro y que el ojo humano no note la conmutacion de displays oscila entre 10-20 ms, todo esto con los componentes adecuados conectados(resistencias,etc) asi deberas jugar con estos valores de tiempo y con las resistencias y transistor que tengas puesto para una optima visualizacion. Lo ideal es que pongas tu programa aqui para ver como va y asi comentar pero vamos la idea de tu programa seria algo asi:

declaracion del pic a utilizar
declaracion de tabla de 7seg (del 0 al 9) ; tab7seg[8]=0xff, tab7seg[7]=...
declaracion de indices (i ,j) para apuntar a tab7seg y saber que digito mostrar
vector de interrupcion del timer0

funcion de interrupcion del timer0 que sera llamada segun programemos el timer
      ->Aqui modificaremos los indices de visualizacion de los digitos
      ->Restauramos el timer0 para que pueda volver a desbordarse
fin funcion interrupcion

inicio programa
iniciar valores(portb como salida, iniciar el timer0, etc....)
bucle
     ->Aqui 1º 7seg encendido , 2º 7seg apagado
     ->Visualizar digito apuntado por indice i en 1º 7seg
     ->pausa oscila entre 10-20 ms
     ->Aqui 1º 7seg apagado , 2º 7seg encendido
     ->Visualizar digito apuntado por indice j en 2º 7seg
     ->pausa oscila entre 10-20 ms
vuelve a bucle (bucle infinito)
fin programa

Vamos la idea en lenguaje C es bastante facilito, ademas de aqui te pikas y haces un reloj como hice yo con alarma y temperatura y todo!!!jeje, recuerda que para desbordarse el timer debes configurarlo correctamente con la siguiente formula:

Temporizacion = Tcm· Prescaler· (256- Carga TMR0) ; Tcm= 4· 1/f ,f=frecuencia del oscilador, en tu caso 4MHz -> Tcm=4· 1/4 =1 us.

Prueba a bajar el valor de las resistencias y modifica el valor de 10 a 20 ms hasta que consigas el ajuste, yo con 15 ms lo consegui creo recordar, prueba a quitar los transistores o cambiarlos por otros o por resistencias haber que tal, aunque lo ideal son los transistores asi que busca unos adecuados y jugando con todo haber si lo consiges como hice yo!!!jeje si no ya te paso el codigo mio y le hechas un vistazo, suerte y a programar!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte


 

anything