Esempio n. 1
0
void setup()
{
	Spark.function("syccommand", SYCcommand);

	//PUT YOUR SETUP CODE HERE
	pinMode(ledR, OUTPUT);  
	pinMode(ledG, OUTPUT);  
	pinMode(ledB, OUTPUT); 
	pinMode(V1, OUTPUT); 
	pinMode(sirenPin, OUTPUT);
    
	digitalWrite(ledR, HIGH);
	digitalWrite(ledB, HIGH);
	digitalWrite(ledG, LOW);
	digitalWrite(V1, LOW);

	//tone(sirenPin, 4000);
    
	delay(10);
	RGB.control(true);
	RGB.color(0, 0, 0);
    
	delay(500);
	digitalWrite(ledG, HIGH);

	beep1();
	Spark.publish("restart");
/*	delay(1000);
	beep3();
	delay(1000);
	beep4();
	*/
	//TODO: set valve and switch to closed and off
}
Esempio n. 2
0
int main(void) {
    init();

    while(1) {
        switch (mode) {
            case 0: // watch mode
                LED_R = 0;
                LED_G = 0;
                BZ = 0;
                if ( LIM_SW == 1 && cnt_lim_sw >= LIM_SW_WAIT ) {
                    clear_cnt();
                    mode = 1;
                }
                break;

            case 1: // monitor mode
                LED_R = 1;
                LED_G = 0;
                BZ = 0;
                if ( LIM_SW == 0 && cnt_lim_sw >= LIM_SW_WAIT ) {
                    beep1();
                    clear_cnt();
                    mode = 0;
                } else  if ( cnt >= MONITOR_TIME ) {
                    clear_cnt();
                    mode = 2;
                } else if ( P_SW_G == 0 && cnt_psw_g >= P_SW_WAIT ) {
                    beep2();
                    clear_cnt();
                    mode = 3;
                }
                break;

            case 2: // alart mode
                if ( LIM_SW == 0 && cnt_lim_sw >= LIM_SW_WAIT ) {
                    beep1();
                    clear_cnt();
                    mode = 0;
                } else if ( ( P_SW_R == 0 || P_SW_G == 0 )&& cnt_psw_r >= P_SW_WAIT ) {
                    beep2();
                    clear_cnt();
                    mode = 3;
                }
                else {
                    alart();
                }
                break;

            case 3: // pause mode
                LED_R = 1;
                LED_G = 1;
                BZ = 0;
                if ( LIM_SW == 0 && cnt_lim_sw >= LIM_SW_WAIT ) {
                    beep1();
                    clear_cnt();
                    mode = 0;
                }

                if ( cnt >= PAUSE_TIME ) {
                    clear_cnt();
                    mode = 2;
                }
                break;
        }
    }

    return (EXIT_SUCCESS);
}