Maybe an edge triggered interrupt is what you need?

Ioannis