Hehe, die letzte Zeile sagt nicht aus, dass man das auch klein schreiben darf ocr2 ist eine Konstante, die direkt darüber definiert wird.

edit: Hier noch mal der Vollständigkeit halber. Folgender Abschnitt ist in der Init() Funktion der Asuro-Lib zu finden - hier wird die grundlegende Einstellung vorgenommen:

Code:
/*
00117     Timer2, zum Betrieb mit der seriellen Schnittstelle, fuer die
00118     IR-Kommunikation auf 36 kHz eingestellt.
00119   */
00120 #if defined(__AVR_ATmega168__)
00121   // fast PWM, set OC2A on compare match, clear OC2A at bottom, clk/1
00122   TCCR2A = _BV(WGM20) | _BV(WGM21) | _BV(COM2A0) | _BV(COM2A1);
00123   TCCR2B = _BV(CS20);
00124   // interrupt on timer overflow
00125   TIMSK2 |= _BV(TOIE2); 
00126 #else
00127   // fast PWM, set OC2A on compare match, clear OC2A at bottom, clk/1
00128   TCCR2 = _BV(WGM20) | _BV(WGM21) | _BV(COM20) | _BV(COM21) | _BV(CS20);
00129   // interrupt on timer overflow
00130   TIMSK |= _BV(TOIE2); 
00131 #endif
00132   // 36kHz carrier/timer
00133   OCR2  = 0x91;
Und so sieht die main() aus, hier kann die Pulsbreite je nach Taste geändert werden:

Code:
int main(void) 
{

  unsigned char sw;

  Init();
  
  DDRD |= (1 << DDD1);	// Port D1 als Ausgang
  PORTD &= ~(1 << PD1);	// PD1 auf LOW

//  InitIRDetect();
  while (1)
  {
    UCSRB = 0;
    OCR2 = 0xFE;

    if (PIND & (1 << PD0))
      StatusLED(GREEN);
    else
      StatusLED(RED);

    sw = PollSwitch();
    if (sw & 0x01)
      ocr2  = 0xFE;	//Pulsbreite 1
    if (sw & 0x02)
      ocr2  = 0xFD;	//Pulsbreite 2
    if (sw & 0x04)
      ocr2  = 0xFB;	//Pulsbreite 4
    if (sw & 0x08)
      ocr2  = 0xF7;	//Pulsbreite 8
    if (sw & 0x10)
      ocr2  = 0xEF;	//Pulsbreite 16
    if (sw & 0x20)
      ocr2  = 0x90;	//Pulsbreite 110

    if (sw)
    {  
      OCR2 = 0x91;
      PrintInt(sw); 
      SerPrint(" ");
      PrintInt(ocr2); 
      SerPrint("\r\n");
    }
//   Msleep(100);
  }
  return 0;
}
edit2: Irgendwas stimmt mit der main() aber nicht, wenn ich das richtig sehe, haben die Tasten überhaupt keine Funktion mehr, ausser dass ein nichtssagender Wert ausgegeben wird ...
Die Quelle kommt allerdings auch aus dem Release Candidate der Lib ...