Was mir auffällt ist das du bei der Variable nicht volatile genommen hast. Du brauchst es aber damit die Variable ind der ISR gespeichert wird. Du musst also "volatile int zaehler=0;" schreiben. Ansonsten müsste ich im DB nachschauen.

MfG Hannes