Here is a link to a good tutorial on how to enable, respond to, and clear interrupts on the ATMega328P device:
Arduino Pin Change Interrupts
I'll repeat the overall steps here in case this URL disappears in the future:
First, you must enable pin change interrupts:
Note the use of 3 bits in the PCICR register [0:2]. These enable pin change interrupts on ports B, C, or D in general. You can choose any combination of these ports or all of the ports as you desire.
Next, you select which pin or pins on the enabled ports that you want to receive interrupts from. You have control here over each individual port bit:
Then you must write an ISR (Interrupt Service Routine) to handle the interrupt once it occurs. You have the option of up to THREE ISRs, one to handle each port or you can have a single ISR to handle any pin change interrupt. The way this works is that when an interrupt happens on an enabled port and pin, the AVR chip calls the ISR that you have configured for that event:
So when an interrupt happens, how do you know which pin(s) caused the ISR? Let's assume you used a single ISR to handle all 3 ports. At this point you know only that an interrupt happened somewhere. That's the purpose of the PCIFR register bits. From the AVR datasheet we see this:
By checking the status of these bits you can now tell which pin or pins caused the interrupt. Note that there CAN BE MORE THAN ONE, so it's up to you to decide the priority of each one and handle them accordingly. Note that you only get ONE chance to read these during any ISR function call since they get cleared when the ISR executes.
One last note. You MUST call the sei(); function to enable any interrupt to the CPU before any interrupt will happen.
In your example, however, you seem to be attempting to generate a pin change interrupt on an output. This is probably NOT what you want. Try simply using the existing LED output pin as an indicator and choose a different pin, setup as INPUT, to be your pin change interrupt source.