Autor Tema: Activar y Desactivar  (Leído 1224 veces)

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

Desconectado LEONARDO_59

  • PIC10
  • *
  • Mensajes: 9
Activar y Desactivar
« en: 12 de Diciembre de 2007, 23:27:47 »
Hola amigos, solo deseo saber si alguien puede ayudarme con un pequeño proyecto, tengo un panel de alarma conectado para que envie datos de actividad, es simple, pero deseo controlar la activación y desactivación del panel via remota, osea como es solo para proyecto, solo deseo enviarle un dato y que el panel se desactive y permanezca asi hasta que lo vuelva a activar, tengo una idea que la he practicado pero no me funciona ya que le envio un pulso y se vuelve a activar...pls help :?

;------------------------------------------------
; ESTADO ALARMA
;------------------------------------------------
ACTIV_DESAC
   bsf      STATUS,RP0   ; Banco-1
   movlw   .25
   movwf   SPBRG      ; Vtx = 9600bps
   movlw   B'00100100'
   movwf   TXSTA      ; Tx = 8 bits / TX-ON / BRGH=1
   bcf      STATUS,RP0   ; Banco-0
   bsf      RCSTA,SPEN   ; SPEN=1
    btfsc   PORTD,0     ; compruebo si RD0 está activado
   goto    DESACTIVA   ; salto incondicional a la etiqueta “DESACTIVA”
   btfss   PORTA,1      ; compruebo si RD0 esta desactivado
      goto   ACTIVA
;-------------------------------------------------
ACTIVA
   movlw    'A'
   call   TX_DATO
   movlw   'C'
   call   TX_DATO
   movlw   'T'
   call   TX_DATO
   movlw   'I'
   call   TX_DATO
   movlw    'V'
   call   TX_DATO
   movlw   'A'
   call   TX_DATO
   movlw   'D'
   call   TX_DATO
   movlw   'A'
   call   TX_DATO
   return
;-------------------------------------------------
DESACTIVA
   movlw    'A'
   call   TX_DATO
   movlw   'L'
   call   TX_DATO
   movlw   'R'
   call   TX_DATO
   movlw   'M'
   call   TX_DATO
   movlw    '-'
   call   TX_DATO
   movlw   'O'
   call   TX_DATO
   movlw   'F'
   call   TX_DATO
   movlw   'F'
   call   TX_DATO
   goto   infinito120
;--------------------------------------------------
infinito120
            bsf        STATUS,RP0
         movlw     B'00000001'
         movwf     TRISD
         clrf     TRISA
         bcf        STATUS,RP0
infinito
         movf     PORTD,0
         movwf     PORTA
         goto     infinito
         return
;-----------------------------------------------
TX_DATO
   bsf      STATUS,RP0   ; Banco-1
   btfss   TXSTA,TRMT   ; ¿Buffer vacio?
   goto   $-1         ; .NO
   bcf      STATUS,RP0   ; Banco-0
   movwf   TXREG      ; Inicia Tx
   clrf   TXREG
   return
LEONARDO_59