Hola sebastianvz: Te voy a tirar un par de tips que veo a vuelo de pájaro, ya que no tengo mucho tiempo para utilizar esta pc, espero que te ayuden con el lcd que tanto me hizo renegar al principio.
Te recomiendo que estudies bien el set de instrucciones de este pic (lo puedes encontrar en el datasheet del mismo pic), que tambien leas y busques toda la info que haya sobre estos lcds sobre todo su datasheet y como controlarlo, y aparte el data sheet del pic mismo que es muy importante.
Suerte con todo y sigue preguntando que te vamos a ayudar en lo que podamos, Saludos!!!
ORG 00
GOTO INICIO
ORG 5 ;esto para que es ?????
La directiva ORG le dice al compilador que empiece a escribir en determinada posición de memoria,
en este caso (ORG 0) le pide que escriba en la primer posición de memoria el comando: GOTO INICIO
luego sigue escribiendo el resto del programa en la 6º posición, osea ORG 5, pero para que hace esto?
porqué se salta las posiciones de memoria anteriores?
como dice en el Datasheet del pic en cuestión, en la 5º posición (lo que es la dirección 4) es a donde salta el
contador de programa en caso de haber una interrupción(si es que las utilizas) , por lo que se deja esa posición de memoria
libre, por ejemplo para poner:
ORG 04
GOTO ATIENDA_INTERRUPCION
Dicho de otra manera: en caso de que habilites las interrupciones y se produzca una automáticamente el micro salta a esta posición y con el GOTO ATIENDA_INTERRUPCION va a esa parte del programa que hace eso que debe hacer en caso de ocurrir tal evento.