Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<Timer1.h>
- #include <IRremote.h>
- int RECV_PIN = 7;
- IRrecv irrecv(RECV_PIN);
- unsigned long key_value = 0;
- decode_results results;
- #define buzzer 12
- int fanval[5] = {75,70,40,30,20};
- int timeval;
- boolean fan;
- void setup()
- {
- irrecv.enableIRIn();
- irrecv.blink13(false);
- pinMode(A0, OUTPUT);
- pinMode(2, INPUT);
- 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 (irrecv.decode(&results))
- {
- if (results.value == 0XFFFFFFFF) {
- results.value = key_value;
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if ((results.value == 0x88C0051) || (results.value == 0x3393ACC8) || (results.value == 0x1035C9DA) || // POWER OFF
- (results.value == 0x993AE700) || (results.value == 0x88C0)) {
- ping();
- //TODO
- detachInterrupt(0);
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if ((results.value == 0x88C000C) || (results.value == 0x88C0084) || (results.value == 0x9718DE1F) || // LOW PLASMA
- (results.value == 0x4392537E) || (results.value == 0xA7CEC72B) || (results.value == 0xFB766165) ||
- (results.value == 0x9EFF2F3F)) {
- ping();
- timeval = fanval[1];
- attachInterrupt(0,dimmer,FALLING);
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if ((results.value == 0x8810089) || (results.value == 0x8810) || // MID JET COOL
- (results.value == 0x3A398D8A) || (results.value == 0x71199AC5) ||
- (results.value == 0xEE419856) || (results.value == 0x76105F79)) {
- ping();
- timeval = fanval[2];
- attachInterrupt(0,dimmer,FALLING);
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- if ((results.value == 0x8808350) || (results.value == 0x880830B) || (results.value == 0x880832D) || // HIGH FAN SPEED
- (results.value == 0x8178C8D1) || (results.value == 0x1308451C) || (results.value == 0xA11244F4) ||
- (results.value == 0xD0AE2562) || (results.value == 0x2F0AD5BB)) {
- ping();
- timeval = fanval[4];
- attachInterrupt(0,dimmer,FALLING);
- }
- ////////////////////////////////////////////////////////////////////////////////////////////////////////
- key_value = results.value;
- irrecv.resume(); // Receive the next value
- }
- delay(10);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement