Autor Tema: como controlar dos led con un pulsador?  (Leído 2538 veces)

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

Desconectado fluxed

  • PIC10
  • *
  • Mensajes: 5
como controlar dos led con un pulsador?
« en: 10 de Abril de 2011, 19:50:03 »
necesito ayuda please, un pulsador con dos leds (en assembler)
 
la secuencia es así
 * = led encendido
 - = led apagado
 
 - -
 - *
 * *
 * -
 - -
 
presionar pulsador enciende el primer led
presionar pulsador enciende el segundo led
presionar pulsador apaga el primer led
presionar pulsador apaga el segundo led
 
gracias

no se que me falta, please ayudaa, el programa se apaga uno y prende otro no se que hago mal

list P=16F84
W      equ   0x00
estado   equ   0x03
ptoa   equ   0x05
ptob   equ   0x06
cont   equ   0x0E
time0   equ   0x0F
time1   equ   0x0D
      org   0
      goto   inicio
inicio   bsf    estado,5
      movlw    b'00000001'
      movwf    ptoa
      clrf   ptob      
      bcf      estado,5
progr   btfsc   ptoa,0
      goto   time
      goto   progr
incre   movlw   1
      movwf   W
      incf   cont,1
      subwf   cont,W
      btfsc   estado,2
      goto   rb0led
      goto   rb1led
;
rb0led   btfsc   ptob,1
      goto   off0
      goto   on0
off0   movlw   h'2'      
      movwf   ptob
      goto   progr
on0      movlw   h'2'
      movwf   ptob
      goto   progr
;
rb1led   btfsc   ptob,0
      goto   off1
      goto   on1
off1   movlw   h'1'      
      movwf   ptob
      clrf   cont
      goto   progr
on1      movlw   h'1'
      movwf   ptob
      clrf   cont
      goto   progr
;
time   movlw   h'B'
      movwf   time0
a      movlw   h'ff'
      movwf   time1
c      decfsz   time1,1
      goto   c
      decfsz   time0,1
      goto   a
      btfsc   ptoa,0
      goto   incre      
      return
      END   
« Última modificación: 11 de Abril de 2011, 15:55:31 por un Moderador »

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: ayudaaaa please
« Respuesta #1 en: 10 de Abril de 2011, 21:44:58 »
Hola amigo, te recomiendo que te des un paso por este hilo

Mira si esto te sirve.

Saludos.

Código: [Seleccionar]
list p=16f84
w equ   0x00
estado equ   0x03
ptoa equ   0x05
ptob equ   0x06

      org   0     
      goto   inicio
     
inicio bsf estado,5
movlw b'00000001'
movwf ptoa
clrf ptob     
bcf estado,5

clrf ptob


progr btfss ptoa,0
goto $-1
bsf ptob,0
btfsc ptoa,0
goto $-1

btfss ptoa,0
goto $-1
bsf ptob,1
btfsc ptoa,0
goto $-1

btfss ptoa,0
goto $-1
bcf ptob,0
btfsc ptoa,0
goto $-1

btfss ptoa,0
goto $-1
bcf ptob,1
btfsc ptoa,0
goto $-1

goto progr

end

Desconectado fluxed

  • PIC10
  • *
  • Mensajes: 5
Re: ayudaaaa please
« Respuesta #2 en: 10 de Abril de 2011, 22:01:07 »
Hola amigo, te recomiendo que te des un paso por este hilo

Mira si esto te sirve.

Saludos.

Código: [Seleccionar]
list p=16f84
w equ   0x00
estado equ   0x03
ptoa equ   0x05
ptob equ   0x06

      org   0     
      goto   inicio
     
inicio bsf estado,5
movlw b'00000001'
movwf ptoa
clrf ptob     
bcf estado,5

clrf ptob


progr btfss ptoa,0
goto $-1
bsf ptob,0
btfsc ptoa,0
goto $-1

btfss ptoa,0
goto $-1
bsf ptob,1
btfsc ptoa,0
goto $-1

btfss ptoa,0
goto $-1
bcf ptob,0
btfsc ptoa,0
goto $-1

btfss ptoa,0
goto $-1
bcf ptob,1
btfsc ptoa,0
goto $-1

goto progr

end



Muchisimas gracias, una preguntica para que sirve el $ ?

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: ayudaaaa please
« Respuesta #3 en: 10 de Abril de 2011, 22:05:50 »
El operador $ es igual al goto pero sin marcar etiqueta, simplemente le dices cuantas líneas se devuelve o se adelante, según el caso $+ ó $-

Desconectado fluxed

  • PIC10
  • *
  • Mensajes: 5
Re: ayudaaaa please
« Respuesta #4 en: 10 de Abril de 2011, 22:07:31 »
El operador $ es igual al goto pero sin marcar etiqueta, simplemente le dices cuantas líneas se devuelve o se adelante, según el caso $+ ó $-

listo ya te entendi jejeje muchisimas gracias de verdad estaba dando cabeza haber como lo hacia, soy nuevo en esto grax

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: como controlar dos led con un pulsador?
« Respuesta #5 en: 12 de Abril de 2011, 04:52:01 »
Eres un artista has conseguido que te lo hicieran  :lol: :lol:

Como ande tu profe por aqui la llevas clara   :lol: :lol:


Suerte.

Desconectado Miquel_S

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1251
Re: como controlar dos led con un pulsador?
« Respuesta #6 en: 12 de Abril de 2011, 10:44:12 »
 :lol: :lol: :lol:
Muy bueno tapi8
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.