How to find out the time between two interrupts' execution?

PaulS:

How to do this? I was told, that "micros()" didn't work.

By whom? The micros() function works fine in an interrupt handler. The clock behind it doesn't advance, so you can't time how long an interrupt handler takes, but you can record the time that the handler was invoked.

You musn't call delay() in an interrupt routine, but micros(), millis(), delayMicroseconds() are all fine (but don't do long delays with delayMicroseconds...). delay() can't be used if interrupts are disabled because it busy-waits for certain variables to be updated by the timer0 interrupt - the system will hang.

The clock behind micros() does advance during your interrupt handler's running since it looks at the timer0 count register, but only for a limited amount (about 1ms). Even if it didn't advance you could compare values between successive interrupts.

Any interrupt handler that runs for > 1ms with interrupts disabled will break the time handling anyway... Another reason not to call delay().