Hallo,
diesem Sketch habe ich verwendet:
#include <IRremote.h>
#define IR_On 0xCAC21BEE
#define IR_Off 0xB0D7CF5E
int RECV_PIN = 30;
int led_pin = 17;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
Serial.begin(9600);
pinMode(led_pin, OUTPUT);
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
}
switch(results.value) {
case IR_On:
digitalWrite(led_pin, HIGH);
break;
case IR_Off:
digitalWrite(led_pin, LOW);
break;
}
irrecv.resume(); // Receive the next value
delay(100);
}
Die NIBOburger - library habe ich nicht verwendet (ist ja auch nicht nötig, oder?), da ich finde, so hat man mehr Möglichkeiten. Wenn ich den Burger als Board einstelle und den Sketch kompiliere, bekomme ich folgende Fehlermeldung:
In file included from C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremote.h:24:0,
from C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:1:
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp: In member function 'void IRrecv::enableIRIn()':
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremoteInt.h:246:3: error: 'TCCR2A' was not declared in this scope
TCCR2A = _BV(WGM21); \
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:120:2: note: in expansion of macro 'TIMER_CONFIG_NORMAL'
TIMER_CONFIG_NORMAL();
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremoteInt.h:247:3: error: 'TCCR2B' was not declared in this scope
TCCR2B = _BV(CS21); \
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:120:2: note: in expansion of macro 'TIMER_CONFIG_NORMAL'
TIMER_CONFIG_NORMAL();
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremoteInt.h:248:3: error: 'OCR2A' was not declared in this scope
OCR2A = TIMER_COUNT_TOP / 8; \
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:120:2: note: in expansion of macro 'TIMER_CONFIG_NORMAL'
TIMER_CONFIG_NORMAL();
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremoteInt.h:222:30: error: 'TIMSK2' was not declared in this scope
#define TIMER_ENABLE_INTR (TIMSK2 = _BV(OCIE2A))
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:123:2: note: in expansion of macro 'TIMER_ENABLE_INTR'
TIMER_ENABLE_INTR;
^
In file included from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\io.h:99:0,
from c:\program files (x86)\arduino\hardware\tools\avr\avr\include\avr\pgmspace.h:88,
from C:\Program Files (x86)\Arduino\hardware\nicai\avr\cores\arduino/Arduino.h:28,
from C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremoteInt.h:24,
from C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremote.h:24,
from C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:1:
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\IRremoteInt.h:222:43: error: 'OCIE2A' was not declared in this scope
#define TIMER_ENABLE_INTR (TIMSK2 = _BV(OCIE2A))
^
C:\Users\Santiago\Documents\Arduino\libraries\Arduino-IRremote-master\irRecv.cpp:123:2: note: in expansion of macro 'TIMER_ENABLE_INTR'
TIMER_ENABLE_INTR;
^
exit status 1
Fehler beim Kompilieren.
Wenn ich als Board z.B. den Arduino Uno einstelle, bekomme ich keine Fehlermeldung. Die IRremote - Library müsste eignetlich richtig installiert sein, da die Programme auf dem Arduino Uno auch laufen. Verstehe nicht warum der NIBOburger die Library nicht akzeptiert...
LG
ChocoCooky