stiskem zapni stiskem vypni led

Tohle je samozřejmě lepší, nicméně pokud by procesor dělal ještě něco jiného, než přepínal LEDku, tak na dobu držení tlačítka de-facto zamrzne, protože bude čekat na jeho uvolnění. Proto si myslím, že je lepší načíst tlačítko, porovnat s minulým stavem a pokud bylo zrovna stisknuto, tj. pokud je teď stisknuto a minule nebylo, změnit stav LEDky. LEDka bude reagovat jen na stisk a procesor může pracovat i na jiných věcech. Z toho důvodu by tam delay buď neměl být vůbec a tlačítko kontrolovat periodicky (podle časovače nebo nějakého příznaku - těch možností je spousta).