Reading a variable set in an ISR, or using millis() for time within while loop?

saladman:
I set up a timer with an overflow

Why? You just record the value of millis() or micros() at the time of interest and compare against it
later.

And yes, post your code, we can't mind-read!