From: Gerhard Sittig Date: Sat, 22 Feb 2020 05:49:03 +0000 (+0100) Subject: irmp: introduce variables for start of IR frame and current sample X-Git-Url: https://sigrok.org/gitaction?a=commitdiff_plain;h=7f8ea39e26770753a389ce1c7bac48c036a5e2e2;p=libsigrokdecode.git irmp: introduce variables for start of IR frame and current sample Introduce variables in the IRMP core logic which track the current sample number, and the position where the start of an IR frame got detected. The variables are conditional (ANALYZE builds only). Provided by: Rene Staffen Local modification: Drop the initializer for the static variables. They reside in .bss and need not occupy .data space. --- diff --git a/irmp/irmp.c b/irmp/irmp.c index 61711e5..ccf3c25 100644 --- a/irmp/irmp.c +++ b/irmp/irmp.c @@ -2976,6 +2976,11 @@ irmp_store_bit2 (uint_fast8_t value) } #endif // IRMP_SUPPORT_RC5_PROTOCOL == 1 && (IRMP_SUPPORT_FDC_PROTOCOL == 1 || IRMP_SUPPORT_RCCAR_PROTOCOL == 1) +#ifdef ANALYZE +static uint32_t s_curSample; +static uint32_t s_startBitSample; +#endif + /*--------------------------------------------------------------------------------------------------------------------------------------------------- * ISR routine * @details ISR routine, called 10000 times per second @@ -3067,6 +3072,7 @@ irmp_ISR (void) #ifdef ANALYZE if (! irmp_pulse_time) { + s_startBitSample = s_curSample; ANALYZE_PRINTF("%8.3fms [starting pulse]\n", (double) (time_counter * 1000) / F_INTERRUPTS); } #endif // ANALYZE