помогите с программой
- Войдите на сайт для отправки комментариев
Ср, 24/12/2014 - 19:04
как прописать чтобы когда я нажимаю на кнопку пульта светодиод включался а когда отпускаю кнопку светодиод выключался int RECV_PIN = 11; IRrecv irrecv(RECV_PIN); decode_results results; int a=0; // переменная переключения режима, при нажатии кнопки она принимает значение +1 int b=0; // int c=0; // void setup() { irrecv.enableIRIn(); // включить приемник pinMode(13, OUTPUT); pinMode(2, OUTPUT); pinMode(3, OUTPUT); } void loop() { if (irrecv.decode(&results)) { delay(300); // задержка перед выполнением определения кнопок, чтобы избежать быстрое двойное нажатие if (results.value == 0x1000809) {a=a+1;} // обработка нажитя клавиши, здесь переменная принимает значение +1 if (results.value == 0x1008889) {b=b+1;} //ВАЖНО !!! ( 1008889 ) это код кнопки №2 - моего пульта от телевизора Panasonic - у вашего пульта будет другой код - замените на свой if (results.value == 0x1004849) {c=c+1;} if (results.value == 0x100C8C9) {d=d+1;} if (results.value == 0x1002829) {e=e+1;} if (results.value == 0x100A8A9) {f=f+1;} if (results.value == 0x1006869) {g=g+1;} // начинаем включать светодиоды на пинах if (a==1){digitalWrite(13, HIGH);} else {digitalWrite(13, LOW); a=0;} if (b==1){digitalWrite(2, HIGH);} else {digitalWrite(2, LOW); b=0;} if (c==1){digitalWrite(3, HIGH);} else {digitalWrite(3, LOW); c=0;} { // delay(50); //пауза между повторами // } // irrecv.resume(); // } }
byte
сc = 0;
if
(results.value == 0x1004849) {c=c+1; cc = 0;}
else {cc++;}if
(c==1){digitalWrite(3, HIGH);}
if
(cc == 3){digitalWrite(3, LOW);
c = 0;} // отпустил кнопку примерно через секунду погас