fallo a ratos al escribir el LCD

#1
Hola a todos.
El tema es que estoy aprendiendo con un entrenador y el PIC16f84, que tiene un LCD de 2lineas x 8 caracteres, y se ven como una de 16 caracteres. Tipo: WM-C1601M 1YLYc

Ahora pongo el codigo por si quereis mirarlo. Pero el fallo trata de que cada vez que ponga RA1=1, se escribe 1 caracter en la posicion 5 de la linea1, y me lo escribe bien, pero a veces (bastantes) me lo escribe en la posicion 6º o 7º, o en la 6º de la 2º linea, o escribe otros simbolos..

Tambien me suele fallar en el reseteo, que el LCD se muestra mal, y debo resetearlo 3 o 4 veces hasta que arranca correctamente.

Ya pienso que el fallo pueda ser del LCD, o el PIC en si, o ruidos, no se, en verdad no tengo ni idea.
A continuacion pongo el programa con sus comentarios, si me podeis decir algo, muchas gracias!!
 

Adjuntos

#2
Normalmente suele ser un problema de temporizaciones, el pic es demasiado rapido y la lcd demasiado lenta.Dile al compilador que tienes un cuarzo mas rápido que el real o pon delay o un cuarzo mas lento, despues ya lo solucionaras.
 
#3
ok, gracias. pues probare con los retardos, aunque no se si las subrutinas tendran ya ya mirare.
Entonces cuando esta escribiendo y ocurre una interrupcion, tambien puede dar fallo no?

joder, yo pensando que con aprenderse las instrucciones y poco mas ya valia... lo que me queda.
 

Temas similares

Arriba