//Programador: Jesús Cabello Martos
//Programa: Alarma temporizada
//Variables entrada: RA0 (Cerradura); RA1 (Sensor puerta); RA2 (Sensor ventana);
//RA3 (Sensor techo); RA4 (Sensor sótano)
//Variables salida: RB0 (Alarma)
#include <16f84.h>
#use delay (clock=4000000)
#use fast_io(A)
#use fast_io(B)
#byte port_a=5
#byte port_b=6
main()
{
port_a=0;
port_b=0;
set_tris_a(0xFF);
set_tris_b(0x00);
while(1)
{
if(!input(pin_A0)) // Si la cerradura no está habilitada
{
output_bit(pin_B0,0); // La alarma para
}
else
if (input(pin_A0) && (input(pin_A2) || input(pin_A3) || input(pin_A4)))
// Si la cerradura está habilitada y se activa el sensor de ventana, o de techo o de sótano
{
output_bit(pin_B0,1); La alarma se activa
}
else
if (input(pin_A0) && input(pin_A1))
//Si la cerradura está habilitada y se activa el sensor de puerta
{
delay_ms(20); //Esperamos 20 segundos
if(input(pin_A1)) //Si el sensor de puerta sigue activado
{
output_bit(pin_B0,1); //La alarma suena
}
}
}
}