Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define Relay 8
- #include<Timer1.h>
- #include <IRremote.h>
- int RECV_PIN = 7;
- IRrecv irrecv(RECV_PIN);
- unsigned long key_value = 0;
- decode_results results;
- #define buzzer 13
- int fanval[5] = {85,40,10};
- int timeval;
- bool interruptState = false;
- boolean fan;
- char data = 0;
- void setup()
- {
- Serial.begin(9600);
- irrecv.enableIRIn();
- irrecv.blink13(false);
- pinMode(A0, OUTPUT);
- pinMode(2, INPUT);
- pinMode(Relay, OUTPUT);
- pinMode(buzzer, OUTPUT);
- digitalWrite(buzzer, LOW);
- digitalWrite(buzzer, HIGH);
- delay(150);
- digitalWrite(buzzer, LOW);
- fan = false;
- }
- void dimmer()
- {
- long int dimval;
- dimval = timeval * 75;
- startTimer1(dimval);
- }
- ISR(timer1Event)
- {
- //resetTimer1();
- pauseTimer1();
- digitalWrite(A0,HIGH);
- delayMicroseconds(100);
- digitalWrite(A0,LOW);
- }
- void ping()
- {
- digitalWrite(buzzer, HIGH);
- delay(100);
- digitalWrite(buzzer, LOW);
- }
- void loop()
- {
- if (Serial.available() > 0);
- {
- data = Serial.read();
- if(data == '1'){
- digitalWrite(Relay, LOW);
- ping();
- //TODO
- digitalWrite(Relay, LOW);
- detachInterrupt(0);
- interruptState = false;
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if(data == '2'){
- ping();
- digitalWrite(Relay, HIGH);
- timeval = fanval[0];
- if(interruptState == false){
- attachInterrupt(0,dimmer,FALLING);
- interruptState = true;
- }
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if(data == '3'){
- ping();
- digitalWrite(Relay, HIGH);
- timeval = fanval[1];
- if(interruptState == false){
- attachInterrupt(0,dimmer,FALLING);
- interruptState = true;
- }
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if(data == '4'){
- ping();
- digitalWrite(Relay, HIGH);
- timeval = fanval[2];
- if(interruptState == false){
- attachInterrupt(0,dimmer,FALLING);
- interruptState = true;
- }
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- }
- delay(10);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement