Использование инфрокрасника с секундным интервалом

Нет ответов
vadimish
Offline
Зарегистрирован: 27.02.2014

Здравствуйте, прошу помощи для написания скетча для Arduino использование инфрокрасника с секундным интервалом. Не селен в программировании и очень сложно собрать все в кучу нашел похожий скетч, но его нужно поправить запуск с помощью кнопки

/*
 * IR LED connected to PIN 3 (AtmelATmega88 pin 5)
 */

#include <IRremote.h>

int RECV_PIN = 11;
int BUTTON_PIN = 12;
int STATUS_PIN = 13;

IRrecv irrecv(RECV_PIN);
IRsend irsend;

decode_results results;

#define on 0x202B24D
#define usb 0x10C8E11E

typedef struct {
 unsigned long time;
  long code;
} remoteAction;

remoteAction beamerShow[2]={ // gives amount of seconds delay from starttime + code to be sent (see defines)
  {1,on},{15,usb}};

int pointer=0;
void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver
  pinMode(BUTTON_PIN, INPUT);
  pinMode(STATUS_PIN, OUTPUT);

}

void loop() {
  
 unsigned long timer=millis()/1000;

  if (timer>beamerShow[pointer].time)
  {
     digitalWrite(STATUS_PIN, HIGH);
     irsend.sendNEC(beamerShow[pointer].code, 32); //on/off
     digitalWrite(STATUS_PIN, LOW); 
     pointer++;
  }
}

1. При коротком нажатии кнопки /назовем12/ запускаем команды  

remoteAction beamerShow[2]= 
 sent (see defines)
  {1,on},{15,usb}};

2. При вторичном коротком нажатии на кнопку /назовем12/ запускаем команды

remoteAction beamerShow[3]= 
      sent (see defines)
 {1,on},{2,on},{15,usb}};

И так по кругу

3. И отдельно выделенная коротким нажатием кнопка /назовем13/ запускаем команды

remoteAction beamerShow[3]= 
      sent (see defines)
 {1,on},{2,on},{15,usb}}; 

4. Сопровождение ВКЛ/ВЫКЛ сигналом 

Цена вопроса ?