pleasedontcode

Debounced Toggle rev_01

Nov 30th, 2025
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /********* Pleasedontcode.com **********
  2.  
  3.     Pleasedontcode thanks you for automatic code generation! Enjoy your code!
  4.  
  5.     - Terms and Conditions:
  6.     You have a non-exclusive, revocable, worldwide, royalty-free license
  7.     for personal and commercial use. Attribution is optional; modifications
  8.     are allowed, but you're responsible for code maintenance. We're not
  9.     liable for any loss or damage. For full terms,
  10.     please visit pleasedontcode.com/termsandconditions.
  11.  
  12.     - Project: Debounced Toggle
  13.     - Source Code NOT compiled for: XIAO ESP32S3
  14.     - Source Code created on: 2025-11-30 21:06:22
  15.  
  16. ********* Pleasedontcode.com **********/
  17.  
  18. /****** SYSTEM REQUIREMENTS *****/
  19. /****** SYSTEM REQUIREMENT 1 *****/
  20.     /* Allume une LED quand on appuie sur le bouton- */
  21.     /* poussoir et l'éteint quand'on le relâche. */
  22.     /* Changez l'état de la LED à chaque appui sur le */
  23.     /* bouton-poussoir, comme un interrupteur. */
  24. /****** END SYSTEM REQUIREMENTS *****/
  25.  
  26.  
  27. /* START CODE */
  28.  
  29. // --- Debut du code ---
  30. // Déclaration des constantes pour les pins
  31. const int boutonPin = 2;    // Pin du bouton poussoir
  32. const int ledPin = 0;       // Pin de la LED
  33.  
  34. // Variable pour suivre l'état de la LED
  35. bool ledEtat = LOW;
  36. // Variable pour suivre l'état précédent du bouton
  37. bool boutonEtatPrecedent = HIGH;
  38.  
  39. void setup() {
  40.   // Initialisation des pins
  41.   pinMode(boutonPin, INPUT_PULLUP); // Utilisation de la résistance interne en pull-up
  42.   pinMode(ledPin, OUTPUT); // Pin en sortie pour la LED
  43.   digitalWrite(ledPin, ledEtat); // Initialisation de la LED à éteinte
  44. }
  45.  
  46. void loop() {
  47.   // Lecture de l'état du bouton
  48.   bool boutonEtat = digitalRead(boutonPin);
  49.  
  50.   // Détection du bouton pressé (transition de HIGH à LOW)
  51.   if (boutonEtat == LOW && boutonEtatPrecedent == HIGH) {
  52.     // Changement d'état de la LED
  53.     ledEtat = !ledEtat;
  54.     digitalWrite(ledPin, ledEtat);
  55.   }
  56.   // Mise à jour de l'état précédent
  57.   boutonEtatPrecedent = boutonEtat;
  58.  
  59.   // Petite pause pour éviter le rebond du bouton
  60.   delay(50);
  61. }
  62. // --- Fin du code ---
  63.  
  64. /* END CODE */
  65.  
Advertisement
Add Comment
Please, Sign In to add comment