Ви не увійшли.
Сторінки 1
Почему зажигаются два светодиода при получении только одного сигнала?
pinMode(4,OUTPUT);
pinMode(8,OUTPUT);
Serial.begin(9600);
irrecv.enableIRIn();
}
boolean x = LOW;
boolean y = LOW;
void loop() {
if ( irrecv.decode( &results )) {
Serial.println(results.value, HEX);
if ( results.value==0xFF6897) {
x = !x;
digitalWrite( 4, x );results.value=0;
}
if ( results.value==0xFF9867) {
y = !y;
digitalWrite( 8, y);results.value=0;
}
delay(100);
irrecv.resume();
Остання редакція Week (2018-02-22 13:37:37)
Неактивний
results наверное оприделено как пользовательская структура. и не совпадает с описанием в decode
но мы это не видим. потому что автор вырвал кусок кода со спионеренного скетча. где ни начала, ни конца )
и даже не постарался кореткно задать вопрос, т.е. корретно оформить тот код о котором он говорит.
типа как
if ( results.value==0xFF6897) {
x = !x;
digitalWrite( 4, x );results.value=0;
}
if ( results.value==0xFF9867) {
y = !y;
digitalWrite( 8, y);results.value=0;
}
Week, you understand? )
по логике вещей
add
сначала приняли 0xFF6897 потом 0xFF9867 лог то не приложили
вот и светятся 2 шт
Остання редакція NoName (2018-02-22 15:25:47)
Неактивний
но мы это не видим. потому что автор вырвал кусок кода со спионеренного скетча. где ни начала, ни конца )
и даже не постарался кореткно задать вопрос, т.е. корретно оформить тот код о котором он говорит.add
сначала приняли 0xFF6897 потом 0xFF9867 лог то не приложили
вот и светятся 2 шт
Во первых ничто не вырвано. Это вес код и он должен вроде как работать. Во вторых я не знал как коректно оформить код. уж простите.
И какой лог не приложили?
Спасибо всеравно что ответили
Неактивний
это однозаночно не вся функция setup
pinMode(4,OUTPUT);
pinMode(8,OUTPUT);
Serial.begin(9600);
irrecv.enableIRIn();
}
оформить просто
жмете кнопку code и в нее вставляете свой код я предпочитаю стиль Undefined
Неактивний
Спасибо. Вот теперь полный код
#include "IRremote.h"
IRrecv irrecv(3);
decode_results results;
void setup() {
pinMode(4,OUTPUT);
pinMode(8,OUTPUT);
Serial.begin(9600);
irrecv.enableIRIn();
}
boolean x = LOW;
boolean y = LOW;
void loop() {
if ( irrecv.decode( &results )) {
Serial.println(results.value, HEX);
if ( results.value==0xFF6897 or 0xC101E57B) {
x = !x;
digitalWrite( 4, x );results.value=0;
}
if ( results.value==0xFF9867 or 0x97483BFB) {
y = !y;
digitalWrite( 8, y);results.value=0;
}
delay(500);
irrecv.resume();
}
}
Неактивний
что в Serial ?
для меня это странная запись,
value==0xFF9867 or 0x97483BFB
я предпочитаю придерживатся ANSI C
if ( (results.value==0xFF6897 ) || (results.value==0xC101E57B))
{
}
if ( (results.value==0xFF9867 ) || (results.value==0x97483BFB))
{
}
а delay зачем ?
Остання редакція NoName (2018-02-22 17:14:07)
Неактивний
Сторінки 1