cs-midi-docs/docs/examples/01-output/24-enable-disable.md

904 B

Enable/Disable Elements

Enable and disable MIDI elements at runtime using a toggle button.

Original: Enable-disable.ino

#include "pico/stdlib.h"
#include "pico/cyw43_arch.h"
#include <cs_midi.h>

using namespace cs;

BluetoothMIDI_Interface midi;

NoteButton button1 {5, {MIDI_Notes::C[4], Channel_1}};
NoteButton button2 {6, {MIDI_Notes::D[4], Channel_1}};
AH::Button toggleBtn {7};

bool button2Enabled = true;

int main() {
    stdio_init_all();
    if (cyw43_arch_init()) return 1;
    toggleBtn.begin();
    Control_Surface.begin();
    while (true) {
        Control_Surface.loop();
        toggleBtn.update();
        if (toggleBtn.getState() == AH::Button::Falling) {
            button2Enabled = !button2Enabled;
            if (button2Enabled)
                button2.enable();
            else
                button2.disable();
        }
        sleep_ms(1);
    }
}