Ich hab gar keine Ahnung von C, aber trotzdem ne idee:

Du fragst zweimal DIREKT hintereinander den Taster ab, mit einer Verzögerung von stolten 0,5 s
Das einfachste wäre z.B. beim Einschalten der variable A (z.B.) den Wert 1 zu geben.

So, jetzt drückst Du den Taster, ist A=1 UND der Taster gedrückt dann die LED ausschalten und A wieder auf 0 setzen.

So würd ich es machen (als Basom Nutzer )

Gruß
Jens