dos ordenes a un led

Etiquetado: ,

Este debate contiene 2 respuestas, tiene 2 mensajes y lo actualizó  miguelazores hace 1 año, 5 meses.

  • Autor
    Publicaciones
  • #4001
     miguelazores 
    Participante

    hola buenas… mientras hacia el programa para mi casa domotica me he encontrado con un problema. En la casa he colocado una especie de centro de control en la que hay una pantalla lcd, un led de aviso de emergecia y un buzzer. Tras haber hecgo el sensor de llama, el sensor de gas, y el sensor de movimiento, me he dado cuenta de que cuando los he unido le doy tres ordenes distinta a un mismo pin (el del led), es decir, cuando el sensor de llama detecta fuego, el led se acitva, pero si no lo detecta se mantiene apagado, cual es el problema? al haber creado un else en el sensor de llama, cuando el sensor de movimiento detecta algo no se enciende el led puesto que ya tiene una orden anterior de mantenerse apagado. Aqui dejo el para ver si me podeis ayudar con este problema de codigo… https://gist.github.com/MiguelAzores/3adfb2dc871fac03ab50

    #4005
     pablo 
    Jefe de claves

    Hola @miguelazores, cuando varios eventos pueden escribir en un mismo pin, lo tienen que hacer en un único condicional (“if – else”). Si lo haces en dos condicionales, con que un sensor esté bien ya entra en el “else” y te apaga la alarma. Tienes dos opciones:

    1) Haces la lectura de los sensores al final en un condicional con una condición curradita con operaciones booleanas (OR || o AND &&) para tomar la decisión en una única condición.

    2) Utilizas una variable “alarma” que empieza a 0 y que si alguna de los sensores da positivo se pone a 1, y al final del bucle compruebas si tienes que sonar o no según la variable.

    Uy ese taller de programación que hicimos… ve desempolvando los apuntes. ¿Ves alguna de las soluciones?

    #4006
     miguelazores 
    Participante

    la segunda si la veo perfectamente… de la primera no he entendido nada jajaja. me he decidido por la segunda, me sirve para lo que pretendo hacer. muchas gracias

Viendo 3 publicaciones - del 1 al 3 (de un total de 3)

Debes estar registrado para responder a este debate.

©2017 Fábrica Digital desde Jerez de la Frontera, España.

717 717 452 (solo Whatsapp) / hola@fabricadigital.org

Horario de verano: de Lunes a Viernes de 09:00 a 13:00.

Calle del Comercio, 18, 11407 Jerez de la Frontera, Cádiz. - Cómo llegar

Información Legal - Aceptamos

 

Inicia Sesión con tu Usuario y Contraseña

o    

¿Olvidó sus datos?

Create Account