Sincronizmo desfasado

Recibi una pantalla que tenia daños en el LCD, y necesitaba una panel nuevo, el equipo era viejo y el modelo que usaba ya estaba descontinuado.

Decidi comprar una pantalla que se aproximara en caracteristicas lo mas parecido a la original, requeria un cambio el orden de todas las lineas de comunicacion, y funciono, pero al ver la imagen el texo se habia corrido hacia arriba, haciendo que el texto inicial apareciera abajo

Esto pasa debido a que los tiempos de Pre y Post sincronizmo de ambas pantallas es distinto, y el tiempo de esta nueva pantalla es menor, y por lo tanto la imagen se crea antes de lo necesario.

No se podia corregir directamente en el equipo, ya que implicaba modificar el firmware original de la pantalla para agregar diferencia de tiempo.

Esto lo logre correjir, utilizando un PIC12F629 de Microchip, y un retraso en la linea de vertical, el pic recibe el pulso de vertical original, y le genera un atraso de aproximadamente 800 us y regenera el pulso.

En un inicio lo intente con interrupciones y temporizadores, pero por fallo que aun no logre resolver que sucedia tenia saltos en la imagen ya que fallaba el por momentos el tiempo, pero como el pic no iba hacer nada mas que atrasar la linea del vertica, podria usar una funcion FOR, con instrucciones NOP para generar el atraso, se que podia haberlo hecho en ensamblador para mas eficiencia, pero el tiempo era algo a considerar, y me siento mas comodo programando en C.

Como pueden ver la funcion principal es sencilla

while (1){

    if (!GPIObits.GP2){
        j = 1;
    }
    if (j){
        for(i = 0; i < 1220; i++){
               asm("nop");
        }
     GPIObits.GP4 = 0 ;
           for(i = 0; i < 8; i++){
               asm("nop");
           }
        GPIObits.GP4 = 1 ;
        j = 0;
    }
}

Se puede ver el texto en el inferior debido al problema de sincronizmo
Aqui se puede ver que todo cambio.

Comunicacion RS232 TTL

Un dia de estos me tope con la necesidad de programar una pantalla la cual tenia un puerto con comunicacion RS232 pero a niveles TTL, por lo que hice la interfaz sencilla con un ADM238, ya que necesitaba 3 puertos de salida y 3 de entrada, el clasico MAX232 no sirve ya que ese tiene 2 y 2. si necesitaran con gusto les puedo pasar el diagrama.

Hola!!!!

Este es mi primer post, voy a estar publicando ideas, trucos, circuitos, pruebas y datos entre otras cosas cerca del maravilloso mundo electrónico, en donde nostros los entusiastas en electronica podemos terner un sector dedicado a aprender nuevas ideas.