Die interrupt flag Register kann man nicht so direkt per software setzen. Die kann man über das Register nur löschen.

Der externe Interrupt hängt vom zusatd des Pins ab. Wieso der sich ändert ist egal. Es zählt also auch wenn der Pin als Ausgang definiert ist und man den Ausgangewert ändert. Wenn man auch noch echte externe Interrupts zulassen will, müßte man den über einen Widertand anschließen.