Ich rate mal
sound_interrupt ist nicht volatile?
> Das liegt war. daran, das am Anfang keine Interrupts kommen,
> und der Task keine änderungen am Speicher vornimmt, und dann
> irgendwie wegrationalisiert wird.
Oh, wie ich das hasse:
Wenns nicht sauber funktioniert, ist immer alles andere Schuld. Der
Compiler hat sich mit dem Betriebssystem zusammen getan und beide,
gemeinsam mit der Hardware, lauern nur darauf, dem glorreichen
Programmierer ein Bein zu stellen. Man kann zwar nicht genau sagen wie,
das passiert immer alles magisch und nur bei Vollmond, aber das macht
auch nichts. Schuld ist nie der Programmierer.
Die Wahrheit ist: In 99,999999% aller Fälle ist es nur das mangelnde
Wissen des Programmierers, das Projekte auf dieser Ebene zum kippen
bringt. Schuld ist der Programmierer! Nicht der Compiler, nicht das
Betriebssystem.