Using Interrupts

void blink()
{
  state = !state;
  detachInterrupt (0);
}