Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <IRremote.h>
- #define RECV_PIN 7
- IRrecv irrecv(RECV_PIN);
- decode_results results;
- unsigned long key_value = 0;
- //#include "TimerOne.h"
- char serialData = 0;
- int speed = 0;
- int buzzer = 13;
- const byte ZCDinterruptPin = 2;
- void setup()
- {
- irrecv.enableIRIn();
- irrecv.blink13(false);
- Serial.begin(9600);
- pinMode(13, OUTPUT);
- // Timer1.initialize(500000); // Micro Seconds
- pinMode(2, INPUT);
- pinMode(A0, OUTPUT);
- }
- void callback()
- {
- delayMicroseconds(speed); // read AD0
- digitalWrite(A0, HIGH);
- delayMicroseconds(50); //delay 50 uSec on output pulse to turn on triac
- digitalWrite(A0, LOW);
- }
- void loop()
- {
- if (irrecv.decode(&results)) {
- if (results.value == 0XFFFFFFFF)
- results.value = key_value;
- if ((results.value == 0x88C000C) || (results.value == 0x88C0084) || (results.value == 0x9718DE1F) || // LOW PLASMA
- (results.value == 0x4392537E) || (results.value == 0xA7CEC72B) || (results.value == 0xFB766165) ||
- (results.value == 0x9EFF2F3F)) {
- beep();
- speed = 2500;
- attachInterrupt(digitalPinToInterrupt(ZCDinterruptPin), callback, RISING); // attach Interrupt at PIN2
- }
- if ((results.value == 0x8810089) || (results.value == 0x8810) || // MID JET COOL
- (results.value == 0x3A398D8A) || (results.value == 0x71199AC5) ||
- (results.value == 0xEE419856) || (results.value == 0x76105F79)) {
- beep();
- speed = 4866;
- attachInterrupt(digitalPinToInterrupt(ZCDinterruptPin), callback, RISING); // attach Interrupt at PIN2
- }
- 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)) {
- beep();
- speed = 6000;
- attachInterrupt(digitalPinToInterrupt(ZCDinterruptPin), callback, RISING); // attach Interrupt at PIN2
- }
- if ((results.value == 0x88C0051) || (results.value == 0x3393ACC8) || (results.value == 0x1035C9DA) || // POWER OFF
- (results.value == 0x993AE700) || (results.value == 0x88C0)) {
- beep();
- detachInterrupt(digitalPinToInterrupt(ZCDinterruptPin));
- }
- key_value = results.value;
- irrecv.resume();
- }
- }
- void beep(){
- digitalWrite(13, HIGH);
- delay(100);
- digitalWrite(13, LOW);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement