Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

28/08/2011 #1


Encendido de un led por dos botones Ayuda (microcode)
Hola soy nuevo en micros estoy haciendo un programa que me encienda un led cuando las dos entradas son 1 y se apage cuando las dos entradas son 0 y que se mantenga en lo que esta cuando las entradas sean (1 y 0 o, 0 y 1)
Código:
define osc 4
      trisa.1=1
      trisa.0=1
      trisa.2=0
      porta.0=0
      Porta.1=0
      porta.2=0
           
    prog:
IF porta.1=0 xor porta.0=0 THEN llenar ;pregunta si portb.3=0 para ir a encen
if porta.1=1 xor porta.0=1 then vaciar
GOTO llenar ;ir a pro
llenar:
HIGH porta.2 ;encender el led
PAUSE 3000 ;esperar 1 segundo
GOTO prog
end
vaciar:
Low porta.2 ;encender el led
PAUSE 3000 ;esperar 1 segundo
GOTO prog
end

pues con este codigo no se me cumple lo que quiero que cuando sean (1 y 0 o, 0 y 1) no me altere la posicion anterior

el pic16f628A estoy usando
la imagen del circuito
29/08/2011 #2


hola, ami me sale de esta forma pruevala y analiza el circuito:

trisa.0=1
trisa.1=1
trisa.2=0
pul var porta.0
led var porta.2
pul2 var porta.1


led=0

;---------------------------------------------------------------------
; led
;---------------------------------------------------------------------
encendido:
if pul+pul2=1 then encendido ; la suma de los pulsadores=1 se queda en espera
if pul and pul2 then rebote ; si los pul se comportan como puerta and entonces sigue el programa

apagado:
if pul and pul2 then apagado
if pul+pul2=1 then apagado
if pul+pul2=0 then rebote2
rebote:
if pul+pul2=1 then encendido
pause 200
led=1
goto apagado
rebote2:
if pul and pul2 then apagado
if pul+pul2=1 then apagado
pause 200
led=0
goto encendido
end
29/08/2011 #3


juandmn dijo: Ver Mensaje
hola, ami me sale de esta forma pruevala y analiza el circuito:

trisa.0=1
trisa.1=1
trisa.2=0
pul var porta.0
led var porta.2
pul2 var porta.1


led=0

;---------------------------------------------------------------------
; led
;---------------------------------------------------------------------
encendido:
if pul+pul2=1 then encendido ; la suma de los pulsadores=1 se queda en espera
if pul and pul2 then rebote ; si los pul se comportan como puerta and entonces sigue el programa

apagado:
if pul and pul2 then apagado
if pul+pul2=1 then apagado
if pul+pul2=0 then rebote2
rebote:
if pul+pul2=1 then encendido
pause 200
led=1
goto apagado
rebote2:
if pul and pul2 then apagado
if pul+pul2=1 then apagado
pause 200
led=0
goto encendido
end


Muchas gracias funciona bien
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.