Pelo visto ao retornar a função piscaLed() como resposta da leitura, o tempo que ela fica processando é equivalente a um tempo de Debounce importante para execução correta do código, visto que ele aguarda 1,5 segundo para executar o próximo loop e considerar que o botão foi pressionado apenas uma unica vez, caso não tivesse esse tempo o arduino iria considerar que o botão foi apertado diversas vezes necessitando algum tratamento da entrada lida. Acredito que seria muito interessante falar da importância do debounce para outros alunos poderem fazer projetos semelhantes e caso esbarrem no problema que o arduino considera que o botão foi pressionado varias vezes sendo que foi apertado uma unica vez, saberem uma forma de solucionar