]> cloudbase.mooo.com Git - irmp.git/blobdiff - irmp.h
Version 1.8.0: added JVC in irsnd, fitted APPLE protocol to IRMP 1.7.3
[irmp.git] / irmp.h
diff --git a/irmp.h b/irmp.h
index c8c709acf50fabf13b79a1bc9da954428959d6a8..21ff7dbfa2f3e0eac7d571919265b193f4f6dff0 100644 (file)
--- a/irmp.h
+++ b/irmp.h
@@ -3,7 +3,7 @@
  *\r
  * Copyright (c) 2009-2010 Frank Meyer - frank(at)fli4l.de\r
  *\r
- * $Id: irmp.h,v 1.41 2010/08/18 12:03:26 fm Exp $\r
+ * $Id: irmp.h,v 1.43 2010/08/31 15:22:24 fm Exp $\r
  *\r
  * ATMEGA88 @ 8 MHz\r
  *\r
@@ -22,6 +22,21 @@ extern "C"
 {\r
 #endif\r
 \r
+/*---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ * timing constants:\r
+ *---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ */\r
+#define IRMP_TIMEOUT_TIME                       16500.0e-6                  // timeout after 16.5 ms darkness\r
+#define IRMP_TIMEOUT_TIME_MS                    16500L                      // timeout after 16.5 ms darkness\r
+\r
+#if (F_INTERRUPTS * IRMP_TIMEOUT_TIME_MS) / 1000000 >= 254\r
+typedef uint16_t    PAUSE_LEN;\r
+#else\r
+typedef uint8_t     PAUSE_LEN;\r
+#endif\r
+\r
+#define IRMP_TIMEOUT_LEN                        (PAUSE_LEN)(F_INTERRUPTS * IRMP_TIMEOUT_TIME + 0.5)\r
+\r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
  * IR protocols\r
  *---------------------------------------------------------------------------------------------------------------------------------------------------\r
@@ -46,6 +61,7 @@ extern "C"
 #define IRMP_FDC_PROTOCOL                       18              // FDC keyboard\r
 #define IRMP_RCCAR_PROTOCOL                     19              // RC Car\r
 #define IRMP_JVC_PROTOCOL                       20              // JVC\r
+#define IRMP_RC6A_PROTOCOL                      21              // RC6A, e.g. Kathrein, XBOX\r
 \r
 // some flags of struct IRMP_PARAMETER:\r
 #define IRMP_PARAM_FLAG_IS_MANCHESTER           0x01\r
@@ -322,7 +338,7 @@ extern "C"
 #define JVC_PULSE_TIME                           560.0e-6                       //  560 usec pulse\r
 #define JVC_1_PAUSE_TIME                        1690.0e-6                       // 1690 usec pause\r
 #define JVC_0_PAUSE_TIME                         560.0e-6                       //  560 usec pause\r
-#define JVC_FRAME_REPEAT_PAUSE_TIME               25.0e-3                       // frame repeat after 25ms\r
+#define JVC_FRAME_REPEAT_PAUSE_TIME               22.0e-3                       // frame repeat after 22ms\r
 #define JVC_ADDRESS_OFFSET                       0                              // skip 0 bits\r
 #define JVC_ADDRESS_LEN                          4                              // read 4 address bits\r
 #define JVC_COMMAND_OFFSET                       4                              // skip 4 bits\r