В ардуине новичек, поэтому если вопрос совсем простой - извиняйте. Гуглил, но ничего не нагуглилось...

Итак:

1. Есть либа IRremote, из скетча все работает на раз, компиляется опнятное дело тоже.
2. Есть другая либа, заточенная на управление кнопками подключонными прямо к портам - M2TKLIB, тоже все с ней понятно.
3. В моем проекте не хочется кнопок, хочется пультика, благо есть. Родил либе "event source", отключил встроенный дебаунсинг - стреляет.

Дальше захотелось добрых дел, послал сорец автору M2TKLIB, чтобы был выбор кнопки или пульт. Дядько подсуетился, прислал файлец, попросил подложить в директорит с либой - проверить.

Сосбтвенно проблема: не компиляется, ругается на инклюд IRremote.h. Происходи дело в обычных с или с++, разобрался бы без проблем. Но как arduino IDE зовет компилятор, что ему передает и можно ли переопределить опцайки - для меня пока темный лес... И скетча этот-же код понятно работает на раз.

Само файло:
PHP код:
/*


  m2esarduinoir.c
  
  m2tklib = Mini Interative Interface Toolkit Library
  
  event source handler for IRremote library (arduino environment)
  http://www.arcfn.com/2009/08/multi-protocol-infrared-remote-library.html
  
  m2tklib contributed code (issue 34)
  
*/


#include "m2.h"
#include <IRremote.h>


int RECV_PIN 11;
IRrecv irrecv(RECV_PIN);
decode_results results;


uint8_t m2_es_arduino_ir(m2_p epuint8_t msg
{
  switch(
msg)
  {
    case 
M2_ES_MSG_GET_KEY:
      if (
irrecv.decode(&results)) 
      {
        
irrecv.resume(); // Receive the next value
        
switch(results.value
        {
          case 
0xFFC23D:
            return 
M2_KEY_EVENT(M2_KEY_SELECT);         /* the M2_KEY_EVENT() macro will  */
          
case 0xFFB04F:                                                /* disable the debounce algorithm */
            
return M2_KEY_EVENT(M2_KEY_EXIT);
          case 
0xFF02FD:
            return 
M2_KEY_EVENT(M2_KEY_NEXT);
          case 
0xFF22DD:
            return 
M2_KEY_EVENT(M2_KEY_PREV);
          case 
0xFF0000:
            return 
M2_KEY_EVENT(M2_KEY_DATA_UP);
          case 
0xFF0001:
            return 
M2_KEY_EVENT(M2_KEY_DATA_DOWN);
          default:
            return 
M2_KEY_NONE;
         }
      }
    default:
      return 
0;
  }

Собственно ошибки:
PHP код:
In file included from C:\ssw\arduino-0023\libraries\M2tklib\utility\m2esarduinoir.c:17:
C:\ssw\arduino-0023\libraries\IRremote/IRremote.h:24errorexpected '='','';''asm' or '__attribute__' before 'decode_results'
C:\ssw\arduino-0023\libraries\IRremote/IRremote.h:44errorexpected '='','';''asm' or '__attribute__' before 'IRrecv'
C:\ssw\arduino-0023\libraries\IRremote/IRremote.h:69errorexpected '='','';''asm' or '__attribute__' before 'IRsend'
C:\ssw\arduino-0023\libraries\M2tklib\utility\m2esarduinoir.c:21errorexpected '='','';''asm' or '__attribute__' before 'irrecv' 
Зараннее спасибо