Mir fehlt die Stelle, wo der Ausgang wieder ausgemacht wird, also das
Gegenstück zu
> PORTC |= (1<<PC5);
Das Ganze dann bitte in einer Schleife, denn bei nicht gedrückter Taste
beendet sich main() in nullkommanix und das war's dann schon gewesen.
Der Anwender bekommt gar keine Chance, eine Taste zu drücken, außer er
hat sie beim Start bereits gedrückt.
P.S. Das hier
> _delay_ms(50); // Maximalwert des Parameters an _delay_ms
> _delay_ms(50); // beachten, vgl. Dokumentation der avr-libc
kann natürlich durch ein _delay_ms(100) ersetzt werden. Ich bitte
das, was im Kommentar gefordert wird, auch wirklich vollständig zu tun
und nicht nach dem ersten Satz mit Lesen aufzuhören.