contrôler un moteur sur une durée définie à l'aide d'un pression sur le bouton

Bonjour,

je souhaiterais contrôler mon moteur grâce à un bouton poussoir. Lorsque j'appuie sur le bouton, je voudrais que le moteur tourne pendant 30 seconde, et qu'il s'arrête une fois fini. Je ne vois pas où est l'erreur dans mon programme et le bouton est bien reconnu dans le moniteur série. J'utilise un bouton 2 broches mais sur le schéma c'est un 4 broches. J'utilise un Arduino Uno. Le but final serait de relier le tout à un écran LCD en I2C (la partie de l'écran avec le bouton est déjà terminée), afin de faire en sorte que lorsque j'appuie sur le bouton, le moteur tourne pendant 30 secondes et un opération se fait sur l'écran LCD.