Control Surface
main
MIDI Control Surface library for Arduino
Toggle main menu visibility
Loading...
Searching...
No Matches
ManyAddressesPCButton.ino
ManyAddressesPCButton
An advanced example with Program Change buttons in different Banks.
#include <
Control_Surface.h
>
USBMIDI_Interface
midi;
Bank<3>
bank(4);
IncrementDecrementSelector<3>
bankSelector {bank, {A0, A1},
Wrap::Clamp
};
using namespace
MIDI_PC
;
Bankable::ManyAddresses::PCButton<3>
pcbuttons[] {
{bank,
2,
// pin
{
Acoustic_Grand_Piano
,
Church_Organ
,
Acoustic_Guitar_Nylon
,
}},
{bank,
3,
// pin
{
HonkyTonk_Piano
,
Rock_Organ
,
Distortion_Guitar
,
}},
{bank,
4,
// pin
{
Electric_Piano_1
,
Drawbar_Organ
,
Electric_Bass_Pick
,
}},
{bank,
5,
// pin
{
Harpsichord
,
Accordion
,
Slap_Bass_1
,
}},
};
void
setup() {
Control_Surface
.begin();
}
void
loop() {
Control_Surface
.loop();
}
Control_Surface.h
The main header file that includes all Control-Surface header files.
Control_Surface
Control_Surface_ & Control_Surface
A predefined instance of the Control Surface to use in the Arduino sketches.
Definition
Control_Surface_Class.cpp:338
Wrap::Clamp
@ Clamp
When the maximum (minimum) setting is reached, clamp to the maximum (minimum) setting.
Definition
Selector.hpp:15
Bank
A class that groups Bankable MIDI Output Elements and Bankable MIDI Input Elements,...
Definition
Bank.hpp:94
Bankable::ManyAddresses::PCButton
A class of MIDIOutputElements that read the input of a momentary push button or switch,...
Definition
ManyAddresses/PCButton.hpp:29
IncrementDecrementSelector
Selector with two buttons (one to increment, one to decrement).
Definition
IncrementDecrementSelector.hpp:69
USBMIDI_Interface
A class for MIDI interfaces sending MIDI messages over a USB MIDI connection.
Definition
USBMIDI_Interface.hpp:165
MIDI_PC
Names and values for all MIDI Control Change Controller Numbers.
Definition
Program_Change.hpp:14
MIDI_PC::Electric_Bass_Pick
constexpr uint8_t Electric_Bass_Pick
Definition
Program_Change.hpp:50
MIDI_PC::Rock_Organ
constexpr uint8_t Rock_Organ
Definition
Program_Change.hpp:34
MIDI_PC::Drawbar_Organ
constexpr uint8_t Drawbar_Organ
Definition
Program_Change.hpp:32
MIDI_PC::Harpsichord
constexpr uint8_t Harpsichord
Definition
Program_Change.hpp:22
MIDI_PC::Church_Organ
constexpr uint8_t Church_Organ
Definition
Program_Change.hpp:35
MIDI_PC::Acoustic_Guitar_Nylon
constexpr uint8_t Acoustic_Guitar_Nylon
Definition
Program_Change.hpp:40
MIDI_PC::Distortion_Guitar
constexpr uint8_t Distortion_Guitar
Definition
Program_Change.hpp:46
MIDI_PC::Slap_Bass_1
constexpr uint8_t Slap_Bass_1
Definition
Program_Change.hpp:52
MIDI_PC::Accordion
constexpr uint8_t Accordion
Definition
Program_Change.hpp:37
MIDI_PC::Acoustic_Grand_Piano
constexpr uint8_t Acoustic_Grand_Piano
Definition
Program_Change.hpp:16
MIDI_PC::HonkyTonk_Piano
constexpr uint8_t HonkyTonk_Piano
Definition
Program_Change.hpp:19
MIDI_PC::Electric_Piano_1
constexpr uint8_t Electric_Piano_1
Definition
Program_Change.hpp:20
Generated by
1.17.0