CCCPaste

"Button Callbacks" rev_29

/********* Pleasedontcode.com **********

	Pleasedontcode thanks you for automatic code generation! Enjoy your code!

	- Terms and Conditions:
	You have a non-exclusive, revocable, worldwide, royalty-free license
	for personal and commercial use. Attribution is optional; modifications
	are allowed, but you're responsible for code maintenance. We're not
	liable for any loss or damage. For full terms,
	please visit pleasedontcode.com/termsandconditions.

	- Project: "Button Callbacks"
	- Source Code compiled for: ESP32 DevKit V1
	- Source Code created on: 2024-07-03 22:32:48

********* Pleasedontcode.com **********/

/****** SYSTEM REQUIREMENTS *****/
/****** SYSTEM REQUIREMENT 1 *****/
	/* print on serial button state. */
/****** END SYSTEM REQUIREMENTS *****/


/****** DEFINITION OF LIBRARIES *****/
#include   //https://github.com/evert-arias/EasyButton

/****** FUNCTION PROTOTYPES *****/
void setup(void);
void loop(void);
void onPressed();

/***** DEFINITION OF DIGITAL INPUT PINS *****/
const uint8_t button_PushButton_PIN_D4 = 4;

/****** DEFINITION OF LIBRARIES CLASS INSTANCES*****/
EasyButton button(button_PushButton_PIN_D4);  // Initialize EasyButton instance

// Callback function to be called when the button is pressed.
void onPressed()
{
  Serial.println("Button pressed");
}

void setup(void)
{
  // Initialize Serial for debugging purposes.
  Serial.begin(115200);
  Serial.println();
  Serial.println(">>> EasyButton pressed example <<<");

  // Initialize the button.
  button.begin();
  // Add the callback function to be called when the button is pressed.
  button.onPressed(onPressed);
}

void loop(void)
{
  // Continuously read the status of the button.
  button.read();

  // Print the current state of the button to the Serial monitor.
  static bool lastState = !button.isPressed();  // Initialize with opposite state
  bool currentState = button.isPressed();

  if (currentState != lastState) {
    if (currentState) {
      Serial.println("Button is currently pressed");
    } else {
      Serial.println("Button is currently released");
    }
    lastState = currentState;
  }
}

/* END CODE */