Autor Tema: Pregunta en desarrollo con display LCD  (Leído 1978 veces)

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

Desconectado sggtav

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 135
    • Canal Youtube
Pregunta en desarrollo con display LCD
« en: 04 de Marzo de 2010, 13:26:29 »
Primero que nada me presento.
Esta no es la primera vez que utilizo este foro pero si la primera en la parte de Assembler.
Bueno mi pregunta es la siguiente, recién estoy iniciando en controladores pic, por lo que hice un pequeño programa con un lcd con un pic 16F84A, que lo que hace es mediante 2 pulsadores, en mi caso UP y DOWN. Cambiar de pantalla en el lcd.
Hasta aquí todo bien, ahora la diferencia es que hay un tercer pulsador de OK, que lo que hace es activar un led cuando esta en un mensaje y desactivarlo cuando cambias de pagina y le das ok.
Bueno esa seria la consigna mia. Ahora el problema es que _
-Anda todo sobre el tema de cambio de pantalla
-Se prende el led cuando le das ok
-Pero cuando cambias de pagina, se apaga, e aquí el problema debería quedar prendido y apagarse recién cuando le das ok.
Paso mi programa a ver si me pueden ayudar

   __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
                  
   PROCESSOR 16F84A
   #INCLUDE <P16F84A.INC>

   ORG      0x00   
   call   LCD_inicializa      ;Inicializa display
   CBLOCK 0x0C
   contador55
   ENDC
   
   bsf      STATUS, RP0      ;Acceso al Banco 1
   bcf      TRISB, 0         ;Salida para RELE
   bcf      STATUS, RP0      ;Acceso al banco 0
   bcf      PORTB, 0   ;COMIENZO APAGADO
Primer_msn
   movlw   welcome      ;llamo el mensaje de bienvenida
   call   LCD_mensaje   ;llamo a la subrutina pa meter el mensaje
   call   Retardo_1s
   call   borra_display

stard
   movlw   mensaje1
   call   LCD_mensaje
aca
   btfss   PORTA, 4   ;SE PRESIONO BOTON DE OK
   goto   ok1         ;ir a ok 1 se es correcto

   btfsc   PORTA, 3   ;¿Se ha presionado el pulsador? NO
   goto   aca         ;No, genera un bucle
   goto   manu      ;Si, llama a subrutina
manu
   movlw   mensaje2
   call   LCD_mensaje
alla
   btfss   PORTA, 4   ;SE PRESIONO BOTON DE OK
   goto   ok2         ;ir a ok 1 se es correcto
btfsc   
        PORTA, 2      ;¿Se ha presionado el pulsador?
   goto   alla      ;No, genera un bucle
   goto   stard      ;Si, llama a subrutina

ok1
   bsf      PORTB, 0   ; PONE BIT 1 A LA SALIDA
   goto   aca
ok2
   bcf      PORTB, 0   ;apaga led
   goto    alla
   
   
;****TABLA DE MENSAJES
mensajes
   addwf   PCL, F
welcome
   DT      "    WELCOME     Santiago 2010", 00h
mensaje1
   DT      "Work mode       <ON>  OFF", 00h
mensaje2
   DT      "Work mode        ON  <OFF>", 00h

   #INCLUDE   <LCD4BITS.INC>      ;Se incluye la librería de manejo del LCD      
   #INCLUDE   <LCDMENSAJES.INC>   ;Se incluye la librería para mensajes
   #INCLUDE   <RETARDOS.INC>      ;SE INCLUYE LA LIBRERIA PARA RETARDOS ESPECIALES
Saludos Sggtav

Desconectado sggtav

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 135
    • Canal Youtube
Re: Pregunta en desarrollo con display LCD
« Respuesta #1 en: 04 de Marzo de 2010, 21:53:51 »
Ya esta solucionado..
Gracias igualmente..
Saludos Sggtav


 

anything