Problem with interrupts

Do you know if the LED actually works? It starts off LOW.... if it's faulty then it might be trying to go on when you apply the interrupt but you can't see it.

Maybe change the line volatile int state = [glow=yellow,2,300]LOW[/glow]; to volatile int state = [glow=yellow,2,300]HIGH[/glow]; so it starts in the "on" state and you'll be confident it actually works.