title: Interruption PIC CCS
body: <p>I have a code that I need to read an AD channel in a timer interrupt (with precision time).</p>
  
  <p>Everything is okay if I just read the AD. But I need to use a digital filter, and if I put just a multiplication inside interrupt a have a warning:</p>
  
  <p>This is ok:</p>
  
  <pre><code>#int_RTCC
  void  RTCC_isr(void) 
  {
     set_adc_channel(0);      
     delay_us(40);  
     unsigned int16 aD = read_adc();
  }
  </code></pre>
  
  <p>But this get warning:</p>
  
  <pre><code>#int_RTCC
  void  RTCC_isr(void) 
  {
     set_adc_channel(0);      
     delay_us(40);  
     unsigned int16 aD = read_adc();
     aDfilter = aDfilter * 8 + aD * 2;
  }
  </code></pre>
  
  <p>interrupts disabled during call to prevent reentrancy (@MUL3232)</p>
  
  <p>I wouldn't want a timer disable, because I need precision. How can I solve this?</p>