Continuing along the same lines, you didn't tell us what type of processor you're using. Is it an 8-bit machine? If so, are you protecting accesses in non-ISR code to variable types larger than 8 bits with noInterrupt() / interrupt() pairs? Can't see how your variables are defined because (again) you didn't show your full code.