Apart from being messy, I'm wondering would it be really bad programming=20 to disable interrupts actually inside the interrupt routine, and re-enable= =20 them in the main routine. I am reading a PIC16F690 ADC sequentially (6 channels) from within the=20 interrupt. The interrupt contains 3 interrupt sources.=20 1. ADC Read. 2. Auto convert via the ECCP compare mode special event trigger. 3. Timer0 set to roll over every 500mS (approx). Timer0 is used to allow the main body of the program to scale, display and= =20 possibly save to SD card. My problem is that by the time the 500mS is up channel0 of the ADC has been= =20 read again obviously overwriting the previous contents. My thoughts around this problem are - 1. Disable interrupts until the main body has finished. 2. Copy the raw ADC array contents to a second array and process that data. This would allow the interrupts to be disabled outside the interrupt. This is for a 6 input power supply data logger (3 voltages, 3 current),=20 this doesn't have to be 100% accurate (it is to be used to check voltage=20 deviations not actual voltages per se), but i would like it to be as=20 accurate as possible. I'm probably making this way more complicated than it needs to be, brain is= =20 not in programming mode these days. Any thoughts Colin. PS: Can't use question marks, second keyboard of the week has just died. -- cdb, on 16/03/2012 --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .