#define BUTTON1_PIN 12
#define BUTTON2_PIN 13
#define BUZZER_PIN 1
bool button1State = false;
bool button2State = false;
bool lastButton1 = false;
bool lastButton2 = false;
void setup() {
pinMode(BUTTON1_PIN, INPUT);
pinMode(BUTTON2_PIN, INPUT);
pinMode(BUZZER_PIN, OUTPUT);
}
void loop() {
bool currentButton1 = digitalRead(BUTTON1_PIN);
bool currentButton2 = digitalRead(BUTTON2_PIN);
// Detect button1 press (rising edge)
if (currentButton1 && !lastButton1) {
button1State = !button1State;
button2State = false;
}
// Detect button2 press (rising edge)
if (currentButton2 && !lastButton2) {
button2State = !button2State;
button1State = false;
}
// Play tone based on state
if (button1State) {
tone(BUZZER_PIN, 440); // 440 Hz tone
} else if (button2State) {
tone(BUZZER_PIN, 880); // 880 Hz tone
} else {
noTone(BUZZER_PIN); // Stop tone
}
// Update last button states
lastButton1 = currentButton1;
lastButton2 = currentButton2;
delay(50); // debounce delay
}