]> cloudbase.mooo.com Git - irmp.git/blobdiff - irmpconfig.h
Version 1.6.4: added RC CAR
[irmp.git] / irmpconfig.h
index bf0ad6ac8cba3db9da7581188238b48d716d42a7..f46883ff37bfbe6b3b5860fcef0ad826cc6c78e5 100644 (file)
@@ -3,7 +3,7 @@
  *\r
  * Copyright (c) 2010 Frank Meyer - frank(at)fli4l.de\r
  *\r
- * $Id: irmpconfig.h,v 1.2 2010/04/12 10:15:40 fm Exp $\r
+ * $Id: irmpconfig.h,v 1.16 2010/06/12 20:29:44 fm Exp $\r
  *\r
  * ATMEGA88 @ 8 MHz\r
  *\r
@@ -21,7 +21,9 @@
  * Change F_INTERRUPTS if you change the number of interrupts per second, F_INTERRUPTS should be in the range from 10000 to 15000\r
  *---------------------------------------------------------------------------------------------------------------------------------------------------\r
  */\r
-#define F_INTERRUPTS                            10000   // interrupts per second\r
+#ifndef F_INTERRUPTS\r
+#define F_INTERRUPTS                            10000   // interrupts per second, min: 10000, max: 15000\r
+#endif\r
 \r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
  * Change settings from 1 to 0 if you want to disable one or more decoders.\r
  * 0 disable decoder\r
  *---------------------------------------------------------------------------------------------------------------------------------------------------\r
  */\r
-#define IRMP_SUPPORT_SIRCS_PROTOCOL             1       // flag: support SIRCS                      uses ~100 bytes\r
-#define IRMP_SUPPORT_NEC_PROTOCOL               1       // flag: support NEC + APPLE                uses ~250 bytes\r
-#define IRMP_SUPPORT_SAMSUNG_PROTOCOL           1       // flag: support Samsung + Samsung32        uses ~250 bytes\r
-#define IRMP_SUPPORT_MATSUSHITA_PROTOCOL        1       // flag: support Matsushita                 uses  ~50 bytes\r
-#define IRMP_SUPPORT_KASEIKYO_PROTOCOL          1       // flag: support Kaseikyo                   uses  ~50 bytes\r
-#define IRMP_SUPPORT_RECS80_PROTOCOL            1       // flag: support RECS80                     uses  ~50 bytes\r
-#define IRMP_SUPPORT_RC5_PROTOCOL               1       // flag: support RC5                        uses ~250 bytes\r
-#define IRMP_SUPPORT_DENON_PROTOCOL             1       // flag: support DENON                      uses ~250 bytes\r
-#define IRMP_SUPPORT_RC6_PROTOCOL               1       // flag: support RC6                        uses ~200 bytes\r
-#define IRMP_SUPPORT_RECS80EXT_PROTOCOL         1       // flag: support RECS80EXT                  uses  ~50 bytes\r
-#define IRMP_SUPPORT_NUBERT_PROTOCOL            1       // flag: support NUBERT                     uses  ~50 bytes\r
-#define IRMP_SUPPORT_BANG_OLUFSEN_PROTOCOL      1       // flag: support Bang & Olufsen             uses ~200 bytes\r
+#define IRMP_SUPPORT_SIRCS_PROTOCOL             1       // flag: support SIRCS                 uses ~100 bytes\r
+#define IRMP_SUPPORT_NEC_PROTOCOL               1       // flag: support NEC + APPLE           uses ~250 bytes\r
+#define IRMP_SUPPORT_SAMSUNG_PROTOCOL           1       // flag: support Samsung + Samsung32   uses ~250 bytes\r
+#define IRMP_SUPPORT_MATSUSHITA_PROTOCOL        1       // flag: support Matsushita            uses  ~50 bytes\r
+#define IRMP_SUPPORT_KASEIKYO_PROTOCOL          1       // flag: support Kaseikyo              uses  ~50 bytes\r
+#define IRMP_SUPPORT_RECS80_PROTOCOL            1       // flag: support RECS80                uses  ~50 bytes\r
+#define IRMP_SUPPORT_RC5_PROTOCOL               0       // flag: support RC5                   uses ~250 bytes\r
+#define IRMP_SUPPORT_DENON_PROTOCOL             1       // flag: support DENON                 uses ~250 bytes\r
+#define IRMP_SUPPORT_RC6_PROTOCOL               1       // flag: support RC6                   uses ~200 bytes\r
+#define IRMP_SUPPORT_RECS80EXT_PROTOCOL         1       // flag: support RECS80EXT             uses  ~50 bytes\r
+#define IRMP_SUPPORT_NUBERT_PROTOCOL            1       // flag: support NUBERT                uses  ~50 bytes\r
+#define IRMP_SUPPORT_BANG_OLUFSEN_PROTOCOL      1       // flag: support Bang & Olufsen        uses ~200 bytes\r
+#define IRMP_SUPPORT_GRUNDIG_PROTOCOL           1       // flag: support Grundig               uses ~150 bytes\r
+#define IRMP_SUPPORT_NOKIA_PROTOCOL             1       // flag: support Nokia                 uses ~150 bytes\r
+#define IRMP_SUPPORT_RCCAR_PROTOCOL             1       // flag: support RC car                uses ~150 bytes\r
+\r
+/*---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ * THE FOLLOWING DECODERS WORK ONLY FOR F_INTERRUPTS > 14500!\r
+ *---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ */\r
+#if F_INTERRUPTS >= 14500\r
+#define IRMP_SUPPORT_SIEMENS_PROTOCOL           1       // flag: support Siemens Gigaset       uses ~150 bytes\r
+#define IRMP_SUPPORT_FDC1_PROTOCOL              1       // flag: support FDC1 keyboard         uses ~100 bytes\r
+#else\r
+#define IRMP_SUPPORT_SIEMENS_PROTOCOL           0       // DO NOT CHANGE! F_INTERRUPTS too low!\r
+#define IRMP_SUPPORT_FDC1_PROTOCOL              0       // DO NOT CHANGE! F_INTERRUPTS too low!\r
+#endif\r
+\r
+/*---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ * THE FOLLOWING DECODERS WORK ONLY FOR F_INTERRUPTS > 19500!\r
+ *---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ */\r
+#if F_INTERRUPTS >= 19500\r
+#define IRMP_SUPPORT_FDC2_PROTOCOL              1       // flag: support FDC2 keyboard         uses ~100 bytes\r
+#else\r
+#define IRMP_SUPPORT_FDC2_PROTOCOL              0       // DO NOT CHANGE! F_INTERRUPTS too low!\r
+#endif\r
+\r
+\r
+#if IRMP_SUPPORT_FDC2_PROTOCOL == 1 && IRMP_SUPPORT_RC5_PROTOCOL == 1\r
+#error Protocols RC5 and FDC2 may not be enabled both at the same time. Please disable one of them in irmpconfig.h.\r
+#endif\r
 \r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
  * Change hardware pin here:\r
@@ -65,6 +97,8 @@
  * Set IRMP_LOGGING to 1 if want to log data to UART with 9600Bd\r
  *---------------------------------------------------------------------------------------------------------------------------------------------------\r
  */\r
-#define IRMP_LOGGING                            0                             // 1: log IR signal (scan), 0: do not (default)\r
+#ifndef IRMP_LOGGING\r
+#define IRMP_LOGGING                            0       // 1: log IR signal (scan), 0: do not (default)\r
+#endif\r
 \r
 #endif /* _WC_IRMPCONFIG_H_ */\r