interrupt on pulse width

Is there any arrangement such that the interrupt routine will execute after a specified time delay of high signal at interupt pin will occur. For example I want do some specific job if the interrupt pin signal will persit high with more then 10microsecond.if it is less then 10 micro second then it will not execute the isr .

I've done something similar here for another purpose. Perhaps you could simplify it to suit your needs.

EDIT: Actually, the linked code might work as is (or be very close) if you test it with stableWidth = 10 and use FALLING mode for your interrupt.

delayMicroseconds(10) should work within the ISR. Read the pin again after the delay and execute the code if HIGH.

For more precision you could replace the delayMicroseconds with

__builtin_avr_delay_cycles (160);

at 16MHz 160 cycles will be 10us,

If you want to avoid all use of delay, another way to go is to have the interrupt call a Timer routine which has an overflow or match interrupt at 10 us, and this second interrupt reads the pin again and executes the code if HIGH.

I think if the OP needs really short intervals the system proposed by @dlloyd will be better.

Using delayMicroseconds() does not allow the program to test whether the pin remains HIGH for the duration of the period.

...R